あいしんくいっとオススメ商品レビュー

【VMware】ESXiでvMotionが出来ない、失敗する時に確認したい項目

この記事には広告を含む場合があります。

記事内で紹介する商品を購入することで、当サイトに売り上げの一部が還元されることがあります。

本記事対象者
vMotion出来なくてお困りの方

ども。あいしんくいっと(@ithinkitnet)です。

ithinkit

vMotionが出来ない。。

今回は「vMotionが出来ない時に確認したい項目」について書いておきたいと思います。
VMware製品の中でもESXiは扱う機会が多く、中でも無停止で仮想ホスト間を移動可能なvMotion機能は使う場面が多いですからねー。
vMotion移行画面
とは言え、vMotionを利用するにはvCenterが必要であり、無償版ESXiでは利用することが出来ないんですけどね。
とはいえ、VMware環境を扱う上でvMotionする機会は多いです。

ithinkit

無停止でESXiホスト移動出来るのはありがたい!

では「vMotion出来ないときに確認したい項目」について挙げていきます。

vMotionが出来ない時に確認したい項目

NW設定に問題がある場合

ESXiのネットワーク設定/構成に問題がある場合、vMotionに失敗するケースがあります。

  • ポートグループに設定されたネットワークラベルが異なる
  • IPアドレスやサブネットマスクの誤設定
  • vMotion機能が有効になっていない

特に「vMotionを使うにはESXi側で機能を有効」はチェックしておかないと使えません。
ネットワークの構成から有効にすることが出来るので確認してください。
移行画面 計算リソースの選択

MEMO

ESXiのvSwitch周りは同一設定・構成になっていることも確認してください。
(複数台ある場合はDSwitchの利用を検討したほうが良いかも)

CPU/メモリアフィニティが設定されている

特定のESXiホストのリソースを使用する設定である各種アフィニティが設定されていた場合、vMotionすることは出来ません。
仮想マシンのアフィニティ設定を見直してください。
計算リソースの選択 アフィニティ設定によるエラー

データストアが共有ディスクでない

仮想マシンが使っているデータストアが共有ディスクでは無い場合、当然ですがvMotion出来ません。対象の仮想マシンを共有ディスクに移動してください。

WebClientの場合だと、そもそも移動対象のESXiホストは表示されないんですけどね。。。
エラー及び警告画面

ESXi上のデバイスを仮想マシンが使用している

CD-ROM/DVDといったESXiホストが提供するドライブデバイスを利用している場合などはvMotionすることは出来ません。
中でも「VMwareToolsのインストールメディアがマウントされた状態だとvMotionに失敗する」ので注意が必要です。
(これはアリがちですw)
デバイスロックによるvMotionエラー
仮想マシンでデバイスを利用している場合はアンマウントしましょう。

ESXiホストのCPU世代/メーカーが異なる

IntelとAMDといったCPUメーカーが異なる場合はもちろん、同じIntel系であったとしても世代に差があり過ぎる場合はvMotionに失敗するようです。
CPU世代については「EVC(Enhanced vMotion Compatibility)」という機能を使うことで世代の異なるCPU間でもvMotion可能にすることが出来ます。
VMwareのサイトに情報があるのでそちらを参照してください。

参考 vMotion の CPU 互換性 – CPU の不一致による移行の阻止

仮想マシンのディレクトリに 2 つの VMX スワップ ファイルが存在

この問題は、仮想マシンのディレクトリに 2 つの VMX スワップ ファイルが存在すると発生します。ディレクトリには、1 つの標準 ESXi vswp ファイル(vmname.vswp)と vmx メモリ オーバーヘッドのための 1 つの VMX スワップ ファイル(vmx-vmname.vswp)が含まれている必要があります。

この問題を解決するには、Storage vMotion を実行できる場合は、仮想マシンを別のデータストアに移動して vMotion を再試行します。
Storage vMotion を実行できない場合は、エラーに報告されたディレクトリを調べます。VMX スワップ ファイルが 2 つ含まれている場合は、次の手順を実行します。
仮想マシンをパワー ダウンします。

注:仮想マシンがパワー ダウンしている場合、スワップ ファイルは存在しません。

ESXi ホスト上で、エラーにリストされた仮想マシンのディレクトリに移動します。
次のコマンドを実行して、スワップ ファイルが存在するかを確認します。

ls -lah

VMX スワップ ファイルが見つかったら、次のコマンドを実行してファイルをバックアップ ロケーションに移動します。

mv vmx-vmname.vswp /vmfs/volumes/backup_location

仮想マシンをパワーオンして、vMotion タスクを再試行します。

注:vMotion タスクが正常に完了した場合、バックアップの VMX スワップ ファイルを削除できます。

参考 vMotion が 14% の時点で失敗し、次のエラーが表示される


vMotionが出来ない原因で思いつくところを挙げてみましたが、他にももっとあるかも知れません。
vMotionはとっても便利な機能なのですが、ハマることも多い機能ですからね。

ithinkit

バシッとvMotionが成功すれば爽快なんですけどねー。

仮想マシンの再配置完了

vMotion出来ない時まとめ

最後にvMotion出来ない時に確認したい項目についてまとめておきます。

vMotion出来ない時に確認したい項目
  1. NW設定に問題がある場合
  2. CPU/メモリアフィニティが設定されている
  3. データストアが共有ディスクでない
  4. ESXi上のデバイスを仮想マシンが使用している
  5. ESXiホストのCPU世代/メーカーが異なる
  6. 仮想マシンのディレクトリに 2 つの VMX スワップ ファイルが存在

思いついたらまた挙げて行きたいと思います。

ithinkit

皆様のご参考になれば・・・。

以上、あいしんくいっとでした( ..)φメモメモ

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)