Red Hat Training
A Red Hat training course is available for Red Hat OpenStack Platform
第4章 director を使用しない環境: OpenStack サービスの同時アップグレード
このシナリオでは、director を使用しない環境で、Red Hat OpenStack Platform 8 から Red Hat OpenStack Platform 9 にアップグレードします。この手順では、全ノード上の全サービスをアップグレードします。この作業は、以下のワークフローに従って実行します。
- 全 OpenStack サービスの無効化
- パッケージアップグレードの実行
- 全データベースの同期の実行
- 全 OpenStack サービスの有効化
本章に記載する手順は、すべての Red Hat OpenStack Platform ドキュメントで順守しているアーキテクチャー命名規則に従います。この規則に精通していない場合には、手順を開始する前に Red Hat OpenStack Platform ドキュメントスイート で『アーキテクチャーガイド』を参照してください。
4.1. 全 OpenStackサービスの無効化
ノードに対して完全なアップグレードを実行するには、最初のステップとして、全 OpenStack サービスをシャットダウンします。このステップは、ノードが管理を行うために高可用性ツールを使用しているかどうか (例: コントローラーノード上で Pacemaker を使用している) によって異なります。このステップには、両ノードタイプの手順を記載しています。
標準ノード
全標準ノードに openstack-utils
パッケージをインストールします。
# yum install openstack-utils
全標準ノードですべての OpenStack サービスを無効にします。
# openstack-service stop
高可用性ノード
OpenStack のサービスはすべて無効にする必要がありますが、データベースとロードバランシングはそのままにしてください。たとえば、Pacemaker で HAProxy、Galera、および MongoDB のサービスを管理対象外に切り替えます。
# pcs resource unmanage haproxy # pcs resource unmanage galera # pcs resource unmanage mongod
クラスター上で stop-all-resources
を設定して、Pacemaker で管理されている残りのリソースを無効にします。Pacemaker クラスターの 1 つのメンバーで以下のコマンドを実行します。
# pcs property set stop-all-resources=true
Pacemaker で管理されている全リソースが停止するまで待ってから、pcs status
コマンドを実行して各リソースのステータスを確認します。
# pcs status
HAProxy では、利用できないサービスのブロードキャストメッセージが表示される場合があります。これは正常な動作です。
4.2. パッケージアップグレードの実行
次のステップでは、ノード上の全パッケージをアップグレードします。このステップは、OpenStack サービスを使用する各ノードで実行します。
subscription-manager
コマンドを使用して、Red Hat OpenStack Platform 9 リポジトリーに変更します。
# subscription-manager repos --disable=rhel-7-server-openstack-8-rpms # subscription-manager repos --enable=rhel-7-server-openstack-9-rpms
ノードで yum update
コマンドを実行します。
# yum update
パッケージの更新が完了するまで待ちます。
更新後の設定ファイルを確認します。アップグレードパッケージによって、Red Hat OpenStack Platform 9 のサービスに適した .rpmnew
ファイルがインストールされているはずです。新しいバージョンの OpenStack サービスでは、特定の設定オプションが非推奨になっている可能性があります。このような非推奨の設定オプションが原因で今後のアップグレードの際に問題が発生する可能性があるため、非推奨の警告については OpenStack のログも参照してください。各サービスで新規追加/更新された設定オプションや非推奨となった設定オプションについての詳しい説明は、Red Hat OpenStack Platform ドキュメントスイート で『Configuration Reference』を参照してください。
環境内の各ノードでパッケージのアップグレードを実行します。
4.3. 全データベースの同期の実行
次のステップでは、各サービスのデータベースをアップグレードします。
データベースの同期の所要時間が短縮するために、Identity サービス内の期限切れトークンをフラッシュします。
# keystone-manage token_flush
データベースを使用する各サービスのデータベーススキーマをアップグレードします。サービスのデータベースをホストしているノードで以下のコマンドを実行します。
# openstack-db --service SERVICENAME --update
SERVICENAME には、サービスのプロジェクト名を使用します。たとえば、Identity サービス内のデータベーススキーマをアップグレードするには、以下のコマンドを実行します。
# openstack-db --service keystone --update
表4.1 OpenStack サービスのプロジェクト名
サービス | プロジェクト名 |
---|---|
Identity |
keystone |
Image サービス |
glance |
Block Storage |
cinder |
Orchestration |
heat |
Compute |
nova |
ネットワーク |
neutron |
Telemetry サービスは、データベースのアップグレードに別のコマンドを使用します。
# ceilometer-dbsync
4.4. 全 OpenStack サービスの有効化
最後のステップでは、ノード上で OpenStack サービスを有効化します。このステップは、ノードが管理を行うために高可用性ツールを使用しているかどうか (例: コントローラーノード上で Pacemaker を使用している) によって異なります。このステップには、両ノードタイプの手順を記載しています。
標準ノード
全 OpenStack サービスを有効化します。
# openstack-service stop
高可用性ノード
Pacemaker を介してリソースを再起動します。Pacemaker クラスター内の 1 つのメンバーで stop-all-resources
プロパティーをリセットします。以下に例を示します。
# pcs property set stop-all-resources=false
全リソースが開始するまで待ってから、pcs status
コマンドを実行して各リソースのステータスを確認します。
# pcs status
データベースやロードバランサーなど、Pacemaker で管理対象外にしていたリソースを有効化して管理対象にします。
# pcs resource manage haproxy # pcs resource manage galera # pcs resource manage mongod
4.5. アップグレード後の注意事項
新しいバージョンの OpenStack サービスでは、特定の設定オプションが非推奨になっている可能性があります。このような非推奨の設定オプションが原因で今後のアップグレードの際に問題が発生する可能性があるため、非推奨の警告については OpenStack のログも参照してください。各サービスで新規追加/更新された設定オプションや非推奨となった設定オプションについての詳しい説明は、Red Hat OpenStack Platform ドキュメントスイート で『Configuration Reference』を参照してください。