VMwareのエラーの修正:「仮想マシンのディスクの統合が必要です」
“VMware 仮想マシンのディスク統合が必要です”というエラーは、通常、スナップショットがメインの仮想ディスクと正しく統合できなかった場合に表示されます。この問題は、バックアップが不完全だった場合、スナップショットの削除がキャンセルされた場合、またはストレージ容量が不足している場合に頻繁に発生します。この問題を放置すると、仮想マシンの動作が遅くなったり、データが破損するリスクさえ生じたりする可能性があります。このブログ記事を読んで、仮想マシンの”統合が必要です”というステータスが表示される原因と、それを安全に解決する方法について学びましょう。
VMwareのディスク統合とは何ですか?
仮想ディスクの統合とは、VMのスナップショット作成後に生成された仮想ディスクファイルを統合するプロセスです。パフォーマンスの低下やその他の問題を回避するために、必要に応じてディスクの統合を実行できます。スナップショットを取得すると、デルタディスクが作成され、変更内容は適切なデルタディスクに書き込まれます(仮想マシンを復元するために以前のスナップショットのいずれかが選択されるまでは、デフォルトで最新のデルタディスクに書き込まれます)。その結果、各デルタディスクには前のデルタディスクの状態と比較して行われたすべての変更が含まれており、親ディスクは変更されないため、仮想マシンのストレージには冗長なデータが存在することになります。
スナップショットの連鎖や関連する仮想ディスクファイルのサイズが大きくなると、パフォーマンスが低下します。VMwareのディスク統合を実行すると、デルタディスクのデータが1つのディスクに統合され、このVMのファイルが格納されているデータストアには冗長なデータが残りません。仮想マシンのディスクファイルを統合すると、ストレージ領域が整理されます。なお、VMwareでは、1台のVMにつき32個以下のスナップショットを使用することを推奨しています。
VMwareのディスク統合エラーが発生する考えられる原因
その VMwareの仮想マシンディスクの統合が必要です VMにエラーメッセージが表示される 概要 のタブ VMware vSphere Client (下のスクリーンショット参照)。このエラーメッセージが表示される一般的な原因の一つは、VMのスナップショットを誤って削除したことです。これにより、スナップショットに関連するVMDKファイルやログファイルがデータストアに残ってしまうことがあります(例えば、以下の操作を実行した後など)。 Delete All または Delete (VMスナップショットの操作)。

