なぜ2ノードクラスタにWitnessが必要なのか?
支店や拠点(Edge sites)向けに標準的な3ノードのvSANクラスタを構築することは、時に「牛刀をもって鶏を割く」ようなものです。小規模な拠点のシステム運用経験から言うと、最大の課題はコストの最適化です。通常、vSANは多数決(Quorum)を維持するために、少なくとも3つの物理ノードを必要とします。1つのノードに障害が発生しても、残りの2つのノードがシステムを継続稼働させる権限を維持できるからです。
しかし、単に「監視」と「投票」のためだけに、1台100万〜200万円もするサーバーを追加投資するのは予算の無駄です。そこで、vSAN 2-node ClusterとWitness Applianceの組み合わせが威力を発揮します。このソリューションにより、3台目のノードにかかるハードウェアコストを完全に排除しつつ、高い 可用性(HA)を確保することができます。
Quorum(クォーラム)へのアプローチの比較
上司や顧客にこの案を承認してもらうには、物理サーバーを追加する場合と仮想Witnessを使用する場合の違いを明確にする必要があります。
| 項目 | 物理3ノードクラスタ | 2ノードクラスタ + Witness Appliance |
|---|---|---|
| ハードウェアコスト | 高価(同一仕様のサーバーが3台必要) | 安価(サーバー2台 + 無料のVM 1台) |
| Witnessの配置場所 | クラスタ内に配置 | クラスタ外(PC、クラウド、または別のホスト)に配置 |
| 必要な帯域幅 | 10Gbps以上(データトラフィック) | 約2Mbps(メタデータのみ送信) |
| ネットワーク遅延 (RTT) | 低い (< 1ms) | 最大500msまで許容 |
注目すべき利点と制限事項
なぜ採用すべきか?
- 最大限のコスト削減: Witness ApplianceはVMwareから無料で提供されるOVAファイルです。このエンティティに対して追加のvSphereやWindowsのライセンス費用はかかりません。
- 非常に軽量: 仮想マシンデータ(VMDK)は保持しません。ネットワークの分断(スプリットブレイン)が発生した際の調停役として、メタデータのみを保存します。
- 低いシステム要件: ESXiを実行している古いPCや、クラウド上の小さな仮想マシンでもWitnessとして十分に機能します。
技術的な制約:
- ネットワークインフラ: 2つのメインノードとWitnessノードの間で、Layer 2またはLayer 3の疎通を確保する必要があります。
- リスクシナリオ: Witnessノードとメインノードの1台が同時にダウンした場合、Quorumが失われvSANクラスタは停止します。
実際のデプロイ手順
以下は、実際のプロジェクトで迅速に導入するために筆者が通常適用しているプロセスです。
ステップ 1: ネットワークインフラの準備
ネットワーク接続はこのモデルの肝です。Witness Applianceには2つの独立したネットワークカードがあります。
- Management Network: vCenterとの接続に使用します。
- vSAN Network: 2台の物理ノードのvSANインターフェースとの通信に使用します。
これらのインターフェース間でpingが通ることを確認してください。筆者は正式な設定の前に、必ずvmkpingコマンドを使用して入念にチェックします。
# 物理ホストからWitnessのvSAN IPへの接続を確認
vmkping -I vmk1 [WITNESS_VSAN_IP]
ステップ 2: vSAN Witness Applianceのデプロイ
- Broadcomの公式サイトからOVAファイルをダウンロードします。実行しているESXiのバージョンと完全に一致するものを選んでください。
- vCenterで右クリックし、[OVF テンプレートのデプロイ]を選択します。
- 適切なサイズを選択します。10台未満のVMのクラスタであれば、Tiny(2 vCPU, 8GB RAM, 15GB Disk)で十分です。
- 静的IPを設定します。停電などでIPが変わってしまうとvSANクラスタ全体の接続が切断されるため、DHCPは絶対に使用しないでください。
ステップ 3: vCenterでのWitnessホストの設定
起動後、Witness Applianceは仮想的なESXiとして表示されます。これを通常のホストと同じようにvCenterに追加しますが、クラスタの外に置くことに注意してください。
クラスタでの有効化手順:
- [設定] -> [vSAN] -> [サービス] にアクセスします。
- [フォールト ドメインとストレッチ クラスタ] セクションで、[構成] をクリックします。
- [2ノード vSAN クラスタ] モードを選択します。
- 準備したWitness Applianceを指定します。
- ディスクグループを確認します。通常、OVAによって1つの仮想SSD(キャッシュ)と1つの仮想HDD(キャパシティ)が事前に作成されています。
運用における「血の教訓」
顧客のトラブルシューティング対応を通じて得られた、3つの重要な注意点を紹介します。
1. 「自滅」エラーを避ける: Witness仮想マシンを、それが保護しているvSANクラスタ自体の上に配置してはいけません。vSANクラスタに障害が発生するとWitnessもダウンしてしまい、システムを復旧させるための調停者がいなくなってしまいます。
2. MTUの同期: 物理スイッチでvSANにジャンボフレーム(MTU 9000)を使用している場合、Witnessのネットワークカードも9000に合わせる必要があります。MTUの不一致は、Witnessが理由もなく「切断(Disconnected)」状態になる最も一般的な原因です。
# vmkインターフェースの現在のMTUを確認
esxcfg-vmknic -l
3. ライセンス: VMwareはWitness의 OVAに無料のライセンスを同梱しています。これに追加費用をかける必要はなく、2つのメインノードとvCenterのライセンスに集中してください。
結論
vSAN Witness Applianceを使用することは、エンタープライズ級のシステムをリーズナブルな価格で手に入れるための最もスマートな方法です。このソリューションは、特に通信基地局や小売店舗などで非常に効果的です。最初にネットワーク部分を正しく構築しさえすれば、システムは極めて安定して稼働します。
もし「Witness host is not in the same subnet」というエラーが発生したり、ディスクの要求(Claim Disk)で困ったりした場合は、下のコメント欄に記入してください。サポートいたします!

