検索

第11章 director Operator を使用して RHOSP オーバークラウドのマイナー更新を実行する

download PDF

openstackclient Pod を更新した後、オーバークラウドとコンテナーイメージの準備デプロイメントを実行し、ノードを更新し、オーバークラウド更新収束デプロイメントを実行して、オーバークラウドを更新します。マイナー更新中は、コントロールプレーン API が利用可能です。

Red Hat OpenStack Platform (RHOSP) 環境のマイナー更新には、オーバークラウドノード上の RPM パッケージとコンテナーの更新が含まれます。一部のサービスの設定を更新する必要がある場合もあります。データプレーンとコントロールプレーンは、マイナー更新中に完全に利用可能になります。RHOSP 環境を更新するには、次の各手順を完了する必要があります。

  1. マイナー更新用に RHOSP 環境を準備します。
  2. オプション: ovn-controller コンテナーを更新します。
  3. Pacemaker サービスを含むコントローラーノードとコンポーザブルノードを更新します。
  4. コンピュートノードを更新します。
  5. Red Hat Ceph Storage ノードを更新します。
  6. Red Hat Ceph Storage クラスターを更新します。
  7. オーバークラウドノードを再起動します。

前提条件

11.1. マイナー更新用の director オペレーターの準備

director Operator (OSPdO) を使用してマイナー更新を実行できるように Red Hat OpenStack Platform (RHOSP) 環境を準備するには、次のタスクを実行します。

  1. RHOSP 環境を Red Hat Enterprise Linux (RHEL) リリースにロックします。
  2. RHOSP リポジトリーを更新します。
  3. コンテナーイメージ準備ファイルを更新します。
  4. オーバークラウドでフェンシングを無効にします。

11.1.1. RHOSP 環境を RHEL リリースにロックする

Red Hat OpenStack Platform (RHOSP) 17.1 は Red Hat Enterprise Linux 9.2 (RHEL) でサポートされています。更新を実行する前に、オーバークラウドのリポジトリーを RHEL 9.2 リリースにロックして、オペレーティングシステムが新しいマイナーリリースにアップグレードされないようにします。

手順

  1. オーバークラウドのサブスクリプション管理用環境ファイル rhsm.yamlopenstackclient にコピーします。

    $ oc cp rhsm.yaml openstackclient:/home/cloud-admin/rhsm.yaml
  2. openstackclient Pod のリモートシェルにアクセスします。

    $ oc rsh openstackclient
  3. rhsm.yaml ファイルを開き、Subscription Management 設定に rhsm_release パラメーターが含まれているかどうかを確認します。rhsm_release パラメーターが存在しない場合は、追加して 9.2 に設定します。

    parameter_defaults:
      RhsmVars:
        …​
        rhsm_username: "myusername"
        rhsm_password: "p@55w0rd!"
        rhsm_org_id: "1234567"
        rhsm_pool_ids: "1a85f9223e3d5e43013e3d6e8ff506fd"
        rhsm_method: "portal"
        rhsm_release: "9.2"
  4. rhsm.yaml ファイルを保存します。
  5. すべてのノードでオペレーティングシステムのバージョンを RHEL 9.2 にロックするタスクを内包した、set_release.yaml という名前の Playbook を作成します。

    - hosts: all
      gather_facts: false
      tasks:
        - name: set release to 9.2
          command: subscription-manager release --set=9.2
          become: true
  6. openstackclient Pod で、set_release.yaml Playbook を実行します。

    $ ansible-playbook -i /home/cloud-admin/ctlplane-ansible-inventory /home/cloud-admin/set_release.yaml --limit Controller,Compute

    --limit オプションを使用して、コンテンツをすべての RHOSP ノードに適用します。Red Hat Ceph Storage ノードには別のサブスクリプションがある可能性があるため、これらのノードに対してこの Playbook を実行しないでください。

    注記

    手動でノードを特定のバージョンにロックするには、ノードにログインして subscription-manager release コマンドを実行します。

    $ sudo subscription-manager release --set=9.2
  7. openstackclient Pod のリモートシェルを終了します。

    $ exit

11.1.2. RHOSP リポジトリーの更新

Red Hat OpenStack Platform (RHOSP) 17.1 を使用するようにリポジトリーを更新します。

