第4章 オーバークラウドの OpenStack Platform バージョン 15 から 16.1 へのアップグレード
オーバークラウドをアップグレードするには、オーバークラウドプランを更新し、アップグレードに向けてノードの準備を行い、環境に適用されるすべてのコンテナーイメージ設定の準備を行い、ノードをアップグレードする必要があります。
BZ#1872404 が解決されるまで、コンポーザブルロールに基づくノードについては、先ず Database
ロールを更新してから、Controller
、Messaging
、Compute
、Ceph
、およびその他のロールを更新する必要があります。
前提条件
- アンダークラウドノードを OpenStack Platform バージョン 15 から 16.1 にアップグレードしている。
オーバークラウドをアップグレードするには、以下のタスクを実施します。
4.1. HA サービスのローリングアップグレードに向けたコンテナーイメージの準備 リンクのコピーリンクがクリップボードにコピーされました!
HA サービスが使用するコンテナーイメージの namespace
、name_prefix
、または name_suffix
が変更された場合、Pacemaker は自動的にコントロールプレーンでこのサービスのインスタンスをすべて再起動し、新たに設定されたコンテナーイメージ名でコンテナーを再作成します。
Red Hat OpenStack 15 と 16.1 では異なる name_prefix
の値が使用されるので、クラスターの最初のノードが更新された後、残りのノードはローカルに存在するはずの新しいコンテナーイメージを使用して起動します。
HA コンテナーイメージ名のローリング更新を行うことができるように、Red Hat OpenStack 16.1 では ClusterCommonTag
heat パラメーターが実装され、固定の name_prefix
(cluster.common.tag
) および固定の name_suffix
(pcmklatest
) が設定された中間イメージ名を使用するように HA サービスが設定されます。director がノードに新しいコンテナーイメージをプルするたびに、中間イメージタグが新たにプルしたイメージをポイントするようにタグが更新されます。
OpenStack 16.1 の中間コンテナーイメージ命名スキームに移行するには、コントローラーノード上にある各 HA コンテナーイメージ用に初期コンテナータグを手動で作成する必要があります。新しい cluster.common.tag/rhosp16-openstack-*
コンテナータグは、元の registry/rhosp15-openstack-*:pcmklatest
タグによって参照される同じコンテナーイメージ ID を指します。
手順
-
アンダークラウドに
stack
ユーザーとしてログインします。 stackrc
ファイルを取得します。source ~/stackrc
$ source ~/stackrc
Copy to Clipboard Copied! Toggle word wrap Toggle overflow オーバークラウドの静的なインベントリーファイルを作成します。
tripleo-ansible-inventory --static-yaml-inventory ~/inventory.yaml
$ tripleo-ansible-inventory --static-yaml-inventory ~/inventory.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 既存のイメージを新しい名前にタグ付けするスクリプトを作成します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow スクリプトを実行して既存のイメージを新しい名前にタグ付けします。
ansible -i inventory.yaml 'overcloud' -m script -a './pcmkr_common_tag.sh'
$ ansible -i inventory.yaml 'overcloud' -m script -a './pcmkr_common_tag.sh'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow