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 にアップグレードします。この手順では、全ノード上の全サービスをアップグレードします。この作業は、以下のワークフローに従って実行します。

  1. 全 OpenStack サービスの無効化
  2. パッケージアップグレードの実行
  3. 全データベースの同期の実行
  4. 全 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』を参照してください。