14.3. 単一コンテナーでの操作の実施
この機能は、本リリースでは テクノロジープレビュー として提供しているため、Red Hat では全面的にはサポートしていません。これは、テスト用途にのみご利用いただく機能です。実稼働環境にはデプロイしないでください。テクノロジープレビュー機能についての詳しい情報は、対象範囲の詳細 を参照してください。
tripleo-container-manage
ロールを使用して、すべてのコンテナーまたは特定のコンテナーを管理することができます。特定のコンテナーを管理する場合は、特定のコンテナーをカスタム Ansible Playbook の対象にできるように、コンテナーデプロイメントステップおよびコンテナー設定 JSON ファイルの名前を特定する必要があります。
前提条件
- アンダークラウドの正常なインストール。詳細は、4章アンダークラウドへの director のインストール を参照してください。
手順
-
アンダークラウドに
stack
ユーザーとしてログインします。 source コマンドで
overcloudrc
認証情報ファイルを読み込みます。$ source ~/overcloudrc
-
コンテナーデプロイメントステップを特定します。各ステップのコンテナー設定は、
/var/lib/tripleo-config/container-startup-config/step_{1,2,3,4,5,6}
ディレクトリーに保存されています。 -
コンテナーの JSON 設定ファイルを特定します。コンテナー設定ファイルは、該当する
step_*
ディレクトリーに保存されています。たとえば、ステップ 1 の HAProxy コンテナーの設定ファイルは、/var/lib/tripleo-config/container-startup-config/step_1/haproxy.json
です。 適切な Ansible Playbook を作成します。たとえば、HAProxy コンテナーイメージを置き換えるには、以下の例に示す Playbook を使用します。
- hosts: localhost become: true tasks: - name: Manage step_1 containers using tripleo-ansible block: - name: "Manage HAproxy container at step 1 with tripleo-ansible" include_role: name: tripleo-container-manage vars: tripleo_container_manage_systemd_order: true tripleo_container_manage_config_patterns: 'haproxy.json' tripleo_container_manage_config: "/var/lib/tripleo-config/container-startup-config/step_1" tripleo_container_manage_config_id: "tripleo_step1" tripleo_container_manage_config_overrides: haproxy: image: registry.redhat.io/tripleomaster/<HAProxy-container>:hotfix
tripleo-container-manage
ロールで使用することのできる変数についての詳細は、「tripleo-container-manage ロールの変数」 を参照してください。Playbook を実行します。
(overcloud) [stack@director]$ ansible-playbook <custom_playbook>.yaml
変更を適用せずに Playbook を実行する場合は、
ansible-playbook
コマンドに--check
オプションを追加します。(overcloud) [stack@director]$ ansible-playbook <custom_playbook>.yaml --check
変更を適用せずに Playbook がコンテナーに加える変更を把握する場合は、
ansible-playbook
コマンドに--check
および--diff
オプションを追加します。(overcloud) [stack@director]$ ansible-playbook <custom_playbook>.yaml --check --diff