VMware VMをあるESXiホストから別のESXiホストへ移行する6つの方法
環境内に複数の ESXi ホストがある場合、仮想マシンをあるホストから別のホストへ移行する必要が生じることがあります。その理由としては、リソースの効率的な活用や、いずれかのホストでの計算リソース不足などが考えられます。vCenter を使用する場合と使用しない場合の両方について、VMware vSphere で仮想マシンを移行するための利用可能な方法について解説します。
ここでは、 VMwareホームラボで設定された環境 前回のブログ記事で、VMの移行ワークフローを説明するために使用したものです:
ESXi01 - 192.168.101.101 (datastore10a, datastore40)ESXi02 - 192.168.101.102 (datastore40-2)vCenter8 - 192.168.101.103
vMotion を使用したホスト間の VMware 仮想マシンの移行
仮想マシンを別のESXiホストに移行する最も便利で効果的な方法は、vCenterとvMotion機能を使用することです。ESXiホストとして動作しているVMとvCenter VMの両方が正常に動作していることを確認してください。WebブラウザでVMware vSphere Clientを開き、vCenter Serverにアクセスします。
VMwareは、ホスト間およびデータストア間でVMの移行を行うためのvMotion機能を提供しています。 Storage vMotionは、仮想マシンをあるストレージから別のストレージへ移行する際に使用されます。vMotionを使用すると、仮想マシンが実行中の状態でも移行を行うことができます。この優れたエンタープライズレベルの機能は、ご自身のESXiホームラボで試すことができます。移行プロセス中にネストされたLinux仮想マシンにpingを送信し、ダウンタイムが発生していないことを確認してみてください。
最初のESXiホスト上で実行中の仮想マシンを右クリックします (ESXi01 – 192.168.101.101) そして、クリックして 移行する その中では アクション メニュー。

