このBlogはvExpert
Adventarに参加しています。
〜“ほんのちょっと”な、vSANのお作法を正しく知って欲しい〜
vSANは筐体レベルで停止しても大丈夫な可用性を有していますが、「ビルの法定停電などで完全停止をしなければいけない」という環境で運用しているお客様も少なくありません。
ですが、正しくない手順でvSANシャットダウンすると、最悪データが欠落するリスクもわずかながらあるので、この手順をきちんと知ってほしい!!そう強く願います。
(2)ESXiをシャットダウン
(3)ストレージをシャットダウン
まず、自分のvCenterServerがどこにいるか?でお作法が異なります。
(コース1)vCenterServerはvSANクラスタとは別のESXi上にて動作している
(コース2)vCenterServerはvSANクラスタの上で動作している
では、2つのコースごとに、流れを追っていきます。
(コース1)vCenterServer独立のあなた
(1) vSANコンポーネントの再同期(Resync)が完了していることを確認
ちなみに、最新のvSANではESXCLIで色々と便利な確認が拡張されています。(今回は割愛)
(2) vSANクラスタ上の 仮想マシンを “すべて”停止
これがないと、メンテナンスモードに移行できませんので、かならず落としてください。
(3) メンテナンスモードへの移行
ここで、WebClientによる作業が必要です。
(C#版Clientでは操作できないオプション項目があります)
ここでは、一番下の「データを退避しない」を選んでから メンテナンスモードに移行します。
※このオプションは C#版では選択ができません。強行して操作すると、デフォルトの「他のホストからデータのアクセシビリティを確保」が選ばれてしまい、なかなかシャットダウンができない!や、エラーでメンテナンスモードに移行できない!!などの地獄にハマってしまいます・・・
◯メンテナンスモードの移行時に選べる、vSANオプションは3択
a)すべてのデータを他のホストに退避
b)他のホストからデータのアクセシビリティを確保
c)データを退避しない
(4)ESXiのシャットダウン
あとは、いつも通りです。
簡単ですね〜
(コース2)vCenterServerがvSANクラスタ上にある場合
基本的な流れはすべて同じですが、vCenterServerのいるESXiだけ工夫が必要です。
(1)vSANコンポーネントの再同期(Resync)が完了していることを確認
(2)vSANクラスタ上の 仮想マシンを “すべて”停止
vCenterServer以外の仮想マシンはすべて停止してください。
vCenterServerのいるESXiはオペレーションが後回しになります。
(3)メンテナンスモードへの移行(vCenterServerのいないESXi)
もちろん、WebClientにて「データを退避しない」オプションを選択して、メンテナンスモードに移行します。
(4)ESXiのシャットダウン(vCenterServerのいないESXi)
(5)vCenterServerの仮想マシンを停止
vCenterServerをシャットダウンします。
(6)メンテナンスモードへの移行(vCenterServerのいるESXi)
vCenterServerがいないのに、どうやるのでしょうか???
はい、ESXCLIで操作します。(大文字小文字は厳格に)
メンテナンスモードへの移行
% esxcli
system maintenanceMode set -e true -m noAction
上記コマンドを実行しても何も返ってこないので、以下の確認コマンドで結果を確認
% esxcli
system maintenanceMode get
Enabled
※Enabled=メンテナスモードが実行中
(7)ESXiのシャットダウン(vCenterServerのいるESXi)
シャットダウンもコマンドで
% esxcli
system shutdown poweroff -r “COMMENT”
(ちなみに、メンテナンスモード移行が終わってないと、以下のようなメッセージが出ますので、終わるまで待ちましょう。)
System is not
in maintenance mode. Cannot perform requested operation.
立ち上げるときはvCenterServerのいるESXiから起動してください。
(コース1)vCenterServer独立のあなたに送る、復活の呪文
(1) ESXiサーバの電源ON
(2) メンテナンスモード解除
(3) vSAN健全性チェックでクラスタ復活したことを確認
(4) 残りの仮想マシンを起動
(コース2)vCenterServerがvSANクラスタ上にある場合の、復活の呪文
(1) まず、vCenterServerのいるESXiを電源ON
(2) ESXiにてコマンドでメンテナンスモードを解除
% esxcli system maintenanceMode set -e false
% esxcli system maintenanceMode get
Disabled
(3) vCenterServer仮想マシンを起動
(4) その他ESXiも電源ON
(5) vCenterServerからメンテナンスモードを解除
(6) vSAN健全性チェックでクラスタ復活したことを確認
(7) 残りの仮想マシンを起動
お作法さえ覚えてしまえば、すごく簡単なので しっかりと抑えておきましょう!!