Jenkins 是一个著名的自动化服务器,常用于自动化构建、测试和部署应用程序的持续集成/持续开发 (CI/CD) 格式的任务。在本教程中,我将解释如何安装和配置 Jenkins,并创建一个作业来安装 PackStack(一个概念验证的 OpenStack 云)。
对于本操作指南,我在 GNOME Boxes 中创建了一个 CentOS VM,它将用作运行 Jenkins master,并在同一台机器上部署作业。Jenkins 默认使用端口 8080,因此请确保该端口未被使用。Jenkins 也可以作为 Docker 容器安装。
1. 下载 通用 Java WAR 文件。
2. 在终端中,切换到下载目录并执行以下命令
java -jar jenkins.war

opensource.com
3. 转到 http://localhost:8080
并从给定的路径复制密码
cat /home/jenkins/.jenkins/secrets/initialAdminPassword

opensource.com
4. 创建第一个管理员用户。

opensource.com
5. 将您的 SSH 密钥(位于 ~/.ssh/id_rsa.pub
下)添加到 用户名(右上角)→配置→SSH 公钥
。这将用于 SSH 进入主机而无需提供密码。如果您没有 id_rsa.pub
,可以使用 ssh-keygen
命令创建一个密钥。最初,您必须执行 ssh-copy-id user@host-ip
来设置无密码身份验证。

opensource.com
此外,应将您的 Jenkins 用户添加到 wheel 组,并应具有无密码 sudo 权限,如下所示。

opensource.com
6. 为您的管理员用户和其他用户配置基于矩阵的安全。默认情况下,Jenkins 为任何用户提供所有权限,这完全不推荐。我已将所有权限授予管理员用户。

opensource.com
7. 现在开始有趣的部分!单击新建项目,输入项目名称 PackStack,然后选择自由风格项目。项目类型有很多种,但其他类型不在本文的范围之内。

opensource.com
8. 为作业添加描述(可选)。

opensource.com
转到 构建→添加构建步骤→执行 shell
。其中写入的任何内容都将作为 Shell 脚本执行。

opensource.com
我已经编写了以下 PackStack 部署 shell 脚本,您可以使用它
sudo yum install -y centos-release-openstack-queens
sudo yum update -y 2>&1
sudo yum install -y openstack-packstack
sudo packstack –allinone
notify-send "Hi" "Your PackStack cloud is deployed at `sudo cat /root/keystonerc_admin | grep OS_AUTH_URL | awk -F "=" '{print $2}'`"
9. 保存作业后,单击立即构建以执行您的项目。因为我在脚本中包含了一个 notify-send
命令,所以我看到了一个通知(在下面屏幕截图的右上角),指示我的 PackStack 云已部署。您可以配置 SMTP 服务器并在每次构建后添加电子邮件通知。

opensource.com
构建历史记录显示了所有过去构建的历史记录和状态。默认情况下,Jenkins 使用以下颜色代码
- 蓝色:构建成功
- 红色:构建失败
- 灰色:构建已中止或未构建
- 黄色:构建不稳定
如果您喜欢使用绿色指示器表示构建成功,则可以安装 Green Balls 插件。
注意:此处 Jenkins 是以“jenkins”用户身份登录安装的,仅用于概念验证目的。
本教程到此结束;请继续关注更多内容。
评论已关闭。