こんにちは。SB C&Sの山田です。
この記事は「基礎から学ぶ!vSAN 8.0 ESA検証環境構築」シリーズ 第4回の「vSANのメンテナンス時の動作について」です。今回は、vSAN環境でESXiをメンテナンスモードに移行した際の動作を確認します。
1. vSANにおけるメンテナンス
運用を開始したvSANクラスタでは、停電対応やハードウェア障害に伴う保守作業などで、ESXiホストを停止する必要がでてきます。その際に利用するものがメンテナンスモードです。メンテナンスモードに切り替える場合は、仮想マシンを別ホストに移行するかシャットダウンする必要があります。このときvSphere DRSが有効であれば、仮想マシンは自動的にvMotionで退避されます。
つまり、メンテナンスモードにしてからESXiホストを停止することで、仮想マシンのシャットダウンし忘れやデータ破損を防止できます。
vSAN環境においてもメンテナンスモードは重要であり、データ移行について3つのモードが用意されています。仮想マシンに設定されているストレージポリシーやメンテナンス目的の違いにより、「アクセシビリティの確保」、「データの移行無し」、「全データの移行」の3つからメンテナンスモードのオプションを選択します。
「アクセシビリティの確保」では、仮想マシンがデータにアクセス可能な状態を維持します。
下図の例をご覧ください。前回の投稿で紹介したように、FTT = 1以上の仮想マシン(vm-a1)の場合はデータが必ず冗長化されています。そのため、メンテナンスによってホストが停止したとしても、他のホストにあるデータにアクセス可能な状態が継続されます。対して、FTT = 0の仮想マシン(vm-a2)の場合はデータが冗長化されないので、ホストがメンテナンスモードになってしまうとデータにアクセスできなくなってしまいます。そのため、メンテナンスモードに切り替わる前に、別ホストにコンポーネントが移行されます。
「データの移行無し」では、メンテナンスモードに切り替わる前に仮想マシンのデータが移行されません。つまり、ポリシー設定やデータ配置の状況にもよりますが、仮想マシンがデータにアクセスができなくなってしまう可能性があります。これは、停電対応時など、全てのホストをシャットダウンする場合に選択するオプションです。
「全データの移行」では、ストレージポリシーの設定に限らず、メンテナンスモードにするホストの全てのコンポーネントに対して移行が行われます。長時間ホストを停止する場合や、クラスタからホストを削除する場合に選択するオプションです。
2. 使用する環境
今回使用した環境は以下の通りです。以前の「基礎から学ぶ!vSphere 8.0 検証環境構築」シリーズで構築した環境をベースにしていますが、vSANにあわせてESXiホストのハードウェア構成を変更しています。
- ハードウェア:Nested ESXiとして作成した仮想マシン3台
※今回の検証環境ではvSANクラスターを構成するために、各仮想マシンにvSAN用のディスク容量を追加しています。詳しくは以下の環境情報をご覧ください。
- ソフトウェア:VMware ESXi 8.0 Update 3b / vCenter Server Appliance 8.0 Update 3b
※「基礎から学ぶ!vSphere 8.0 検証環境構築」で利用していたiSCSIストレージは不要になります。
以下のホスト名、アドレスとします。
コンポーネント | ESXiホスト名 | IPアドレス | CPU | メモリ | vSAN用デバイス容量 |
---|---|---|---|---|---|
ESXi-A1 | esxi-a1.demo.local | 192.168.255.11/24 | 4 | 32 | NVMeデバイス:300GB×2 |
ESXi-A2 | esxi-a2.demo.local | 192.168.255.12/24 | 4 | 32 | NVMeデバイス:300GB×2 |
ESXi-A3 | esxi-a3.demo.local | 192.168.255.13/24 | 4 | 32 | NVMeデバイス:300GB×2 |
ESXi-A4 |
esxi-a4.demo.local | 192.168.255.14/24 | 4 | 32 | NVMeデバイス:300GB×2 |
下図の赤枠部分を構築していきます。
3. 事前準備
メンテナンスモードへの切り替え前に、前回の投稿で仮想マシンのストレージポリシーを変更してある場合は、[vm-a1] 仮想マシンのストレージポリシーをデフォルトであるFTT = 1のポリシーに戻しておきます。
1. ストレージ ポリシーを編集します。
- [vm-a1] をクリックします。
- [構成] をクリックします。
- [ポリシー] をクリックします。
- [仮想マシン ストレージ ポリシーの編集] をクリックします。
2. ストレージ ポリシーを変更します。
- 仮想マシン ストレージ ポリシーを [vSAN Default Storage Policy] に変更します。
※[vSAN Default Storage Policy] はデフォルトで用意されているRAID 1のストレージポリシーです。 - [OK] をクリックします。
4. メンテナンス ~ アクセシビリティの確保 ~
vSANクラスタのESXiホストをメンテナンスモードにします。
まずは、データの退避モードとして「アクセシビリティの確保」を選択した時のコンポーネントの配置を確認します。
1. 仮想マシンの配置を確認します。
- [Cluster] をクリックします。
- [監視] をクリックします。
- [vSAN] をクリックします。
- [仮想オブジェクト] をクリックします。
- [vm-a1]、[vm-a2] 左の [>] をクリックします。
- [Hard disk 1] をクリックします。
- [配置の詳細の表示] をクリックします。
2. コンポーネントの配置場所を確認します。
- コンポーネントを確認します。
- [閉じる] をクリックします。
(スクロール)
3. ホストをメンテナンス モードに切り替えます。
- [esxi-a1.demo.local] を右クリックします。
※本手順では、[esxi-a1.demo.local]に対してメンテナンスを行いますが、実際に操作を行う際には、vm-a1、vm-a2 共にコンポーネントが配置されているホストをメンテナンス モードに切り替えてください。 - [メンテナンス モード]をクリックします。
- [メンテナンス モードへの切り替え]をクリックします。
4. メンテナンス モードの事前チェック画面に移動します。
- vSAN データの移行が [アクセシビリティの確保]になっていることを確認します
- [事前チェックに移動]をクリックします。
5. 事前チェックをします。
- [事前チェック] をクリックします。
- チェックが終了したらテストの結果を確認します。ホストがメンテナンス モードにできることを確認します。
- [メンテナンス モードに切り替える] をクリックします。
6. ポップアップが表示されます。[OK] をクリックします。
7. メンテナンス モード切り替え後の、仮想マシンの配置を確認します。
- [esxi-a1.demo.local(メンテナンス モード)] と表記されていることを確認します。
※メンテナンス モードになるまで1~3分程度かかります。 - [Cluster] をクリックします。
- [監視] をクリックします。
- [vSAN] をクリックします。
- [仮想オブジェクト] をクリックします。
- [vm-a1]、[vm-a2] 左の [>] をクリックします。
- [Hard disk 1] をクリックします。
- [配置の詳細の表示] をクリックします。
8. コンポーネントの配置場所を確認します。
- vm-a1の [esxi-a1.demo.local] に属していたコンポーネントが[なし]になっていることを確認します。
- vm-a2の [esxi-a1.demo.local] に属していたコンポーネントが他のホストに移動されていることを確認します。
- [閉じる] をクリックします。
(スクロール)
続いて、メンテナンスモードを解除して、コンポーネントの配置を確認します。
9. メンテナンス モードを解除して、コンポーネントの配置を確認します。
- [esxi-a1.demo.local(メンテナンス モード)] を右クリックします。
- [メンテナンス モード] をクリックします。
- [メンテナンス モードの終了] をクリックします
10. メンテナンス モード解除後の、仮想マシンの配置を確認します。
- [esxi-a1.demo.local] のメンテナンス モードが解除されていることを確認します。
※メンテナンスモードが解除されるまで1~3分ほどかかります。 - [Cluster] をクリックします。
- [監視] をクリックします。
- [vSAN] をクリックします。
- [仮想オブジェクト] をクリックします。
- [vm-a1]、[vm-a2] 左の [>] をクリックします。
- [Hard disk 1] をクリックします。
- [配置の詳細の表示] をクリックします。
11. コンポーネントの配置場所を確認します。
- vm-a1の[esxi-a1.demo.local] にあるコンポーネントが[アクティブ] に戻っていることを確認します。
- vm-a2のコンポーネントはそのまま変わらず [esxi-a2.demo.local] にあることを確認します。
- [閉じる] をクリックします。
(スクロール)
5. メンテナンス ~ データの移行なし ~
続いて、データの退避モードとして、「データの移行無し」時のコンポーネントの配置を確認します。なお、基本的な手順は「アクセシビリティの確保」の場合と変わらないため、ここでは省略して記載します。
1. ホストをメンテナンス モードに切り替えます。
- 対象のホストから [メンテナンス モードへの切り替え] をクリックします。
※本手順では、[esxi-a4.demo.local] に対してメンテナンスを行いますが、実際に操作を行う際には、vm-a1、vm-a2 共にコンポーネントが配置されているホストをメンテナンス モードに切り替えてください。 - vSAN データの移行を [データの移行なし] に変更します。
- [事前チェックに移動]をクリックし、事前チェック画面からメンテナンス モードへの切り替えを行います。
2. メンテナンス モードへ切り替え後の仮想マシンの配置を確認します。
- vm-a1の [esxi-a4.demo.local] に属していたコンポーネントが [なし] になっていることを確認します。
- vm-a2のコンポーネントが [なし] になっていることを確認します。
- [閉じる] をクリックします。
◼️vm-a1
◼️vm-a2
3. メンテナンス モードを解除して、少し待ってから仮想マシンの配置を確認します。
- vm-a1の[esxi-a2.demo.local] にあるコンポーネントが[アクティブ] に戻っていることを確認します。
- vm-a2のコンポーネントが [アクティブ] になっていることを確認します。
- [閉じる] をクリックします。
◼️vm-a1
◼️vm-a2
6. メンテナンス ~ 全データの移行 ~
最後に、データの退避モードとして「全データの移行」を選択した時のコンポーネントの配置を確認します。なお、基本的な手順は「アクセシビリティの確保」と変わらないため省略して記載します。
1. ホストをメンテナンス モードに切り替えます。
- 対象のホストから[メンテナンス モードへの切り替え]をクリックします。
- 本手順では、[esxi-a4.demo.local] をメンテナンスモードに切り替えますが、実際に操作を行う際には、vm-a1、vm-a2 共にコンポーネントが配置されているホストをメンテナンス モードに切り替えてください。
- vSAN データの移行を [全データの移行] に変更します。
- [事前チェックに移動]をクリックし、事前チェック画面からメンテナンス モードへの切り替えを行います。
2. メンテナンス モードへ切り替え後の仮想マシンの配置を確認します。
- vm-a1の [esxi-a4.demo.local] に属していたコンポーネントが、別ホストに移行していることを確認します。
- vm-a2の [esxi-a4.demo.local] に属していたコンポーネントが、別ホストに移行していることを確認します。
- [閉じる] をクリックします。
(スクロール)
3. メンテナンス モードを解除して少し待ってから、仮想マシンの配置を確認します。
- vm-a1、vm-a2のコンポーネントは、メンテナンスモードを解除する際には元の場所に戻されず、解除前と変わらないことを確認します。
- [閉じる] をクリックします。
(スクロール)
7. Tips ~ クラスタのシャットダウン・再起動 ~
停電対応でのメンテナンスなど、vSANクラスタ全体を停止する場合には、全てのホストをメンテナンスモードにする必要があります。
以前(vSAN 7.0U2)までは以下のKBに記載されている手順を実行する必要がありました。
https://kb.vmware.com/s/article/70650?lang=ja
vSAN 8.0(vSAN7.0 U3から)では、GUI形式のウィザードに従ってvSANクラスタをシャットダウンできます。ここからは、クラスタのシャットダウンウィザード機能による手順を紹介します。
本環境では、vCenter Server ApplianceがvSANクラスタ内にデプロイされています。そのため、クラスタをシャットダウンすることにより、vCenter Serverにもアクセスできなくなります。このウィザードではvCenter Serverが起動されているホストのことをオーケストレーション ホストと呼び、vCenter Serverを含めたクラスタの再起動にも対応しています。オーケストレーション ホストのアドレスをメモしておくことにより、シャットダウンプロセスを監視できるようになり、vCenter Serverに接続できない間に問題が発生した場合もトラブルシュートがしやすくなります。
1. クラスタのシャットダウンをします。
- vCenter Server以外の全ての仮想マシンをシャットダウンしてから、[Cluster] を右クリックします。
- [vSAN] をクリックします。
- [クラスタのシャットダウン] をクリックします。
2. シャットダウンの事前チェックが行われます。チェックマークが緑色になっていることを確認し、[次へ]をクリックします。
※赤色のマークがついている場合は、問題を解決してから実行してください。
3. シャットダウンをします。
- シャットダウンの原因にて、任意の理由を選択します。
※今回は、[スケジュール設定されたメンテナンス]にしました。 - [シャットダウン] をクリックします。
以上でクラスタのシャットダウンは終了です。このように、ウィザード形式で簡単にシャットダウンを行うことができます。
起動時には、全てのホストがパワーオンされるとvCenter Serverが自動起動されます。そして、[クラスタの再起動] をクリックするとvSANのサービスが利用可能になります。
4. vSANクラスタの再起動をします。
- ESXiホストをパワーオンし、vCenter Severが再起動されたら [Cluster] を再起動します。
- [vSAN] をクリックします。
- [クラスタの再起動] をクリックします。
5. ポップアップが表示されます。[再起動] をクリックすると、あらためて再起動されるわけではなく、そのままvSANのサービスが起動されます。
以上でクラスタの再起動は終了です。
今回は、vSANのメンテナンスについてご紹介しました。OSAの手順とほぼ同様の手順で行えたかと思います。
これで、基本的な機能や手順が検証できるvSAN 8.0 ESA検証環境が用意できました。
以上で、「基礎から学ぶ!vSAN 8.0 ESA検証環境構築」シリーズの連載は終了です。
今後も、vSphereやvSANに関する技術情報を本ブログサイトにて発信予定です。是非楽しみにしていてください。
他のおすすめ記事はこちら
著者紹介
SB C&S株式会社
ICT事業本部 技術本部 技術統括部
第1技術部 1課
山田 和良 - Kazuyoshi Yamada -
VMware vExpert