6.4. WSGI サービスのアップグレード
この手順では、全コントローラーノード上の WSGI サービスのパッケージを同時にアップグレードします。これには、OpenStack Identity(keystone)および OpenStack Dashboard(horizon)が含まれます。
Pacemaker の制御からサービスを削除します。
pcs resource unmanage httpd-clone
# pcs resource unmanage httpd-cloneCopy to Clipboard Copied! Toggle word wrap Toggle overflow 各コントローラーノードで以下のコマンドを実行して、
httpdサービスを停止します。systemctl stop httpd
# systemctl stop httpdCopy to Clipboard Copied! Toggle word wrap Toggle overflow 関連するパッケージをアップグレードします。
yum -d1 -y upgrade \*keystone\* yum -y upgrade \*horizon\* \*openstack-dashboard\* httpd yum -d1 -y upgrade \*horizon\* \*python-django\*
# yum -d1 -y upgrade \*keystone\* # yum -y upgrade \*horizon\* \*openstack-dashboard\* httpd # yum -d1 -y upgrade \*horizon\* \*python-django\*Copy to Clipboard Copied! Toggle word wrap Toggle overflow 各コントローラーノードで更新されたユニットファイルについて、
systemdを再読み込みします。systemctl daemon-reload
# systemctl daemon-reloadCopy to Clipboard Copied! Toggle word wrap Toggle overflow インストーラーの以前のバージョンでは、期限切れの Keystone トークンを自動的にパージするようにシステムが設定されていない可能性があります。トークンテーブルには期限切れのエントリーが多数ある可能性があります。これにより、データベーススキーマのアップグレードが完了するまでにかかる時間が大幅に増大します。
期限切れトークンをデータベースからフラッシュして、問題を軽減する。Identity データベースのアップグレードを実行する前に、
keystone-manageコマンドを実行します。keystone-manage token_flush
# keystone-manage token_flushCopy to Clipboard Copied! Toggle word wrap Toggle overflow これにより、データベースから期限切れのトークンをフラッシュします。
cronを使用して(毎日など)このコマンドを定期的に実行するように配置できます。Identity サービスデータベーススキーマを更新します。
su -s /bin/sh -c "keystone-manage db_sync" keystone
# su -s /bin/sh -c "keystone-manage db_sync" keystoneCopy to Clipboard Copied! Toggle word wrap Toggle overflow 各コントローラーノードで以下のコマンドを実行してサービスを再起動します。
systemctl start httpd
# systemctl start httpdCopy to Clipboard Copied! Toggle word wrap Toggle overflow Pacemaker を使用して Identity サービスをクリーンアップします。
pcs resource cleanup httpd-clone
# pcs resource cleanup httpd-cloneCopy to Clipboard Copied! Toggle word wrap Toggle overflow Pacemaker の制御にリソースを返します。
pcs resource manage httpd-clone
# pcs resource manage httpd-cloneCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
pcs statusの出力で、上記のリソースが実行中であることを示すまで待ちます。