皆様、こんにちは。
ダイワボウ情報システム(DIS)Nutanix担当の石井です。
今回は、Nutanixクラスターで障害が発生した際の挙動について、ノード・CVM・ディスク・ディスクコントローラ・Bootディスクの各レベルでご紹介します。Nutanixは分散型アーキテクチャを採用しており、障害時にも高い可用性を維持できる仕組みを備えています。
CVMのインストール先

CVM(Controller VM)は、Nutanixのストレージサービスを担う重要なコンポーネントであり、すべてのVMのI/O処理を受け持ちます。
CVMはサーバー前面のディスクにインストールされ、SSD2枚によるRAID1構成で冗長性を確保しています。これにより、1つのSSDに障害が発生しても、もう一方のSSDでCVMが継続稼働します。
Boot領域について
(ハイパーバイザーのインストール先)

ハイパーバイザーは、前面ディスクではなくm.2-SSDなどの専用ブート領域にインストールされます。Nutanix認定ノードでは、Bootディスクとして2つのSSDがRAID1(ミラーリング)構成で搭載されています。
Boot領域障害時

RAID1構成のため、1つのBootディスクが故障しても、もう一方からHypervisorが稼働し続けます。さらにHPE DLシリーズでは、サーバー稼働中でも安全にディスク交換が可能なホットスワップに対応しており、背面から活性交換ができます。
このように、Nutanixのソフトウェアだけでなく、ハードウェアもNutanixと同様、強化されています。
クラスター正常時
Nutanixの特徴の一つに「データローカリティ」があります。ゲストVMと同じノードのローカルストレージにデータを保持し、ネットワーク経由のやり取りを大幅に低減します。また、Replication Factor(RF)によるデータ冗長化機能もあり、ノード障害やディスク障害時でも他ノードのデータを参照してゲストVMを継続稼働できます。RF2(二重書き)またはRF3(三重書き)が選択可能ですが、RF3はノード5台以上とPro以上のNCIライセンスが必要です。

ノード障害時
ノード障害時は、ハイパーバイザーのHA機能により、障害ノード上のゲストVMが他の正常ノードに自動でフェイルオーバーされます。RF2構成であれば、1台障害が発生してもデータ損失はありません。

CVM障害時
CVM障害時は、ゲストVMがローカルデータにアクセスできなくなりますが、ハイパーバイザーがストレージパスを別のCVMに切り替えることで、ネットワーク経由でデータアクセスを継続できます。これにより、ゲストVMは稼働し続けます。

ディスク障害時
CVMが常にディスクにアクセスできるかを確認しているため、ディスク障害時は自動で障害ディスクを検知します。障害発生時は一時的にRF2が維持されなくなるものの、空きディスク領域がある場合、障害ディスク内のデータを別のディスクにコピーし、RF2として自動復旧します。

ディスクコントローラ障害時
ディスクコントローラ障害時は、CVM・ゲストVMがローカルディスクにアクセスできなくなりますが、ハイパーバイザーがストレージパスを別のCVMに切り替えることで、ネットワーク経由でデータアクセスを継続でき、ゲストVMは稼働し続けます。(CVM障害時と同様)

セルフヒーリング
Nutanixには、ノードやCVM障害時に空きリソースが十分ある場合、自動でデータ冗長性を回復する「セルフヒーリング」機能があります。ただし、空きリソースがない場合は自動回復されません。

まとめ
ノード障害時では、フェイルオーバーが発生するため一時的な影響がありますが、CVM・ディスク・ディスクコントローラ障害時の場合は仮想マシンに影響はなく、継続して稼働することができます。
| 障害内容 | 仮想マシン | ノード |
|---|---|---|
| Boot領域障害時 | 影響なし | 影響なし |
| ノード障害時 | 影響あり | 影響あり |
| CVM障害時 | 影響なし | 影響なし |
| ディスク障害時 | 影響なし | 影響なし |
| ディスクコントローラ障害時 | 影響なし | 影響なし |

