7.2. 高度なコンテナーイメージ管理の実施


デフォルトのコンテナーイメージ設定は、ほとんどの環境に対応します。状況によっては、コンテナーイメージ設定にバージョンの固定などのカスタマイズが必要になる場合があります。

7.2.1. アンダークラウド用コンテナーイメージの固定

特定の状況では、アンダークラウド用に特定のコンテナーイメージバージョンのセットが必要な場合があります。そのような場合には、イメージを特定のバージョンに固定する必要があります。イメージに固定するには、コンテナー設定ファイルを生成および変更し、続いてアンダークラウドのロールデータをコンテナー設定ファイルと組み合わせ、サービスとコンテナーイメージのマッピングが含まれる環境ファイルを生成する必要があります。次に、この環境ファイルを undercloud.conf ファイルの custom_env_files パラメーターに追加します。

手順

  1. アンダークラウドホストに stack ユーザーとしてログインします。
  2. --output-env-file オプションを指定して openstack tripleo container image prepare default コマンドを実行し、デフォルトのイメージ設定が含まれるファイルを生成します。

    $ sudo openstack tripleo container image prepare default \
    --output-env-file undercloud-container-image-prepare.yaml
    Copy to Clipboard Toggle word wrap
  3. 環境の要件に応じて、undercloud-container-image-prepare.yaml ファイルを変更します。

    1. tag: パラメーターを削除して、director が tag_from_label: パラメーターを使用できるようにします。director はこのパラメーターを使用して各コンテナーイメージの最新バージョンを特定し、それぞれのイメージをプルし、director のコンテナーレジストリーの各イメージをタグ付けします。
    2. アンダークラウドの Ceph ラベルを削除します。
    3. neutron_driver: パラメーターが空であることを確認します。OVN はアンダークラウドでサポートされないため、このパラメーターを OVN に設定しないでください。
    4. コンテナーイメージレジストリーの認証情報を追加します。

      ContainerImageRegistryCredentials:
        registry.redhat.io:
          myser: 'p@55w0rd!'
      Copy to Clipboard Toggle word wrap
      注記

      image-serve レジストリーがまだインストールされていないので、新しいアンダークラウドのアンダークラウドレジストリーにコンテナーイメージをプッシュすることはできません。push_destination の値を false に設定するか、カスタム値を使用して、イメージを直接ソースからプルする必要があります。詳細は、コンテナーイメージ準備のパラメーター を参照してください。

  4. カスタムの undercloud-container-image-prepare.yaml ファイルと組み合わせたアンダークラウドのロールファイルを使用する、新たなコンテナーイメージ設定ファイルを作成します。

    $ sudo openstack tripleo container image prepare \
    -r /usr/share/openstack-tripleo-heat-templates/roles_data_undercloud.yaml \
    -e undercloud-container-image-prepare.yaml \
    --output-env-file undercloud-container-images.yaml
    Copy to Clipboard Toggle word wrap

    undercloud-container-images.yaml ファイルは、サービスパラメーターのコンテナーイメージへのマッピングが含まれる環境ファイルです。たとえば、OpenStack Identity (keystone) は、ContainerKeystoneImage パラメーターを使用してそのコンテナーイメージを定義します。

    ContainerKeystoneImage: undercloud.ctlplane.localdomain:8787/rhosp-rhel9/openstack-keystone:17.1
    Copy to Clipboard Toggle word wrap

    コンテナーイメージタグは {version}-{release} 形式に一致することに注意してください。

  5. undercloud.conf ファイルの custom_env_files パラメーターに undercloud-container-images.yaml ファイルを追加します。アンダークラウドのインストールを実施する際に、アンダークラウドサービスはこのファイルから固定されたコンテナーイメージのマッピングを使用します。

7.2.2. オーバークラウド用コンテナーイメージのピニング

特定の状況では、オーバークラウド用に特定のコンテナーイメージバージョンのセットが必要な場合があります。そのような場合には、イメージを特定のバージョンに固定する必要があります。イメージに固定するには、containers-prepare-parameter.yaml ファイルを作成して、このファイルを使用してアンダークラウドレジストリーにコンテナーイメージをプルし、固定されたイメージのリストが含まれる環境ファイルを生成する必要があります。

たとえば、containers-prepare-parameter.yaml ファイルに以下の内容が含まれる場合があります。

parameter_defaults:
  ContainerImagePrepare:
    - push_destination: true
      set:
        name_prefix: openstack-
        name_suffix: ''
        namespace: registry.redhat.io/rhosp-rhel9
        neutron_driver: ovn
      tag_from_label: '{version}-{release}'

  ContainerImageRegistryCredentials:
    registry.redhat.io:
      myuser: 'p@55w0rd!'
Copy to Clipboard Toggle word wrap

ContainerImagePrepare パラメーターには、単一のルール set が含まれます。このルール set には tag パラメーターを含めないでください。各コンテナーイメージの最新バージョンとリリースを特定するのに、tag_from_label パラメーターを使用する必要があります。director はこのルール set を使用して各コンテナーイメージの最新バージョンを特定し、それぞれのイメージをプルし、director のコンテナーレジストリーの各イメージをタグ付けします。

手順

  1. openstack tripleo container image prepare コマンドを実行します。このコマンドは、containers-prepare-parameter.yaml ファイルで定義されたソースからすべてのイメージをプルします。固定されたコンテナーイメージのリストが含まれる出力ファイルを指定するには、--output-env-file を追加します。

    $ sudo openstack tripleo container image prepare -e /home/stack/templates/containers-prepare-parameter.yaml --output-env-file overcloud-images.yaml
    Copy to Clipboard Toggle word wrap

    overcloud-images.yaml ファイルは、サービスパラメーターのコンテナーイメージへのマッピングが含まれる環境ファイルです。たとえば、OpenStack Identity (keystone) は、ContainerKeystoneImage パラメーターを使用してそのコンテナーイメージを定義します。

    ContainerKeystoneImage: undercloud.ctlplane.localdomain:8787/rhosp-rhel9/openstack-keystone:17.1
    Copy to Clipboard Toggle word wrap

    コンテナーイメージタグは {version}-{release} 形式に一致することに注意してください。

  2. openstack overcloud deploy コマンドを実行する際に、containers-prepare-parameter.yaml および overcloud-images.yaml ファイルを特定の順序で環境ファイルコレクションに含めます。

    $ openstack overcloud deploy --templates \
        ...
        -e /home/stack/containers-prepare-parameter.yaml \
        -e /home/stack/overcloud-images.yaml \
        ...
    Copy to Clipboard Toggle word wrap

オーバークラウドサービスは、overcloud-images.yaml ファイルにリスト表示されている固定されたイメージを使用します。

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat