vSAN 6.7U3 にて、vSAN クラスタ再起動時の問題が解決されました!
vSAN クラスタで全てのホストを同時に再起動する際に単一障害により利用不可のデータが発生する (60424)
現象
vSANクラスタの計画停止を行う際、再起動時に故障により起動できないノードがあった場合に一部のデータにアクセスできなくなることがあります。
正直、私はこのKBに該当する状況に出会ったことがありません。
ビルの停電関連で何回も何回も計画停止、シャットダウン手順の確認やデモで何度も何度も計画停止を行なっていますが。
停電対応や障害対応でのクラスタシャットダウンにデータの移行なしのメンテナンスモードは必須です。
ワークアラウンドももちろん出ていますが、各ホストにスクリプトを配置し実行する必要がありました。
vSAN 6.7U3にて完全解決とまでは行かないのですが、クラスタシャットダウン時にいずれか1ノードで1つのコマンドを実行するだけでよくなりました!
KBはこちら
Using a built-in tool to perform simultaneous reboot of all hosts in the vSAN cluster (70650)
手順を日本語化すると。
計画停止前のコマンド実行
- vSAN クラスタの再起動をする前にひとつのホストにログインして、下記コマンドを実行します。
python /usr/lib/vmware/vsan/bin/reboot_helper.py prepare - 'Cluster preparation is done' と表示されることを確認します。
- クラスタ内の全てのホストをデータの移行なしオプションのメンテナンスモードにします。
- 再起動またはシャットダウンを実行します。
起動後の確認
- 起動後、ホストのメンテナンスモードを解除します。
- ひとつのホストにログインして、下記コマンドを実行します。
python /usr/lib/vmware/vsan/bin/reboot_helper.py recover - 'Cluster reboot/power-on is completed successfully!'と表示されることを確認します。
U3へのアップデートとこちらのKBを参考にvSAN クラスタの再起動を行なってください。
ちょうど停電対応でやらねば、というタイミングだったので実行してみました。
起動時はまた停電が終わったら追記します。
仮想マシンをシャットダウンします。
コマンドを実行します。(要名前解決!!!)
Begin to prepare the cluster for gracefully rebooting...Time among hosts are synchronized.Scheduled vSAN reconfig task.Waiting for the scheduled task...(50s left)Waiting for the scheduled task...(20s left)Checking network status...Cluster preparation is not ready, retry after 10s...Network checking done.Cluster preparation is done!Ready to proceed following steps:1.Put all hosts in maintenance mode with 'No Action' mode.2.Reboot/Shutdown all hosts.3.When all hosts are brought back, exit maintenace mode.4.Run this script again with 'recover' command.
vCenter を確認すると、全てのホストでアラームが上がっていました。
- ホストが、vSAN が有効なクラスタ内の他の1台以上のノード通信できません
- vSAN ネットワークが構成されていません
実行したコマンドの中を見てみたら、vSAN トラフィックを無効にしていたので正しいアラームです。
データの移行なしオプションのメンテナンスモードにします。
シャットダウンします。[root@desx01:/usr/lib/vmware/vsan/bin] python reboot_helper.py recover
Begin to recover the cluster...
Time among hosts are synchronized.
Scheduled vSAN cluster restore task.
Waiting for the scheduled task...(21s left)
Checking network status...
Network checking done.
Cluster reboot/poweron is completed successfully!