VMFSハートビートとATSの使用
search cancel

VMFSハートビートとATSの使用

book

Article ID: 419509

calendar_today

Updated On:

Products

VMware vSphere ESXi 8.0

Issue/Introduction

免責事項これは英文の記事「VMFS Heartbeat and usage of ATS」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。

このKBでは、VMFSハートビート(HB)、ハートビートに関連する各種タイムアウト、および特定の状況でロックを取得するためにHBを使用する方法について簡単に説明します。

Environment

ESXi 8.x

Resolution

VMFS ハートビート:

VMFS は分散ファイルシステムであるため、複数の ESX ホスト間で共有ストレージへのアクセスを調停するためにオンディスク・ロックに依存しています。VMFS はまた、共有ストレージを使用しているホストの生存を示すために、オンディスク・ハートビート・メカニズムを使用しています。

VMFS は、ファイルシステムを使用しているホストの生存を示すために、オンディスク・ハートビート (HB) メカニズムを使用しています。共有ストレージを使用するすべてのホストは、ATS を使用して、ディスク上の所定の領域にある自身の HB を更新し、自身が生存していることを示します。

VMFS ボリューム パーティション(実際のサイズとは異なります。)

上記の図を参照すると:

  •  VMFS ボリュームを使用するすべてのホストは、独自のハートビート・スロット(サイズは 1 セクタ)を持ち、上記の通り「ハートビート領域」でそれを更新します。
  •  とりわけ、各ハートビート・スロットに含まれる重要な情報は次のとおりです。
          * HB 状態(スロット不使用、スロットアクティブ使用中、スロットリプレイ中)
          * 世代(Generation)– 単調増加する数値。HB 状態が変更されると変化します。
          * タイムスタンプ(Timestamp)– 定期的なハートビート IO のたびに更新されます。
  • 特定のホストの HB ワークフローは、次の状態を経由します。
    1. HB スロットの取得 (Acquire HB Slot)** - ハートビート領域で、ホストによってハートビート用の HB スロット(サイズ 1 セクタ)が選択されます。
    2. 定期的な HB の更新 (Periodic HB update)** – これは主にホストが生存していることを示すために ATS を使用して行われます。HB スロットがかなりの時間(16 秒超)更新されない場合、ホストはダウンしたと見なされ、回復/再要求プロセスが開始されます。
    3. HB の回復/再要求 (HB Reclaim/Recovery)** – タイムアウト(16 秒)が経過した場合、または ATS の不一致が見られた場合、HB で回復が開始されます。回復の場合、デバイス上の未処理のすべてのコマンドを停止します。残りの回復プロセスは、HB スロットがどのように変化したかによって異なります。例:
      •  他のホストがこの HB スロットをクリアしたり使用したりしていない場合は、HB を再び正常に開始します。
      • 他のホストが HB をクリアし、HB 世代が 1 増加している場合は、HB を再び正常に開始します。
      • 他のホストがこの HB スロットをリプレイしている最中の場合は、リプレイが完了するのを待ちます。
    4. HB スロットのクリア (Clear HB Slot)** – ホストが終了するときに HB スロットをクリアします。

VMFSハートビートに関連するタイムアウト:

HB に関連する様々なタイムアウトは次のとおりです。

1.  定期的なハートビート間隔 (3 秒)– この間隔ごとに HB ATS が発行されます。
2.  HB IO タイムアウト (8 秒) – 定期的なハートビート更新のための ATS コマンドに関連するタイムアウト。
3.  HB リース・タイムアウト (16 秒) – 所有ホストの HB がこの期間更新されない場合、ディスク・ロックは古いと見なされます。

ATS とハートビート:

HB を更新するために、SCSI ATS という T10 コマンド(Opcode 0x89、比較および書き込み)を使用します。ATS はアトミックであり、使用規模を拡大できるため、お客様には HB に ATS を使用することを強く推奨します。ATS を使用しない場合の欠点は次のとおりです。

  • ATS なしでは、HB の更新は予約なしの単純な書き込みになります。
  • 遅延書き込みは、HB IO がタイムアウト(デバイス側で)より大幅に遅れて完了し、他のホストからの新しい HB 更新を上書きする可能性がある場合に問題を引き起こします。

ATS サポートについては、バックエンド・アレイがATS サポートをしているか確認してください。

VMFS ボリュームにおけるオンディスク・ロックとハートビート・スロットの関係:

以前に述べたように、VMFS は分散ファイルシステムであるため、複数の ESX ホスト間で共有ストレージへのアクセスを調停するためにオンディスク・ロックに依存しています。オンディスク・ロックのサイズは 1 セクタで、保護しているメタデータの直前に配置されます。オンディスク・ロックの主要な内容の一部は次のとおりです。

1.  ロック・タイプ – このロックが保護しているメタデータのタイプを識別します。
2.  ロック・モード – ロックが解放されているか、排他的/読み取り専用などのモードでロックされているかを識別します。
3.  ロック所有者 – 現在ロックを所有しているホストの UUID。
4.  HB アドレス – 所有者の HB スロットのアドレス。

ここで、オンディスク・ロックと VMSF ハートビートの関係を理解するための例を見てみましょう。

ホスト(例:ホスト A)が特定のロックを必要とし、そのロックが現在解放されておらず(ロック・モード・フィールドによる)、別のホスト(例:ホスト B、ロック所有者フィールドによる)によってロックされている場合、HB アドレス・フィールドにより、ホスト A はホスト B の HB スロットを一定期間監視し、ホスト B が生存しているかどうかを判断できます。

ホスト A がホスト B が生存していないと判断した場合(ホスト B の HB スロットが 16 秒間更新されていない)、ホスト A はホスト B の HB スロットを「クリア」し、必要としていたロックを解除して、自身の操作を進めることができます。

Additional Information

詳細についてはこちらをご覧ください。 Disabling hardware accelerated locking (ATS) in ESXi