その最も一般的な原因は、 仮想マシンの統合が必要 ステータス:
- VMFSデータストアのディスク容量が不足しているため、VMスナップショットの統合および仮想ディスクファイルの統合を行うことができません。データストアの空き容量が1 GB未満の場合、このエラーが発生する可能性があります。
- 仮想マシンが実行されているESXiホストに接続されたストレージシステムのパフォーマンスが低い。スナップショットのサイズが大きい場合やタイムアウトが発生した場合、スナップショットの統合に失敗する可能性があります。
- ESXiホストとvCenter間の接続に関する問題。
- スナップショットファイルは、サードパーティ製アプリケーション(バックアップアプリケーションなど)によってロックされています。これは、バックアップアプリケーションがバックアップジョブを完了せずにスナップショットをロックしてしまった場合に発生する可能性があります(バックアップアプリケーションは、バックアップの実行中に仮想マシンの一時的なスナップショットを作成することがあります)。バックアップアプリケーションは、スナップショット技術を使用して稼働中の仮想マシンの一貫性のあるバックアップを作成しない限り、ディスクをクワイエット状態にすることができません。
基本的には、VMディスクファイルの一貫性を復元する必要があります。
VMwareのディスク統合エラーを修正するには?
この問題を解決するには、 仮想マシンの統合が必要 ステータスを確認するには、VMware vSphere Client で VM 名の上で右クリックし、表示されるメニューから [ Snapshots > Consolidate.

確認メッセージが表示されます:
この操作により、仮想マシン上のすべての冗長なリドゥログが統合されます。本当に続行しますか?
クリック Yes 仮想マシンのディスクファイルを確認し、統合します。
Note: VMwareのディスク統合中に一部のデータが失われる可能性がある場合は、 VMware 仮想マシンのバックアップ すべてのVMファイルをデータストア上の別のフォルダにコピーしてから、VMwareのディスク統合を実行します。
VMwareのディスク統合が完了し、ログが消去されるまでお待ちください。VMware vSphere Client インターフェースの下部にあるタスクパネルで、タスクの進行状況を確認できます。VMが実行中の場合、この操作中にVMのパフォーマンスが低下する可能性があります。この操作が完了するまでの所要時間は、VMのサイズ、スナップショットの数、およびVMの負荷によって異なります。
VMwareのディスク統合タスクが完了すると、警告は表示されなくなるはずです。
その他に発生しうるエラー
VMwareのディスク統合中に、別のエラーが発生することがあり、次のようなエラーメッセージが表示される場合があります:
ファイルがロックされているため、アクセスできません。ディスクの統合中にエラーが発生しました:ファイルのロックに失敗しました。ディスクノード”scsi0:0″の統合に失敗しました。.
また、バックアップアプリケーションがスナップショットを利用するバックアップにおいて”ホットアドディスク”オプションを使用する場合にも、ロックが設定されることがあります。VMファイルのロックは、複数のESXiホストによるファイルへの同時書き込みを防ぐことを目的としています。
このエラーを修正するには、以下の手順を試してみてください:
- 仮想マシンが配置されているESXiサーバー上で、管理エージェントを再起動します。開く ESXiシェル または、SSH 経由で ESXi ホストに接続し、root 権限で次のコマンドを実行します:
services.sh restartまたは
/etc/init.d/hostd restart/etc/init.d/vpxa restartまた、ESXiのダイレクトコンソールを開き、次の場所へ移動することもできます。
Troubleshooting Optionsそして、[選択] をクリックしますRestart Management Agents(クリックEnter必要なオプションを有効にしてから、F11(確認のため)。 - 次のコマンドでロックされているファイルを確認してください:
vmfsfilelockinfo -p /vmfs/volumes/vm_datastore/vm_name/vm_name.vmx - VM ファイルがデータストア内のどのパスにあるかを確認する必要がある場合は、hostd のログファイルを確認してください。
cat /var/log/hostd.log |grep -i vm_name - VM ファイルの保存場所がわかったら、データストア上の VM ディレクトリに移動します:
cd /vmfs/volumes/datastore_name/vm_name - VMファイルをロックしているESXiホストを一覧表示するコマンドを実行します:
for i in `ls`; do vmfsfilelockinfo -p $i ;done|grep 'is locked in|Host owning the lock|Total time taken' | sed 's|Host owning the lock on file is||g'|sed 's|Total time|---|g' | awk '{print $1}' |uniq - 以下のESXi管理エージェントを再起動します。
hostdそしてvpxa前述の通り、またはVMファイルをロックしているESXiホスト上で以下のコマンドを実行してください:/etc/init.d/hostd restart/etc/init.d/vpxa restart
VMファイルのロックを解除する別の方法
別の方法として、以下の手順を試して問題を解決してみてください。 ディスクの統合中にエラーが発生しました:ファイルのロックに失敗しました。
- 仮想マシンをシャットダウンしてください。
- 新しいVMディスクのスナップショットを作成します。
- 既存のVMスナップショットをすべて削除します。vSphere ClientでVM名を右クリックし、[
Snapshotsそして、クリックしてDelete All Snapshots.
- 以下の手順で、VMをクローンするか、別のESXiホストへ移行します。 vMotion エラーがまだ修正されていない場合は。
- 前述の手順に従って、スナップショットをもう一度統合してみてください。
これらの操作でも問題が解決しない場合は、VMをシャットダウンし、 VM settings, を選択して VM options タブをクリックし、次に Advanced セクションを選択し、クリックして Edit Configuration. その中で 設定パラメータ ウィンドウで、クリック Add Configuration Params. を追加して、 asyncConsolidate.forceSync パラメータを、このパラメータを TRUE.
時には、 仮想マシンの統合が必要 この状態は、一貫性の欠如によって引き起こされる可能性があります -ctk.vmdk 〜のために作成されるファイル ブロックの追跡方法を変更しました (おそらくVMバックアップソフトウェアによるものと思われます)。CTKファイルはスナップショットの統合には必要ないため、削除してみてください。CTKファイルを削除する前に、VMファイルのバックアップを忘れないでください。その後、仮想マシンのディスクファイルの統合を再度試みてください。

“統合”オプションは使用不可です
VMwareが スナップショットの統合 オプションがグレー表示(無効)になっている場合、そのVM上でアクティブなタスクが実行されている可能性があります。もし 無効なスナップショット設定が検出されました エラーが発生した場合、一部のスナップショットが破損しているか、スナップショットのチェーンが分岐している可能性があります。その場合は、以下の操作を試してください:
- SSH 経由で ESXi サーバーに接続し、データストア上の仮想マシンファイルが格納されているディレクトリに移動します。
cd vmfs/volumes/DatastoreName/VMFolderNameVMware vSphere Client で VM ファイルの保存場所を確認し、VM の設定を表示することで、仮想ディスクの保存場所を確認できます。
- どのディスクスナップショットが参照されているかを確認します:
cat VM-name.vmx | grep scsi*出力内容を参照して、仮想ディスクファイル(仮想ディスクのスナップショットファイルを含む)を確認してください。たとえば、次の行には仮想ディスクファイルの名前が表示されています。これはスナップショットではありません:
scsi 0:0.fileName = “VM-Name.vmdk”
出力行には、仮想ディスクのスナップショットファイル名が表示され、そのスナップショットが指定されています:
scsi 0:0.fileName = “VM-Name-000002.vmdk”
この例のVM構成では、SCSI仮想ディスクコントローラが使用されています。
- 次のコマンドは、各スナップショットが何を指しているかを確認します。このコマンドを使用して、スナップショットチェーン内のどのスナップショットが、以下のディスクファイル(スナップショットの vmdk ファイルまたはベースディスクの vmdk ファイル)を指しているかを特定します。
cat VM-Name-000002.vmdk | grep parentFileNameHint他の VMDK ファイル(例えば VM-Name-000001.vmdk (この例では)必要なベースディスクが見つかるまで操作を繰り返します。この方法により、不整合箇所を特定することができます。
- もし不整合を見つけた場合は、例えば、 VM-Name-000002.vmdk は…を指しています VM-Name-000001.vmdk, これはさらに VM-Name.vmdk を指しているため、次のコマンドを実行します。
vmkfstoolsディスクスナップショットチェーンの最上位にあるポイント(VM-Name-000002.vmdk (この場合は):vmkfstools -q -v10 VM-Name-000002.vmdkこのコマンドは、チェーン内のすべての VMDK ファイルを開いて閉じようとし、失敗が発生した箇所を通知します。
PowerCLI の使用
VMware vSphere Client のグラフィカルユーザーインターフェースで VMware ディスクの統合を実行する代わりに、vSphere を使用することもできます。 PowerCLI コマンドラインインターフェースを使用して。
- ESXiホストを管理しているvCenter Serverに接続し、そのホスト上に 仮想マシンの統合が必要 ステータス。プロンプトが表示されたら、認証情報を入力してください。
Connect-VIServer vcenter01.test.com - 以下の条件に一致するVMの一覧を取得するには、 仮想マシンの統合が必要 ステータス:
Get-VM | Where-Object {$ _. Extensiondata.Runtime.ConsolidationNeeded} - VMwareのディスク統合を実行します。
Get-VM | Where-Object {$ . Extensiondata.Runtime.ConsolidationNeeded} | foreach {$ . ExtensionData.ConsolidateVMDisks_Task ()}
その他の推奨事項
VMware vSphere 7.0 では、ホストを再起動した際に CBT サービスの起動に失敗するという問題が発生する場合があります。その場合、毎回手動でサービスを起動する必要があるかもしれません。ただし、この問題は vSphere 7 U3 で修正されました。vSphere 7.0 をご利用の場合は、以下の回避策を試してみてください:
- CBTモジュールが有効になっているか確認してください:
esxcli system module list --enabled=true | grep cbt - ESXiホストにCBTモジュールが読み込まれているかどうかを確認します:
esxcli system module list --loaded=true | grep cbt - CBTモジュールを手動で読み込むには:
vmkload_mod cbt
バックアップアプリケーションがVMファイルにロックをかけている場合は、 vpx ESXiホスト上のプロセスを終了させて、ロックの解除を試みてください。また、VMバックアップアプリケーションから仮想ディスクを切り離すことも試してみてください。
VMの移行を行う代わりに、VMをシャットダウンしてESXiホストを再起動することもできます。その後、ホストをメンテナンスモードから解除してロックを解除し、問題を解決してください。
結論
その 仮想マシンの統合が必要 “status”エラーは、VMware環境においてよく発生する問題ですが、適切に対処すれば管理可能です。エラーの原因を理解し、適切なスナップショットおよびバックアップの手法を実践することで、健全かつ効率的な仮想インフラストラクチャを維持することができます。再発を防ぐため、スナップショットの削除後は必ず確認を行い、利用可能なストレージ容量を常に監視してください。定期的なメンテナンスと積極的な監視を行うことで、VMの円滑なパフォーマンスと信頼性の高いデータ保護を確保できます。