クラスターのハートビート通信の設定値の範囲について

こんにちは。Windows プラットフォーム サポートの永岡です。

今回のトピックはクラスターのハートビート通信に関わるパラメーターの設定値 (閾値) に
ついて分かりやすくご紹介したいと思います。

ハートビートとはクラスター ノード間で互いのノードの正常性を確認するための仕組みで、
詳細につきましては以下の記事がございます。ハートビート通信の設定変更手順などの
記載がございますので、こちらにつきましても、ぜひご一読ください。

  フェールオーバー クラスターのハートビートについて
  https://blogs.technet.com/b/askcorejp/archive/2012/03/22/3488080.aspx

このハートビートに関するパラメータの設定可能な範囲については、Windows Server 2008 および
Windows Server 2012 / 2012 R2 では公開された情報がありましたが、Windows Server 2008 R2 における
設定可能値の情報は、公開されておりませんでした。

そのため、当ブログでは Windows Server 2008 R2 を含めた OS  バージョン毎のハートビート通信の
設定値の範囲についてまとめさせていただきます。

■ Windows Server 2008 における設定値の範囲
Parameter Default Minimum  Maximum
SameSubnetDelay      1000 ミリ秒 (1秒) 250 ミリ秒 (0.25 秒) 2000 ミリ秒 (2 秒)
SameSubnetThreshold   5 回 3 回 10 回
CrossSubnetDelay     1000 ミリ秒 (1秒) 250 ミリ秒 (0.25 秒) 4000 ミリ秒 (4 秒)
CrossSubnetThreshold 5 回 3 回 10 回
■ Windows Server 2008 R2 における設定値の範囲
Parameter Default Minimum  Maximum
SameSubnetDelay      1000 ミリ秒 (1秒) 250 ミリ秒 (0.25 秒) 2000 ミリ秒 (2 秒)
SameSubnetThreshold   5 回 3 回 10 回
CrossSubnetDelay     1000 ミリ秒 (1秒) 250 ミリ秒 (0.25 秒) 4000 ミリ秒 (4 秒)
CrossSubnetThreshold 5 回 3 回 20 回
■ Windows Server 2012 / 2012 R2 における設定値の範囲
Parameter Default Minimum  Maximum
SameSubnetDelay      1000 ミリ秒 (1秒) 250 ミリ秒 (0.25 秒) 2000 ミリ秒 (2 秒)
SameSubnetThreshold   5 回 3 回 120 回
CrossSubnetDelay     1000 ミリ秒 (1秒) 250 ミリ秒 (0.25 秒) 4000 ミリ秒 (4 秒)
CrossSubnetThreshold 5 回 3 回 120 回

上記の通り、Windows Server 2008 R2 では同一サブネットにおけるハートビート通信の閾値を最大 20 秒、
異なるサブネット間では最大 80 秒まで設定可能となっています。

負荷の高いネットワークであったり、 WAN 環境などのパケット遅延が発生しうる環境では、これらの値を
変更することで一時的なハートビート通信遅延などによる障害検知の影響を軽減することができます。

しかしながら、ハートビート通信の閾値を必要以上に延長すると、クラスター ノードにおける障害検知 (例えば
ブルースクリーンでノードが落ちた場合等) が遅くなるリスクがあります。そのため、TCP/IP やアプリケーションが
もつ各種タイムアウト等を考慮に入れ、お客様の運用方針に合わせた適切な値を設定いただければと思います。

[参考資料]
・ Windows Server 2012 / 2012 R2 の設定値の範囲
  SameSubnetDelay
    https://msdn.microsoft.com/en-us/library/jj151938(v=vs.85).aspx
  SameSubnetThreshold
    https://msdn.microsoft.com/en-us/library/jj151939(v=vs.85).aspx
  CrossSubnetDelay
    https://msdn.microsoft.com/en-us/library/jj151927(v=vs.85).aspx
  CrossSubnetThreshold
    https://msdn.microsoft.com/en-us/library/jj151928(v=vs.85).aspx

・ Windows Server 2008 の設定値の範囲
  Clustering and High-Availability
    https://blogs.msdn.com/b/clustering/archive/2012/11/21/10370765.aspx