vSphere は、WSFC のノードをホストする仮想マシンの vMotion をサポートしています。

vMotion のサポートの前提条件:

  • vMotion は、複数の物理ホストにまたがる仮想マシンのクラスタ (CAB) の場合にのみサポートされます。
  • クラスタ共有リソースを持つ仮想マシンでは、8 台を超える WSFC 仮想マシンを同時に移行しないでください。クラスタ ロールが他の仮想マシンにフェイルオーバーされる可能性があります。
  • vMotion ネットワークは、10Gbps イーサネット リンクである必要があります。WSFC 仮想マシンの vMotion では、1Gbps イーサネット リンクはサポートされていません。
  • vMotion は、Windows Server 2012 以降のリリースでサポートされています。Windows Server 2008 SP2 以前はサポートされていません。
  • WSFC クラスタのハートビート タイムアウトは、少なくとも以下の値に変更する必要があります。
    • (get-cluster -name <cluster-name>).SameSubnetThreshold = 10
    • (get-cluster -name <cluster-name>).CrossSubnetThreshold = 20
    • (get-cluster -name <cluster-name>).RouteHistoryLength = 40
  • WSFC 仮想マシンの仮想ハードウェア バージョンはバージョン 11 以降である必要があります。

WSFC ハートビート タイムアウトの変更:

WSFC ノードでは、ネットワークを使用して、クラスタの他のノードにハートビート パケットを送信します。特定の期間、ノードが他のノードからの応答を受信しない場合、クラスタはクラスタのメンバーシップからノードを削除します。デフォルトでは、Windows 2012、2012 R2 の場合、ゲスト クラスタ ノードは 5 秒間応答しなければダウンしているものと見なされます。クラスタに属する他のノードが、削除されたノードで実行されていたクラスタ ロールを引き継ぎます。

WSFC 仮想マシンは、vMotion 中の数秒間、停止する可能性があります。停止時間がハートビート タイムアウト間隔を超えると、ゲスト クラスタはノードがダウンしていると見なし、これにより不要なフェイルオーバーが発生する可能性があります。ゆとりをもたせ、ゲスト クラスタの耐性を強化するには、10 個以上のハートビート喪失を許可するように、ハートビート タイムアウト間隔を変更する必要があります。許可されるハートビート損失の数を制御するプロパティは、[SameSubnetThreshold] です。デフォルト値から 10 以上の値に変更する必要があります。参加している WSFC クラスタ ノードのいずれかで、次のコマンドを実行します。

(get-cluster -name <cluster-name>).SameSubnetThreshold = 10

他のプロパティを調整して、フェイルオーバーに対するワークロード許容値を管理することもできます。遅延を調整して、ハートビートがクラスタ化ノード間で送信される頻度を管理します。デフォルト設定は 1 秒、最大設定は 2 秒です。 [SameSubnetDelay] 値を 1 に設定します。しきい値は、どれくらいの数の連続ハートビートが失われれば、ノードがそのパートナーを使用不可と見なして、フェイルオーバー プロセスを起動するかを管理します。デフォルトしきい値は 5 ハートビート、最大しきい値は 120 ハートビートです。遅延としきい値の組み合わせで、クラスタ化された Windows ノードが通信を失ってから、フェイルオーバーを起動するまでの総経過時間を決定します。クラスタ化されたノードが異なるサブネットに存在する場合、プロパティは [CrossSubnetDelay] および [CrossSubnetThreshold] と呼ばれます。 [CrossSubnetDelay] 値を 2 に、 [CrossSubnetThreshold] 値を 20 に設定します。
注: WSFC ハートビート設定の推奨値は、現在 Windows Server 2016 以降のデフォルト値です。