その 移行する ウィザードが開きます:
- 移行の種類を選択してください. このステップでは、次の3つのオプションから1つを選択できます:
- コンピューティングリソースのみを変更する. 仮想マシンが、複数のESXiホストに接続された共有データストア上に配置されている場合は、このオプションを選択してください。
- 保存先の変更のみ. 仮想マシンを、ある直接接続されたデータストアから別の直接接続されたデータストアへ移動させる場合は、このオプションを選択してください。この場合、両方の直接接続されたデータストアは、同じ ESXi ホストに接続されています。
- コンピューティングリソースとストレージの両方を変更する. 仮想マシンをあるホストから別のホストへ移行する場合は、このオプションを選択してください。これにより、両方のホストで異なるデータストアを使用できるようになります。
- vCenter Server間のエクスポート. 別のSSOドメインに所属するvCenter ServerへVMを移行する際に使用します。
3番目の選択肢は、現在のVMwareホームラボで再現されているケースに適しています。2台のESXiホストには、それぞれ40 GBのデータストアがあります。稼働中のVMは、一方のホストからもう一方のホストへ移行されます(
ESXi01>ESXi02) およびある 40 GB のデータストアから別のデータストアへ (datastore40>datastore40-2).
- コンピューティングリソースを選択してください. このオプションを使用すると、ESXiホストを指定できるほか、仮想マシンの実行に使用するCPUおよびメモリリソースを指定することもできます。[選択]
vCenter8 > Datacenter01 > 192.168.101.102(のIPアドレス)ESXi02(これは、このVMwareテスト環境における2番目のホストです)。
- ストレージを選択. この段階で、仮想マシンの移行先となるストレージを選択する必要があります。仮想ディスクの形式を選択します。ソースと同じ形式(この場合はシンプロビジョニング)を選択してください。データストアを選択します(
datastore40-2(この例では)。 - ネットワークを選択. 仮想マシンの移行先ネットワークを選択します。 VMネットワーク この例では、この目的のためにこれが選択されています。
- vMotionの優先順位を選択する. vMotion の優先度を"高"(推奨)または"通常"に設定できます。"高"に設定してください。
- 完了の準備が整いました. VMの移行パラメータを確認し、[実行]をクリックしてください 終了 移行を開始するには。
VMの移行処理が完了するまでお待ちください。その後、 最近のタスク VMware vSphere Client の Web インターフェース下部にあるバーで、タスクの進行状況を確認してください。VM 移行タスクが正常に完了すると、VM は 2 台目の ESXi ホスト上で実行が開始されます(下のスクリーンショットを参照)。

移行前にネットワークを確認し、VMware Tools をインストールするためにコンソールが開かれている Lubuntu VM デスクトップのプレビューが表示されています。仮想マシンの実行状態は保持されています。
vMotionを使わずにVMを別のホストに移動するには?
vCenter がインストールされていない場合や、VMware vSphere Essentials のライセンスで Storage vMotion の使用が許可されていない場合など、vMotion や Storage vMotion を使用できない状況があります。このような場合、vCenter を使用せずに、VM のコールド移行を行うことができます。
最初の ESXi ホストから Windows VM を移行してみましょう(ESXi01) から 2番目(ESXi02) 共有データストアを使用せずに。vCenter Server を使用せずに、ある ESXi ホストから別の ESXi ホストへ VM をコピーするには、以下の手順を実行してください:
- ソースVMが保存されているソースESXiホスト上で、VMware Host Clientにログインします(
ESXi01) ウェブブラウザを使用して。 - クリック ストレージ その中では ナビゲーター ペインで、VMファイルが保存されているデータストアをクリックし、 データストアブラウザ ボタン。
- 別のESXiホストへ移行したいVMのディレクトリを参照します(
Windows-VMondatastore10a(この例では)。 - ダウンロード .
vmdk, –flat.vmdkおよび 。vmxESXi01上のソースVMのファイル。を選択してください。vmdkデータストアブラウザでVMのファイルを選択し、[クリック]します ダウンロード. 保存 .vmdkそして –flat.vmdkファイル(仮想ディスク記述子および仮想ディスクの生データファイル)をコンピュータにダウンロードします。VMに複数の仮想ディスクがある場合は、他の仮想ディスクについてもこの操作を繰り返してください。同様に、.vmxVMの設定ファイル。注: 両方とも
.vmdkそして –flat.vmdkファイルは1つの.として表示されます。vmdkデータストアブラウザ内のファイル。SSHクライアントを使用してファイルを表示したり、WinSCPなどのSFTPクライアントを使用してESXiデータストアからVMファイルをダウンロードしたりすることも可能です。ダウンロードした –flat.vmdkファイルはシックプロビジョニング形式でダウンロードされます。仮想ディスクファイルを保存するための十分なディスク容量を確保してください。
- 仮想マシンを移行したい2台目(移行先)のESXiホストで、VMware Host Clientにログインします(
ESXi02(この例では)。 - クリック ストレージ その中では ナビゲーター ペインで、移行後にVMを配置するデータストアを選択します(
datastore40b) を選択し、データストアブラウザを開きます。 - クリック ディレクトリを作成する データストア・ブラウザのウィンドウで、VMディレクトリの名前を入力します。たとえば、
Windows-VM-copy, そしてクリックして ディレクトリを作成する 該当するウィンドウで。
- ディレクトリの作成が完了したら、[ ] をクリックします。 アップロード そして、. を選択します。
vmdk, –flat.vmdkおよび .vmxからダウンロードしたVMのファイルESXi01以前。ファイルがデータストアにアップロードされるまで待ってください。ESXi02.
- この場合、アップロードされた仮想ディスクは、シック仮想ディスク形式で保存されます。ストレージ容量を節約するために、仮想ディスクをシンプロビジョニング形式に変換するには、以下の手順に従ってください。
- 宛先の ESXi ホストに接続します (
ESXi02) をSSHクライアントで実行します。WindowsではPuTTYを使用し、次のようにログインできます。root. ESXiホストでは、SSHアクセスを有効にする必要があります。 - VMの移行先ディレクトリとして、ESXi02データストア上に作成したVMのディレクトリに移動してください。
cd /vmfs/volumes/datastore40b/Windows-VM-copy/ - 以下のコマンドを実行して、シックプロビジョニングされた仮想ディスクをシンプロビジョニングされた仮想ディスクに変換します:
vmkfstools -i sourcename.vmdk -d thin targetname.vmdk今回のケースでは、具体的なコマンドは次のとおりです:
vmkfstools -i Windows-VM.vmdk -d thin Windows-VM-thin.vmdk - 次のコマンドを使用して、元のシック仮想ディスクの名前を変更してください(変換後にすべてが正常に動作することを確認した後、このディスクを削除することができます)。
vmkfstools -E targetname.vmdk sourcename.vmdkこの例では、コマンドは次のとおりです:
vmkfstools -E Windows-VM.vmdk Windows-VM-thick.vmdk注: このコマンドは、仮想ディスク記述子と仮想ディスクデータファイルの両方の名前を変更します(.
vmdkそして –flat.vmdk). - 変換後に作成された新しいシンプロビジョニング仮想ディスクの名前を、元の仮想ディスクの名前と一致するように変更します:
vmkfstools -E Windows-VM-thin.vmdk Windows-VM.vmdk
- のデータストアブラウザで
ESXi02、コピーしたVMのディレクトリ(Windows-VM-copy)に移動し、VMの設定ファイルを選択してください。vmxファイル。 - を右クリックします。
vmxファイルを保存して、[実行]をクリック VMを登録する コンテキストメニューから、クローンしたVMを宛先のESXiホストに登録するには(ESXi02).
- 移行後に作成されたVMを起動します。
- すべてが正常に動作している場合は、仮想ディスクをシック形式からシン形式に変換した後に残っているシックプロビジョニングの仮想ディスクファイルを削除してください(
Windows-VM-thick-flat.vmdkおよびそれに対応する。vmdkファイル)。
変換後もディスク容量が縮小されなかった場合は、次の操作を行うことで空き領域を確保できます。 シンプロビジョニングされた仮想ディスクの使用.
共有ストレージを利用したVMwareの移行
この方法を使用してVMの移行を行う場合、移行に関与するすべてのESXiホストに共有ストレージが接続されている必要があります。
VMwareでの移行には、VMのコピー(クローン作成)とVMの移動という2つのシナリオがあります。
- 仮想マシンをコピーするには:
- 共有データストア上に新しいVMフォルダを作成します。
- ソースVMのファイルを、新しく作成したフォルダにコピーしてください。
- 共有データストアに接続されている宛先のESXiホストに、VMのコピーを登録します。
- 仮想マシンを移動するには:
- ソース(最初の)ESXiホストでVMの登録を解除します。
- 宛先(2台目)のESXiホストにVMを登録します。
VMテンプレートを手動でエクスポート/インポートしてVMを移動する方法
仮想マシンをテンプレートとしてエクスポートし、そのテンプレートをインポートして別のESXiホスト上に仮想マシンを作成することで、仮想マシンの移行やクローン作成を行うことができます。この方法により、コールド移行(電源がオフになっている仮想マシン)を実行することが可能です。テンプレートを使用すれば、vCenterを使用する場合でも使用しない場合でも、VMware仮想マシンを別のホストにコピーまたは移動することができます。
vCenterを使用しないテンプレートによるVMの移行
vCenter を使用せずに VM を別のホストに移行するには、以下の手順を実行してください:
- [移動] 仮想マシン その中では ナビゲーター ソースとなる ESXi ホスト上の VMware Host Client の(
ESXi01). - VMを右クリックして、[ エクスポート コンテキストメニュー内で。
- 選択したファイルを確認してください(. なしのデフォルトの選択を使用することもできます)。
nvram) をクリックして エクスポート.
- Webブラウザでファイルのダウンロードが完了するまで待ちます。この例では、エクスポートしたVMのファイルを3つダウンロードしました:
Windows-VM.mfWindows-VM.ovfWindows-VM-1.vmdk
- 宛先のESXiホストのVMware Host Clientで(
ESXi02)、次のページへ移動してください 仮想マシン in ナビゲーター そして、クリックして VMの作成/登録.
- 選択 OVFまたはOVAから仮想マシンをデプロイする の最初のステップにあるファイル 新しい仮想マシン ウィザード。クリック 次へ ウィザードの各ステップで、続行するには。
- 宛先のESXiホストで一意のVM名を入力してください。例えば、
Windows-VM-clone, そして を選択します。ovf(または .ova) および 。vmdk以前にOVFテンプレートとしてエクスポートされたファイル。
- ストレージを選択. 移行先のESXiホスト上で、移行するVMを保存するデータストアを選択します。
- デプロイメントオプションを定義する. VMの接続先ネットワーク、仮想ディスクのシンプロビジョニングまたはシックプロビジョニング、およびデプロイ後にVMを自動的に起動するかどうかを選択します。
- 完了の準備が整いました. 設定を確認して、[] をクリックしてください。 終了.
- テンプレートからVMがインポートされるまで待ちます. 次のようなメッセージが表示されるはずです:
VM_name successfully imported.
次のようなエラーが表示された場合は、 必要なディスクイメージが見つかりませんでした、そしてインポート処理が失敗した場合は、両方が .ovf および 。vmdk ファイルが選択されました。必要なファイルをすべて選択しても問題が解決しない場合は、以下の操作を試してみてください:
- . をコピーしてください。
vmdk. 拡張子でエクスポートされたファイルovfテンプレートを宛先のデータストアへESXi host. - ソースVMと同じ構成で新しいVMを作成し、VM作成ウィザードで既存の仮想ディスクを使用するように選択します。
- 手順 1 で宛先データストアにコピーされたエクスポート済み仮想ディスクを選択します。
vCenter でのテンプレートを使用した VM の移行
同様に、VMをOVFテンプレートとしてエクスポートし、VMware vSphere Clientを使用して、これらのテンプレートをvCenterに新しいVMとしてインポートすることもできます。
- 仮想マシンを右クリックし、[ ] をクリックします。 テンプレートのエクスポート OVF テンプレート コンテキストメニューで。
- テンプレート名を入力し、表示されたウィンドウで必要なオプションを選択してください。クリックして OK.
- テンプレートファイルをダウンロードしてください。

次に、OVFテンプレートを仮想マシンにデプロイして、仮想マシンを移行します。
- [ ] 内の目的の ESXi ホストを右クリックし、 ホストとクラスタ vSphere Clientの画面を表示し、[]をクリックします OVFテンプレートの展開.
- ウィザードを完了して、VMの移行を完了してください。

vSphere において、OVF テンプレートの代わりに、仮想マシンを VMware 仮想マシン テンプレートに変換する方法があります。使用方法の詳細については、以下をご覧ください。 VMware VMテンプレート.
VMware PowerCLI を使用して VM を別のホストに移行するにはどうすればよいですか?
In PowerCLI, 以下の Move-VM あるESXiホストから別のESXiホストへ仮想マシンを移行するためのコマンドレットです。その手順は以下の通りです:
- PowerCLI コンソールを起動するか、VMware PowerCLI モジュールが読み込まれた状態で PowerShell を起動します。
- vCenter Server またはソース ESXi ホストに、以下を使用して直接接続します。
Connect-VIServerコマンドレット。置換vCenter_or_ESXi_Host適切なサーバーアドレスを指定して:Connect-VIServer -Server-User -Password - Get-VM コマンドレットを使用して、移行したい仮想マシンに関する情報を取得します:
$vm = Get-VM -Name "VM_Name" - "宛先の ESXi ホスト"を選択します。仮想マシンを移動させる宛先の ESXi ホストを指定します。
$destinationHost = Get-VMHost -Name "Destination_ESXi_Host" - 仮想マシンを移動します。次のコマンドを使用します。
Move-VM移行を開始するためのコマンドレット。仮想マシンを指定します($vm) および宛先ホスト ($destinationHost).Move-VM -VM $vm -Destination $destinationHost - 以下の方法を使用してタスクのステータスを確認し、移行の進捗状況を監視してください。
Get-Taskコマンドレット。Get-Task | Where-Object {$_.Entity -eq $vm} | Sort-Object StartTime -Descending | Select-Object -First 1 - 必要がなくなったら、vCenter Server または ESXi ホストからの接続を解除してもかまいません。
Disconnect-VIServer -Server * -Confirm:$false
例
ESXiホスト間でVMを移行するためのPowerShellスクリプトとして使用できる完全な例を以下に示します:
# ソースとなる vCenter Server または ESXi ホストに接続する
Connect-VIServer -Server 192.168.101.103 -User administrator@vsphere.local -Password Your_Password111
# 仮想マシンに関する情報を取得する
$vm = Get-VM -Name "Windows-VM"
# 宛先のESXiホストを特定する
$destinationHost = Get-VMHost -Name "192.168.101.102"
# 仮想マシンを宛先ホストに移動する
Move-VM -VM $vm -Destination $destinationHost
# 移行の進捗状況を監視する
Get-Task | Where-Object {$_.Entity -eq $vm} | Sort-Object StartTime -Descending | Select-Object -First 1
# ソースとなる vCenter Server または ESXi ホストからの接続を切断する
Disconnect-VIServer -Server * -Confirm:$false
移行を実行するために必要な権限を持っていることを確認し、次のようなプレースホルダーを置き換えてください。 Source_vCenter_or_ESXi_Host, Username, Password, VM_Name そして Destination_ESXi_Host 上記のコマンド内の値を、実際の値に置き換えてください。お使いの環境や要件に合わせてスクリプトを調整してください。
VMware Converter を使用して仮想マシンを別のホストに移行する方法
VMware vCenter Converter Standalone は、物理マシン、他のハイパーバイザー上の仮想マシン、および VMware vSphere の旧バージョンの仮想マシンを、vSphere 環境で利用可能な仮想マシンに変換するためのツールです。このツールはライブマイグレーション専用に設計されたものではありませんが、コンバーターを使用することで、ESXi ホスト間で仮想マシンのコールドマイグレーションを実行することができます(マイグレーション中は、ソースとなる仮想マシンの電源をオフにする必要があります)。
VMware Converter を使用して仮想マシンをマイグレーションするには:
- 必要な部品をすべて用意してください:
- ダウンロード VMwareのウェブサイトから"VMware vCenter Converter Standalone"をダウンロードし、ソースおよび宛先のESXiホストの両方にアクセスできるマシンにインストールします。
- ソースと宛先の両方のESXiホストに対して、管理者権限を持っていることを確認してください。
- VMware Converter を実行しているマシンと、ソースおよび宛先の両方の ESXi ホストとの間で、ネットワーク接続が適切に確立されていることを確認してください。
- VMware Converterがインストールされているマシンで、VMware Converterアプリケーションを起動します。
- クリック 変換機.
- ソースの種類を選択してください. この場合は、[ ] を選択してください。 電源オフ そして VMware Infrastructure の仮想マシン 送信元として。送信元となる ESXi ホストの IP アドレスまたはホスト名を入力してください(例:
192.168.101.101) を入力し、接続に必要な認証情報を指定してください。
- ソースとなる仮想マシンを選択してください. ソースとなるESXiホスト上の利用可能なVMの一覧から、移行したい仮想マシンを選択します。
- 宛先タイプを選択してください. 選択 VMware Infrastructure の仮想マシン 宛先として指定します。宛先の ESXi ホストの IP アドレスまたはホスト名を入力します(例:
192.168.101.102)、および接続に必要な認証情報を指定してください。 - 宛先仮想マシンの設定. 宛先となるESXiホスト上の仮想マシンの名前と配置場所を指定します。
- 保存先を選択してください. 宛先のESXiホスト上のデータストアと、仮想マシンのハードウェアバージョンを選択します。宛先の仮想マシンに関するデータセンター、クラスター、リソースプール、データストアなどの追加オプションを確認・設定することができます。
- オプション. 必要に応じて、ディスクの種類、ネットワーク設定、カスタマイズオプションなどの変換オプションを設定します。
- 完了の準備が整いました. 選択内容の概要を確認し、[クリック] してください 終了 変換プロセスを開始するには。
- Converter Standalone のインターフェースで、変換の進捗状況を監視します. このツールは、ソースVMをシャットダウンし、そのディスクをコピーした後、宛先ホスト上に新しいVMを作成します。
- 変換が完了したら、宛先のESXiホスト上にVMが正常に作成されたことを確認してください。
使用方法の詳細については、以下をご覧ください。 VMware Converter.
VMを別のホストに移行する方法( NAKIVO Backup & Replication
VMデータ保護ソリューションとVMレプリケーションを使用することで、あるESXiホストから別のESXiホストへVMをコピーすることができます。 NAKIVO Backup & Replication このシナリオでは、仮想マシンの移行を行うことができます。VMレプリケーション機能を利用すれば、稼働中のVMであっても、この移行を効率的に行うことができます。
このVM移行方法は、以下の両方のケースで利用できます:
- ESXiホストはvCenterによって管理されます
- スタンドアロンの ESXi ホストは、vCenter によって管理されません
要件:
- すべてのスタンドアロンESXiホストは、NAKIVOに追加する必要があります。 在庫.
- ESXi ホストが vCenter によって管理されている場合、vCenter Server をインベントリに追加する必要があります。

仮想マシンを移行するには NAKIVO Backup & Replication, 以下の手順に従ってください。
- NAKIVOソリューションのWebインターフェースで、以下の場所に移動します。求人情報 + (新しい求人を追加) をクリックして VMware vSphere レプリケーションジョブ.

- その VMware vSphere 向けの新レプリケーション・ジョブ・ウィザード そのウィンドウが開いたら、ソースのESXiホスト上のソースVMを選択します。この例では、
Windows-VMonESXi01が選択されています。
- 宛先のESXiホスト、データストア、およびVMフォルダを選択します。

- VMのレプリケーションを完了する ウィザードの指示に従い、宛先でVMのレプリカが作成されるまで待ちます。
これで、稼働中のVMを別のホストに移行できました。以下の方法で増分レプリケーションを設定できます。 NAKIVO Backup & Replication また、本番環境のVMが利用できない場合に備えて、レプリカをVMのフェイルオーバーに利用します。 NAKIVO Backup & Replication これは、1回のソリューション導入と単一の管理画面から、バックアップ、災害復旧(DR)のオーケストレーションと自動化、リアルタイムレプリケーション、およびランサムウェアからの復旧機能を提供する、包括的なデータ保護ソリューションです。