1
2
3
4
5
作者:李晓辉

微信联系:Lxh_Chat

联系邮箱: 939958092@qq.com

要在自动化控制器中创建作业模板并测试 Playbook,必须准备好多个资源。通常,这些资源包括:

  1. 用于连接受管主机的计算机凭据。
  2. 用于下载和同步远程内容的源代码控制凭据,例如从 Git 存储库拉取和同步内容。
  3. 指定 Playbook 所在位置的项目。
  4. 至少包含一个主机的清单。

凭据资源概述

Ansible Galaxy / 自动化中⼼ API 令牌
创建凭据资源,使自动化控制器能够从 Ansible Galaxy、自动化中⼯和私有自动化中⼯下载内容集合和角色。

容器镜像仓库
需要身份验证才能从容器镜像仓库拉取镜像。

GitHub 个人访问令牌
创建 GitHub 个人访问令牌,并将其作为自动化控制器凭据来使用。

计算机凭据
此凭据指定用户名和密码,或用于 SSH 访问的私钥。

源代码控制凭据
使用此凭据从远程存储库同步项目资源。可以指定用户名和密码,或 SSH 私钥。

Vault 凭据
使用 Vault 凭据来解密通过 Ansible Vault 加密的文件。

创建凭据资源

课程中的自动化控制器的信息为:

地址:https://contoller.lab.example.com
用户名:admin
密码:redhat

创建和查看以下凭据可以在Web UI上操作:Resources > Credentials

创建这些凭据,需要提前准备资源,我这里执行lab自动完成准备

1
lab start controller-playbooks

创建Git凭据

来试试创建一个git仓库的凭据

在下图点击add

然后依次输入NameOrganizationCredential Type,在Details中,可以选择使用用户名和密码,或者使用私钥,私钥还支持私钥的密码填充

我这里的私钥内容位于workstation机器的 /home/student/.ssh/gitlab_rsa

创建好之后,再去创建一个项目就可以引用此凭据了

需要注意,必须将source control type改成Git才能用我们的凭据

创建了项目之后,项目会自动同步git仓库里的内容

创建机器凭据

Ansible 执行任务肯定要连接服务器,此时就需要用户名和密码等信息,只需要关联我们的机器凭据就行

这里把能有的参数都正确输入,比如用户名、密码、sudu的用户名密码什么的

创建清单文件

左侧的inventoriesaddadd inventory

这里只需要注意输入名称就可以保存,具体的主机和组在下一步添加或同步

这里可以手工输入主机或组,也可以从我们的git仓库中同步,我这里选择同步

这里选择从项目中获得主机和组,记得选好项目以及项目中的清单文件,另外需要注意的是,我们的项目是git,而git是会同步新内容的,所以要勾选在项目更新的时候,我们也更新一下主机组

按照下图做好保存后,会自动获取主机和组

创建作业模板

左侧的templatesaddadd templates

选好清单、项目、执行环境后,playbook就会出现在下拉框里,最后选择我们的计算机凭据即可保存

保存后,点击一下运行看看效果

可以看到成功的运行了,我们打开serverf看看网站是否部署好了

1
2
[student@workstation ~]$ curl http://serverf.lab.example.com
Hello world from serverf.lab.example.com.

非常完美,网站已经成功运行。