4.12. ansible-builder RPM のインストール
手順
RHEL システムで、ansible-builder RPM をインストールします。これは、いくつかの方法で実行できます。
- 非接続ネットワーク上の Satellite で RHEL ボックスをサブスクライブします。
- 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 python38-requirements-parser-0.2.0-4.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.rpmCopy 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/ のドキュメントに従って、カスタム EE の要件を定義する execution-environment.yml ファイルを作成します。
EE_BASE_IMAGE変数およびEE_BUILDER_IMAGE変数をオーバーライドして、Private Automation Hub で使用可能な EE を指すようにします。Copy to Clipboard Copied! Toggle word wrap Toggle overflow Private Automation Hub を指し、アップロードを許可する認証情報 (管理者ユーザートークンなど) を含む ansible.cfg ファイルを作成します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 非接続 UBI リポジトリーミラーを指す ubi.repo ファイルを作成します (UBI コンテンツがそこにホストされている場合、これは Satellite である可能性があります)。
これは、UBI リポジトリーをミラーリングするために
reposyncが使用された出力例です。Copy to Clipboard Copied! Toggle word wrap Toggle overflow Private Automation Hub Web サーバー証明書の署名に使用される CA 証明書を追加します。
- 自己署名証明書 (インストーラーのデフォルト) の場合は、Private Automation Hub からファイル /etc/pulp/certs/root.crt のコピーを作成し、hub-root.crt という名前を付けます。
- Private Automation Hub Web サーバー証明書の要求と署名に内部認証局が使用された場合は、その CA 証明書のコピーを hub-root.crt という名前で作成します。
- カスタム EE イメージに必要なコンテンツを含む python の requirements.txt と ansible コレクションの requirements.yml を作成します。必要なコレクションはすべて、Private Automation Hub にアップロードされている必要があることに注意してください。
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:latestCopy to Clipboard Copied! Toggle word wrap Toggle overflow カスタム EE イメージが正常にビルドされたら、それを Private Automation Hub にプッシュします。
podman push <hub_fqdn>/custom-ee:latest
$ podman push <hub_fqdn>/custom-ee:latestCopy 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 にアップグレードする場合は、インストールを実行した最初の Controller ノードに両方のセットアップバンドルがあることを確認します。
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
$ 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