4.12. 安装 ansible-builder RPM
流程
在 RHEL 系统上,安装 ansible-builder RPM。这可以通过以下方法之一完成:
- 将 RHEL 框订阅到断开连接的网络上的 Satellite。
- 附加 Ansible Automation Platform 订阅并启用 Ansible Automation Platform 存储库。
安装 ansible-builder RPM。
注意如果存在 Satellite,则首选,因为如果底层构建主机已注册了底层构建主机,则执行环境镜像可以使用 Satellite 中的 RHEL 内容。
- 解压缩 Ansible Automation Platform 安装捆绑包。
从包含的内容安装 ansible-builder RPM 及其依赖项:
tar -xzvf ansible-automation-platform-setup-bundle-2.3-1.2.tar.gz cd ansible-automation-platform-setup-bundle-2.3-1.2/bundle/el8/repos/ sudo yum install ansible-builder-1.2.0-1.el9ap.noarch.rpm
$ tar -xzvf ansible-automation-platform-setup-bundle-2.3-1.2.tar.gz $ cd ansible-automation-platform-setup-bundle-2.3-1.2/bundle/el8/repos/ $ sudo yum install ansible-builder-1.2.0-1.el9ap.noarch.rpm python38-requirements-parser-0.2.0-4.el9ap.noarch.rpm
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 为您的自定义 EE 构建工件创建一个目录。
mkdir custom-ee cd custom-ee/
$ mkdir custom-ee $ cd custom-ee/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 按照 https://ansible-builder.readthedocs.io/en/stable/definition/ 的文档创建 execution-environment.yml 文件,该文件定义了自定义 EE 的要求。覆盖
EE_BASE_IMAGE
和EE_BUILDER_IMAGE
变量,以指向私有自动化中心中提供的 EE。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建一个 ansible.cfg 文件,指向您的私有自动化中心,其中包含允许上传的凭证,如 admin 用户令牌。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建一个指向断开连接的 UBI 存储库镜像的 ubi.repo 文件(如果托管 UBI 内容,这可能是您的 Satellite)。
这是一个示例输出,其中
reposync
用于镜像 UBI 仓库。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 添加用于为私有自动化中心 web 服务器证书签名的 CA 证书。
- 对于自签名证书(安装程序默认),从您的私有自动化中心中生成文件 /etc/pulp/certs/root.crt 并将其命名为 hub-root.crt。
- 如果使用内部证书颁发机构来请求和签署私有自动化中心 web 服务器证书,请复制该 CA 证书,名为 hub-root.crt。
- 使用您的自定义 EE 镜像所需的内容创建 python requirements.txt 和 ansible 集合 requirements.yml。请注意,您需要的任何集合都应上传到您的私有自动化中心中。
使用 ansible-builder 创建用于构建 EE 镜像的上下文目录。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将用于覆盖面向互联网的默认值的文件复制到上下文目录中。
cp ansible.cfg hub-root.crt pip.conf ubi.repo context/
$ cp ansible.cfg hub-root.crt pip.conf ubi.repo context/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 编辑文件 context/Containerfile 并添加以下修改。
-
在第一个 EE_BASE_IMAGE 构建部分中,添加 ansible.cfg 和 hub-root.crt 文件,并运行
update-ca-trust
命令。 - 在 EE_BUILDER_IMAGE 构建部分中,添加 ubi.repo 和 pip.conf 文件。
在最终的 EE_BASE_IMAGE 构建部分中,添加 ubi.repo 和 pip.conf 文件。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
在第一个 EE_BASE_IMAGE 构建部分中,添加 ansible.cfg 和 hub-root.crt 文件,并运行
使用
podman
命令在本地 podman 缓存中创建 EE 镜像。podman build -f context/Containerfile \ -t <hub_fqdn>/custom-ee:latest
$ podman build -f context/Containerfile \ -t <hub_fqdn>/custom-ee:latest
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 自定义 EE 镜像构建成功后,将其推送到私有自动化中心。
podman push <hub_fqdn>/custom-ee:latest
$ podman push <hub_fqdn>/custom-ee:latest
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.12.1. 在次版本 Ansible Automation Platform 间升级的工作流 复制链接链接已复制到粘贴板!
要在 Ansible Automation Platform 2 的次发行版本间升级,请使用这个常规工作流。
流程
- 下载并解压缩最新的 Ansible Automation Platform 2 安装捆绑包。
- 备份现有安装。
- 将现有安装清单文件复制到新的安装捆绑包目录中。
-
运行
./setup.sh
以升级安装。
例如,要从 2.2.0-7 升级到 2.3-1.2,请确保两个设置捆绑包都位于安装发生的初始控制器节点上:
ls -1F
$ ls -1F
ansible-automation-platform-setup-bundle-2.2.0-7/
ansible-automation-platform-setup-bundle-2.2.0-7.tar.gz
ansible-automation-platform-setup-bundle-2.3-1.2/
ansible-automation-platform-setup-bundle-2.3-1.2.tar.gz
备份 2.2.0-7 安装:
cd ansible-automation-platform-setup-bundle-2.2.0-7 sudo ./setup.sh -b cd ..
$ cd ansible-automation-platform-setup-bundle-2.2.0-7
$ sudo ./setup.sh -b
$ cd ..
将 2.2.0-7 清单文件复制到 2.3-1.2 捆绑包目录中:
cd ansible-automation-platform-setup-bundle-2.2.0-7 cp inventory ../ansible-automation-platform-setup-bundle-2.3-1.2/ cd ..
$ cd ansible-automation-platform-setup-bundle-2.2.0-7
$ cp inventory ../ansible-automation-platform-setup-bundle-2.3-1.2/
$ cd ..
使用 setup.sh 脚本从 2.2.0-7 升级到 2.3-1.2 :
cd ansible-automation-platform-setup-bundle-2.3-1.2 sudo ./setup.sh
$ cd ansible-automation-platform-setup-bundle-2.3-1.2
$ sudo ./setup.sh