稼働中の仮想マシンをあるESXiホストから別のESXiホストへ移動させることをvMotionといいます。
vMotion処理中は、仮想マシンは停止させずに、移動させることができます。
例えば、ある仮想マシンが稼働しているESXiホストで、CPUやメモリのリソースが不足している、もしくはメンテナンスのため現在稼働中のESXiホストを停止したい などの場合、別のESXiホストへ仮想マシンを移動させることができます。
vMotionの前提構成
現在、ESXiホスト1に仮想マシン(VM)が稼働しており、ESXiホスト2へVMをvMotionします。
この場合、ネットワークやストレージは下記構成が前提となります。
-
ESXiホスト1、2ともにvCenterで管理されている
-
仮想マシンの実態である仮想ディスク(VMDKファイルなど)は、外部共有ストレージのデータストアに保存されている。つまり、ESXいホスト1、2ともに、データストアの仮想ディスクに接続できないといけません。
-
ESXiホストには、それぞれ仮想スイッチが構成されていて、VMKernel(vMotion用)の通信がESXiホスト間を外部の上位スイッチ(物理スイッチ)経由で接続できる。
-
ESXiホスト1と2の仮想スイッチはそれぞれ同じVLAN(ポートグループ)が設定されている(移行後のVMは、移行前のIPアドレスを引き継ぎます)
仮想ネットワークやデータストアについては、下記の記事を参考にしてください。
【VMWare ESXi】図解 ハイパーバイザの概要
VMWare ESXiを導入するうえでの仮想マシンやハイパーバイザの概要について、記事にします。仮想マシンを使用しない通常の物理サーバ構成では、基本的にCPU・メモリ、ディスクの物理リソースを1つのOSがすべて占有します。1つのOSで占有し...
>> 参考記事 : 図解 仮想ネットワーク・仮想スイッチの概要
【VMWare ESXi】図解 仮想ネットワーク・仮想スイッチの概要
VMWareの仮想ネットワークの概念と、仮想マシンは実際にどのようにしてネットワークトラフィックの送受信を行うのかを記事にします。仮想ネットワークインタフェース(vNIC)仮想マシンには、ネットワークに接続された物理マシンと同様に、ネットワ...
>> 参考記事 : 図解 仮想ストレージ(仮想ディスク、データストア)の概要
【VMWare ESXi】図解 仮想ストレージ(仮想ディスク、データストア)の概要
この記事では、VMWareから見たストレージの仮想化について、実際のストレージをどのように仮想マシンに提供するのかを概念的に説明します。物理ハードディスクの集約複数の物理的なハードディスク(HDD)をRAIDを使用して、1つのディスクに見せ...
vMotionの動作概要
vMotion実行時は内部的に下記のような動作をしています。
VM(リソース)のコピー
稼働中のVMをVMKernelから外部スイッチ経由で移行先ホスト(ESXiホスト2)へコピーします。
稼働中の VMは、ESXiホストのリソース(メモリ)を使用していますので、そのメモリ内容を含めて、コピーします。
コピー処理中にメモリ差分収集
ただし、コピーをしている最中にも、稼働中のVMはメモリを更新しています。そこで、コピー処理中に発生するメモリの更新内容をメモリビットマップとして保存します。
移行元VMの停止
初回のコピーが完了すると、移行元であるESXiホスト1上のVMを停止します。
メモリ差分(ビットマップ)のコピー
VM停止後、メモリビットマップを移行先ホストへコピーします。
移行先ホストのVMが稼働
移行先のVMがネットワーク、データストアそれぞれに接続し、稼働します。これで、vMotionが完了します。ダウンタイムはほぼない状態で、VMは移動されます。
vMotionの移行要件
移行元、先のESXiホスト間の構成で、互換性がないと、vMotionが失敗する場合があります。
移行の互換性に関するエラーについては、下記をご確認ください。
https://kb.vmware.com/s/article/1003684?lang=en_us
下記は、よくある互換性の問題です。
CPUの互換性
ESXiホスト間のCPUで互換性が必要です。例えば、IntelのCPUからAMDのCPUへvMotionはできません。
互換性の情報は下記をご確認ください。
>> 参考記事 : CPU Compatibility and EVC
CPU Compatibility and EVC
vCenter Server performs compatibility checks before it allows migration of running or suspended virtual machines to ensu...
移行元ホストでローカルデバイスを参照
移行元ホストがローカルファイルやデバイスを参照している場合、移行先ホストでは、そのファイルやデバイスは参照できないため、vMotionが失敗します。
例えば、移行元ホストのローカルにあるISOファイルを紐づけている仮想マシンをvMotionすると、移行先ホストでISOファイルが参照できず、vMotionが失敗します。
コメント