Red Hat Training
A Red Hat training course is available for Red Hat OpenStack Platform
第11章 ノードの再起動
アンダークラウドおよびオーバークラウドでノードを再起動する必要がある場合があります。以下の手順では、異なるノード種別を再起動する方法を説明します。以下の点に注意してください。
- 1 つのロールで全ノードを再起動する場合には、各ノードを個別に再起動することを推奨しています。この方法は、再起動中にそのロールのサービスを保持するのに役立ちます。
- OpenStack Platform 環境の全ノードを再起動する場合、再起動の順序は以下のリストを参考にしてください。
推奨されるノード再起動順
- director の再起動
- コントローラーノードの再起動
- Ceph Storage ノードの再起動
- コンピュートノードの再起動
- Object Storage ノードの再起動
11.1. director の再起動
director ノードを再起動するには、以下のプロセスに従います。
ノードを再起動します。
$ sudo reboot
- ノードが起動するまで待ちます。
全サービスのステータスを確認します。
$ sudo systemctl list-units "openstack*" "neutron*" "openvswitch*"
注記再起動後に
openstack-nova-compute
が有効になるまでに約 10 分かかる場合があります。オーバークラウドとそのノードが存在しているかどうかを確認します。
$ source ~/stackrc $ openstack server list $ openstack baremetal node list $ openstack stack list
11.2. コントローラーノードの再起動
コントローラーノードを再起動するには、以下のプロセスに従います。
再起動するノードを選択します。そのノードにログインして再起動します。
[heat-admin@overcloud-controller-0 ~]$ sudo reboot
クラスター内の残りのコントローラーノードは、再起動中も高可用性サービスが保持されます。
- ノードが起動するまで待ちます。
ノードにログインして、クラスターのステータスを確認します。
[heat-admin@overcloud-controller-0 ~]$ sudo pcs status
このノードは、クラスターにもう 1 度参加します。
注記再起動後に失敗するサービスがあった場合には、sudo
pcs resource cleanup
を実行し、エラーを消去して各リソースの状態をStarted
に設定します。エラーが引き続き発生する場合には、Red Hat にアドバイス/サポートをリクエストしてください。コントローラーノード上の全コンテナーがアクティブであることを確認します。
[heat-admin@overcloud-controller-0 ~]$ sudo docker ps
- ノードからログアウトして、次に再起動するコントローラーノードを選択し、すべてのコントローラーノードが再起動されるまでこの手順を繰り返します。
11.3. Ceph Storage ノードの再起動
Ceph Storage のノードを再起動するには、以下のプロセスに従います。
Ceph MON またはコントローラーノードにログインして、Ceph Storage クラスターのリバランスを一時的に無効にします。
$ sudo ceph osd set noout $ sudo ceph osd set norebalance
- 再起動する最初の Ceph Storage ノードを選択して、ログインします。
ノードを再起動します。
$ sudo reboot
- ノードが起動するまで待ちます。
ノードにログインして、クラスターのステータスを確認します。
$ sudo ceph -s
pgs
がpgmap
により通常通りに報告されていることを確認します (active+clean
)。- ノードからログアウトして、次のノードを再起動し、ステータスを確認します。全 Ceph Storage ノードが再起動されるまで、このプロセスを繰り返します。
完了したら、Ceph MON またはコントローラーノードにログインして、クラスターのリバランスを再度有効にします。
$ sudo ceph osd unset noout $ sudo ceph osd unset norebalance
最終のステータスチェックを実行して、クラスターが
HEALTH_OK
を報告していることを確認します。$ sudo ceph status
11.4. コンピュートノードの再起動
コンピュートノードを個別に再起動して、OpenStack Platform 環境のインスタンスのダウンタイムがゼロになるようにします。この操作は、以下のワークフローに従って実行します。
- 再起動するコンピュートノードを選択します。
- インスタンスを別のコンピュートノードに移行します。
- 空のコンピュートノードを再起動します。
全コンピュートノードとその UUID を一覧表示します。
$ source ~/stackrc (undercloud) $ openstack server list --name compute
再起動するコンピュートノードを選択してから、まず最初に以下のプロセスに従ってそのノードのインスタンスを移行します。
アンダークラウドから、再起動するコンピュートノードを選択し、そのノードを無効にします。
$ source ~/overcloudrc (overcloud) $ openstack compute service list (overcloud) $ openstack compute service set [hostname] nova-compute --disable
コンピュートノード上の全インスタンスを一覧表示します。
(overcloud) $ openstack server list --host [hostname] --all-projects
以下のコマンドの 1 つを使用して、インスタンスを移行します。
選択した特定のホストにインスタンスを移行します。
(overcloud) $ openstack server migrate [instance-id] --live [target-host]--wait
nova-scheduler
により対象のホストが自動的に選択されるようにします。(overcloud) $ nova live-migration [instance-id]
一度にすべてのインスタンスのライブマイグレーションを行います。
$ nova host-evacuate-live [hostname]
注記nova
コマンドで非推奨の警告が表示される可能性がありますが、安全に無視することができます。
- 移行が完了するまで待ちます。
正常に移行したことを確認します。
(overcloud) $ openstack server list --host [hostname] --all-projects
- 選択したコンピュートノードのインスタンスがなくなるまで、移行を続けます。
インスタンスの設定および移行に関する詳しい説明については、「オーバークラウドのコンピュートノードからの仮想マシンの移行」を参照してください。
以下の手順に従ってコンピュートノードを再起動します。
コンピュートノードにログインして、再起動します。
[heat-admin@overcloud-compute-0 ~]$ sudo reboot
- ノードが起動するまで待ちます。
コンピュートノードを再度有効化します。
$ source ~/overcloudrc (overcloud) $ openstack compute service set [hostname] nova-compute --enable
コンピュートノードが有効化されているかどうかを確認します。
(overcloud) $ openstack compute service list
11.5. Object Storage ノードの再起動
Object Storage ノードを再起動するには、以下のプロセスに従います。
再起動する Object Storage ノードを選択します。そのノードにログインして再起動します。
[heat-admin@overcloud-objectstorage-0 ~]$ sudo reboot
- ノードが起動するまで待ちます。
ノードにログインして、コンテナーのステータスを確認します。
[heat-admin@overcloud-objectstorage-0 ~]$ sudo docker ps
- ノードからログアウトして、次の Object Storage ノードでこのプロセスを繰り返します。