17.5. tripleo-container-manage デバッグ

tripleo_container_manage Ansible ロールを使用すると、特定のコンテナーに対して特定のアクションを実行できます。これは次の目的で使用できます。

  • 特定の 1 回限りの設定でコンテナーを実行します。
  • コンテナーのライフサイクル管理用のコンテナーコマンドを出力します。
  • Ansible がコンテナーに加えられた変更を出力します。
注記

1 つのコンテナーを管理するには、次の 2 つのことを知っておく必要があります。

  • オーバークラウドのデプロイ中のどのステップでコンテナーがデプロイされたか。
  • コンテナー設定を含む、生成された JSON ファイルの名前。

以下は、イメージ設定をオーバーライドする ステップ 1HAproxy コンテナーを管理する 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_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_clean_orphans: false
            tripleo_container_manage_config_overrides:
              haproxy:
                image: quay.io/tripleoRed_Hat_OpenStack_Platform-17.0-Director_Installation_and_Usage.entos9/centos-binary-haproxy:hotfix

Ansible が check mode で実行されている場合に、コンテナーは削除または作成されませんが、Playbook の実行の最後にコマンドのリストが表示され、Playbook で出される可能性のある結果が示されます。これはデバッグに役立ちます。

$ ansible-playbook haproxy.yaml --check

diff mode を追加すると、Ansible によってコンテナーに加えられた変更が表示されます。

$ ansible-playbook haproxy.yaml --check --diff

tripleo_container_manage_clean_orphans パラメーターはオプションです。false に設定できます。これは、固有の config_id が割り当てられた、孤立したコンテナーが削除されないことを意味します。このパラメーターを使用して、config_id が同じ、別の実行中のコンテナーに影響を与えずに、1 つのコンテナーを管理できます。

tripleo_container_manage_config_overrides パラメーターはオプションであり、イメージやコンテナーユーザーなどの特定のコンテナー属性をオーバーライドするために使用できます。このパラメーターは、コンテナー名とオーバーライドするパラメーターを使用してディクショナリーを作成します。これらのパラメーターは存在する必要があり、TripleO Heat テンプレートでコンテナー設定を定義します。

ディクショナリーは JSON ファイルのオーバーライドを更新しないことに注意してください。そのため、更新またはアップグレードが実行された場合に、コンテナーは JSON ファイルの設定で再構成されます。