手順

  1. rhsm.yaml ファイルを開き、rhsm_repos パラメーターを正しいリポジトリーバージョンに更新します。

    parameter_defaults:
      RhsmVars:
        rhsm_repos:
          - rhel-9-for-x86_64-baseos-eus-rpms
          - rhel-9-for-x86_64-appstream-eus-rpms
          - rhel-9-for-x86_64-highavailability-eus-rpms
          - openstack-17.1-for-rhel-9-x86_64-rpms
          - fast-datapath-for-rhel-9-x86_64-rpms
  2. rhsm.yaml ファイルを保存します。
  3. openstackclient Pod のリモートシェルにアクセスします。

    $ oc rsh openstackclient
  4. すべてのノードで、リポジトリーを RHOSP 17.1 に設定するタスクを含む Playbook を、update_rhosp_repos.yaml という名前で作成します。

    - hosts: all
      gather_facts: false
      tasks:
        - name: change osp repos
          command: subscription-manager repos --enable=openstack-17.1-for-rhel-9-x86_64-rpms
          become: true
  5. openstackclient Pod で update_rhosp_repos.yaml Playbook を実行します。

    $ ansible-playbook -i /home/cloud-admin/ctlplane-ansible-inventory /home/cloud-admin/update_rhosp_repos.yaml --limit Controller,Compute

    --limit オプションを使用して、コンテンツをすべての RHOSP ノードに適用します。Red Hat Ceph Storage ノードは通常異なるサブスクリプションを使用するため、この Playbook を Ceph Storage ノードに対して実行しないでください。

  6. すべての Red Hat Ceph Storage ノードで、リポジトリーを RHOSP 17.1 に設定するタスクを含む Playbook を、update_ceph_repos.yaml という名前で作成します。

    - hosts: all
      gather_facts: false
      tasks:
        - name: change ceph repos
          command: subscription-manager repos --enable=openstack-17.1-deployment-tools-for-rhel-9-x86_64-rpms
          become: true
  7. openstackclient Pod で update_ceph_repos.yaml Playbook を実行します。

    $ ansible-playbook -i /home/cloud-admin/ctlplane-ansible-inventory /home/cloud-admin/update_ceph_repos.yaml --limit CephStorage

    --limit オプションを使用して、コンテンツを Red Hat Ceph Storage ノードに適用します。

  8. openstackclient Pod のリモートシェルを終了します。

    $ exit

11.1.3. コンテナーイメージ準備ファイルの更新

コンテナー準備ファイルは、ContainerImagePrepare パラメーターが含まれるファイルです。このファイルを使用して、オーバークラウドのコンテナーイメージを取得するためのルールを定義します。

環境を更新する前に、ファイルを確認して正しいイメージバージョンを取得するようにしてください。

手順

  1. コンテナー準備ファイルを編集します。このファイルのデフォルト名は containers-prepare-parameter.yaml です。
  2. それぞれのルールセットで、tag パラメーターが 17.1 に設定されていることを確認します。

    parameter_defaults:
      ContainerImagePrepare:
      - push_destination: false
        set:
          ...
          tag: '17.1'
        tag_from_label: '{version}-{release}'
    注記

    更新に特定のタグ (17.117.1.1 など) を使用しない場合は、tag キーと値のペアを削除し、tag_from_label のみを指定します。tag_from_label タグは、インストールされている Red Hat OpenStack Platform (RHOSP) バージョンを使用して、更新プロセスの一部として使用するタグの値を決定します。

  3. containers-prepare-parameter.yaml ファイルを保存します。

11.1.4. オーバークラウドでのフェンシングの無効化

オーバークラウドを更新する前に、フェンシングが無効になっていることを確認します。

コントローラーノードの更新プロセス中にフェンシングが環境にデプロイされると、オーバークラウドは特定ノードが無効であることを検出し、フェンシング操作を試みる場合があります。これにより、意図しない結果が生じる可能性があります。

オーバークラウドでフェンシングを有効にした場合、更新中はフェンシングを一時的に無効にする必要があります。

手順

  1. openstackclient Pod のリモートシェルにアクセスします。

    $ oc rsh openstackclient
  2. コントローラーノードにログインし、Pacemaker コマンドを実行してフェンシングを無効にします。

    $ ssh <controller-0.ctlplane> "sudo pcs property set stonith-enabled=false"
    • <controller-0.ctlplane> をコントローラーノードの名前に置き換えます。
  3. openstackclient Pod のリモートシェルを終了します。

    $ exit
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.