vSphere On-disk Metadata Analyzer (VOMA) を使用すると、メタデータの整合性を確認し、VMFS データストアまたは VMFS データストアをバッキングする論理ボリュームでメタデータ破損のインシデントを特定して修正することができます。
問題
VMFS データストアまたは仮想フラッシュ リソースで問題が発生した場合は、メタデータの整合性を確認できます。たとえば、次のいずれかの問題が発生した場合は、メタデータの確認を行います。
- ストレージが停止する。
- RAID を再構築した後またはディスク交換を行った後。
- vmkernel.log ファイルに、次のようなメタデータ エラーが記録されている。
cpu11:268057)WARNING: HBX: 599: Volume 50fd60a3-3aae1ae2-3347-0017a4770402 ("<Datastore_name>") may be damaged on disk. Corrupt heartbeat detected at offset 3305472: [HB state 0 offset 6052837899185946624 gen 15439450 stampUS 5 $
- VMFS 上のファイルにアクセスできない。
- vCenter Server のイベント タブに、データストアが破損したことが表示される。
解決方法
VOMA の機能 |
説明 |
---|---|
メタデータの確認および修正 |
メタデータの確認と修正の例には、次のものがあります(ただし、これらに限定されません)。
|
アフィニティ メタデータの確認および修正 |
VMFS6 のアフィニティ チェックを有効にするには、-a|--affinityChk オプションを使用します。 アフィニティ メタデータの確認と修正のいくつかの例を次に示します。
|
ディレクトリの検証 |
VOMA では、次のエラーを検出および修正できます。
破損の性質に基づき、VOMA は、破損したエントリのみを修正するか、ハッシュ ブロック、割り当てマップ ブロック、およびリンク ブロックの全体を再構築できます。 |
実体のないファイル |
VOMA は、ファイルシステム チェック時に、ファイルシステム内のどこからも参照されていないファイルを検出できます。これらの実体のないファイルは有効で欠落もありませんが、システム上では名前もディレクトリ エントリもありません。 VOMA は、スキャン中に実体のないファイルを検出すると、ボリュームのルートに lost+found という名前のディレクトリを作成し、そこに実体のないファイルを保存します。ファイルの名前では、Filesequence-number の形式が使用されます。 |
VOMA ツールで指定できるコマンド オプションを次に示します。
コマンド オプション |
説明 |
|
---|---|---|
-m|--module |
実行するモジュールには次のようなものがあります。 |
|
vmfs |
モジュールの名前を指定しない場合は、このオプションがデフォルトで使用されます。 VMFS ファイル システムと、仮想フラッシュ リソースをバッキングするファイル システムを確認することができます。このモジュールを指定すると、LVM の最小確認も同様に行われます。 |
|
lvm |
VMFS データストアをバッキングする論理ボリュームを確認します。 |
|
ptbl |
MBR、GPT などの VMFS パーティションを確認して検証します。パーティションが存在しない場合は、パーティションが必要かどうかを判断します。 |
|
-f|--func |
実行される機能には次のようなものがあります。 |
|
query |
モジュールでサポートされる機能をリストします。 |
|
check |
エラーの有無を確認します。 |
|
fix |
エラーを確認して修正します。 |
|
dump |
メタデータ ダンプを収集します。 |
|
-a|--affinityChk |
VMFS6 向けのアフィニティ関連の確認と修正を含めます。 |
|
-d|--device |
検査するデバイスまたはディスクを指定します。VMFS データストアをバッキングするデバイス パーティションへの絶対パスを指定します。データストアが複数のデバイスにまたがる場合は、ヘッド エクステントの UUID を指定します。 たとえば、voma -m vmfs -f check -d /vmfs/devices/disks/naa.xxxx:x。 -x|--extractDump コマンドを使用する場合は、パーティション修飾子を使用して、複数のデバイス パスをコンマで区切って入力します。入力するデバイス パスの数は、スパンされたデバイスの数と同じです。 |
|
-b|--blockSize |
ディスク ブロック サイズを指定します。 |
|
-s|--logfile |
結果を出力するログ ファイルへのパスを指定します。 |
|
-x|--extractDump |
VOMA を使用して、収集されたダンプを抽出します。 |
|
-D|--dumpfile |
収集したメタデータ ダンプを保存するダンプ ファイルを指定します。 |
|
-v|--version |
VOMA のバージョンを表示します。 |
|
-h|--help |
VOMA コマンドのヘルプ メッセージを表示します。 |
|
-Y |
アドレス解決に PE テーブルを使用せずに VOMA を実行していることを示します。 |
|
-Z| --file |
抽出されたデバイス ファイルで VOMA を実行していることを示します。 |
例
スパンされたボリュームからメタデータ ダンプを収集します。
voma -m vmfs -f dump -d head_extent -D dump_filename
収集されたダンプを抽出して、スパンされたボリュームのデバイスに戻します。
voma -x dump_filename -d head_extent,extent_2,extent_3...extent_n
VOMA を使用したメタデータ整合性の確認
ここでは、VOMA を使用して VMFS メタデータの整合性を確認する方法を示します。VOMA を使用して、VMFS データストアまたは仮想フラッシュ リソースの小さい不整合問題を確認し、修正します。ESXi ホストの CLI から VOMA を実行します。