软件的快速交付对于在云中高效运行您的应用程序至关重要。Jenkins是一款流行的产品,用于自动化在Oracle Cloud中工作负载的持续集成和持续部署(CI/CD)管道。您可以在Oracle Cloud Infrastructure(OCI)上托管Jenkins,以集中构建自动化并随着软件项目的增长扩展您的部署。
此参考架构展示了如何使用Terraform在单个Oracle Linux VM上部署容器化的Jenkins控制器代理。部署后,将创建一个Oracle Linux计算实例。此实例将在其上托管两个独立的Docker容器:一个用于Jenkins控制器,另一个用于Jenkins代理。
该解决方案还将控制器配置和代理工作空间保存在OCI块存储中,该存储连接到计算实例。在OCI上将创建一个单独的VCN来托管部署中的所有服务。
以下图表说明了这一参考架构。
此架构具有以下组件:
Oracle Cloud Infrastructure区域是一个地理区域,包含一个或多个数据中心,称为可用性域。区域彼此独立,并且可能相距甚远(跨越国家甚至大洲)。
分区是Oracle Cloud Infrastructure租户内的跨区域逻辑分区。使用分区来组织您在Oracle Cloud中的资源,控制对资源的访问,并设置使用配额。要控制对特定分区中资源的访问,您需要定义策略,指定谁可以访问这些资源以及他们可以执行哪些操作。
可用性域是区域内独立的、独立的数据中心。每个可用性域内的物理资源与其他可用性域的资源隔离,从而提供故障容忍性。可用性域不共享基础设施,如电力或冷却,或内部可用性域网络。因此,一个可用性域的故障不太可能影响该区域内的其他可用性域。
VCN是在Oracle Cloud Infrastructure区域中设置的可定制的、软件定义的网络。与传统数据中心网络一样,VCN让您完全控制您的网络环境。VCN可以有多个不重叠的CIDR块,您可以在创建VCN后更改这些块。您可以将VCN分割为子网,这些子网可以限定在一个区域或一个可用性域。每个子网由不与VCN中其他子网重叠的连续地址范围组成。创建后您可以更改子网的大小。子网可以是公共的或私有的。
Jenkins部署在一个计算实例VM上,运行两个容器,一个作为控制器,另一个作为代理。
虚拟路由表包含将流量从子网路由到VCN外部目的地的规则,通常通过网关。
对于每个子网,您可以创建安全规则,指定必须允许进出子网的流量的来源、目的地和类型。
Jenkins是一个开源自动化服务器,让开发人员可靠地构建、测试和部署软件。Jenkins支持主/代理模式,其中构建项目的工作负载由主节点委派给多个代理节点。单个Jenkins安装可以托管多个项目或为构建和测试提供不同的环境。
使用块存储卷,您可以创建、连接、连接和移动存储卷,并更改卷性能以满足您的存储、性能和应用程序要求。在您连接并连接卷到实例后,您可以像使用普通硬盘一样使用该卷。您还可以断开卷并将其连接到另一个实例,而不会丢失数据。这将用于保存Jenkins控制器配置和代理工作空间。
在使用Terraform在OCI上部署容器化Jenkins CI/CD管道时,以下建议可作为起点。您的需求可能与此处描述的架构不同。
性能:在部署此参考架构时,请考虑以下几点。
安全性:为获得最佳性能,请确保计算实例具有足够的核心和内存,这取决于Jenkins运行的构建或其他任务。
可用性:使用策略限制谁可以访问您公司的OCI资源以及如何访问。
成本:这是一个最小化设计,旨在尽快让您开始运行。若需更高的可用性,您可以参考“探索更多”主题下的参考架构“以控制器/代理模式部署Jenkins”。
此实施方案的成本基于运行VM的计算小时数。
使用Terraform在OCI上部署容器化Jenkins CI/CD管道的Terraform代码可从Oracle Cloud Infrastructure资源管理器或GitHub获取。
使用Oracle Cloud Infrastructure资源管理器中的示例堆栈部署:
2.选择您想要部署堆栈的区域。
3.按照屏幕上的提示和说明创建堆栈。
4.创建堆栈后,点击Terraform操作,并选择计划。
5.等待作业完成并查看计划。 若要进行任何更改,请返回到堆栈详细信息页面,点击编辑堆栈,并进行必要的更改。然后,再次运行计划操作。
6.如果不需要进一步更改,请返回到堆栈详细信息页面,点击Terraform操作,并选择应用。
作为Oracle的高级合作伙伴,Agilewing正重新定义企业体验Oracle云服务的方式。借助于其简化的开户流程和一流的技术支持,Agilewing将复杂的开户和操作流程转化为一种轻松、直观的体验。通过我们的一站式服务,您可以迅速开启并享受Oracle云的全方位服务,从而无缝融入云端世界。
Agilewing的AgileCDN服务,结合了OCI的云基础服务,提供了一流的全球内容加速解决方案。超过2800个全球POP节点和7000个直连点的强大网络,确保了无论您的业务扩展到全球哪个角落,都能保持高效稳定的运行。
利用Oracle云的先进技术,Agilewing致力于简化云服务搭建、云迁移和业务出海的过程。我们的合作模式为客户带来经济高效的解决方案,使他们能够更加专注于核心业务,同时享受Oracle云的高性能和安全保障。
Oracle云服务,作为一个充满潜力的领域,以其高性能、安全性和全球统一的服务标准,为各类企业开启了新的机遇之门。通过Agilewing的专业服务,无论是个人用户还是企业,都能轻松步入这个充满技术革新和高效能的新时代。现在,就让Agilewing引领您开始探索Oracle云服务,打开一个全新的世界大门。
如您想咨询 Oracle 的相关业务,可联系搜索微信号:lhh1843812463 或 woshiwhw123
或者可以进入以下群组进行咨询:
微信公众号
微信技术交流社群: