天天看点

使用Terraform在AWS上部署Jenkins

使用Terraform在AWS上部署Jenkins

持续集成,持续交付和持续部署,这些概念和术语可以协同工作以实现应用程序生命周期的自动化,在这方面,如果您要实施ci/ cd,jenkins可能是建立服务器以自动化该过程的主要工具。

这篇文章是部署以aws amazon作为iaas的jenkins的简单任务。为了全面了解,我们将安装jenkins及其插件,注册用户,设置基本的安全规则,最后插入一个作业作为示例,因此,让我们进一步阐述一下这个想法。

aws amazon中的ec2实例来测试此技术说明。

安装terraform作为“基础结构即代码”工具。

首先,我们需要观看本节,因为这是我们可以找到如何通过脚本bash安装jenkins的过程,该bash脚本是作为通用脚本制作的,可在不同的centos linux上使用。此安装分为5部分,首先我们将安装并启动jenkins,然后我们将注册一个默认用户并安装基本插件,最后,注册我们最好的朋友helloworld job,这将是一个很好的例子一个好的开始。

请注意,bash脚本中的plugins函数对于首次安装登录jenkins时建议的所有插件是必需的,这是自定义此工具的一部分,并且是注册默认用户所必需的。循环以检查jenkins服务器是否正在运行,您可以在启动和插件功能时观看。

您还记得启动jenkins服务器的公告吗?如果您不想再看到它,则应该实现插件功能。

使用Terraform在AWS上部署Jenkins

下面是一个简单的任务,介绍了如何通过jenkins cli在jenkins中添加作业,这是带有字符串参数的pipeline作业。

该文件中提供了常规变量,请注意一些属性,这些属性需要由您配置的aws cli变量替换。请参阅《aws cli命令参考》中的更多信息。

有几个属性需要设置:

access_key和secret_key:用作访问密钥,用于验证命令请求。

jenkins_key_name:密钥对文件的名称,将有助于通过ssh连接到我们的实例。如果您需要创建密钥对,请通过我的安全凭证部分中的处理程序进入您的aws账户。注意,在此示例中,我们使用了位于该项目的template文件夹中的key-pair.pem,用您的凭据替换此文件及其在项目中的名称。

amis:此属性可以是一个列表,并具有可以在amazon machine instances中轻松找到的ami实例id,如果您想更改此ami实例,请注意是否已安装ami已安装systemctl,因为amazon linux不支持systemclt或服务命令基于其基于centos / rhel的版本,因此为了避免花费大量时间搜索已经配置了他的systemctl的ami实例,请尝试使用在此项目中配置的ami实例。

一旦配置了所有属性,请执行命令行terraform init初始化工作文件夹,执行terraform计划以监视所有部署计划,一旦检查完成,请执行命令行terraform申请部署基础架构。

可以在aws管理控制台中找到,单击“实例”部分,然后应如下创建一个新实例。

使用Terraform在AWS上部署Jenkins

复制公共dns,并在浏览器上键入此值,然后键入端口8080(如镜像所示),记住所有可用端口在main.tf文件的安全组部分中。用户和密码被配置为variables.tf文件中的属性,因此在这种情况下,我们的用户和密码为“ jenkins”。

使用Terraform在AWS上部署Jenkins

简单实用,如果您想浏览此代码,请在此存储库中单击。也许,您已经看过许多有关jenkins的安装,但是我在许多安装中都使用了这种bash和安装方式,它使这些基本活动变得很轻松:注册用户,注册基本工作和安装插件。希望这项贡献对您有所帮助。

脚本库地址:https://github.com/moballiachi/cicd-jenkins.git

泽阳,devops领域实践者。专注于企业级devops运维开发技术实践分享,主要以新linux运维技术、devops技术课程为主。

使用Terraform在AWS上部署Jenkins

继续阅读