VMware ESXi 7.0のVMコピー(クローン)方法

VMware ESXiの既存VM(仮想マシン)をコピーして新しくVMを作成する際に、いつも手順を忘れてて苦労するのでメモしておきます。

事前準備

ESXiのWebUIの「管理」→「サービス」で「TSM-SSH」を起動しておく。

コピー元のVMを停止しておく。

既存のVMデータのコピーと設定変更

ESXiにSSH接続します。

備考

Teratermで接続する場合、「キーボードインタラクティブ認証を使う」を選択して認証する必要があります

コピー元のVMデータが格納されているデータストアへ移動する

# cd /vmfs/volumes/datastore1/

コピー先のディレクトリ(新しく作成するVMのデータ格納用ディレクトリ)を作成する

# mkdir testhost02

仮想ディスクをコピーする

ポイント

「XXXX.vmdk」はディスク記述子ファイルといって、flat.vmdkに関する情報(ポインタやディスク情報)が記載されています。 「XXXX-flat.vmdk」は仮想マシンの実際のハードディスクドライブの内容が保存されています

# cp -p testhost01/testhost01.vmdk testhost02/testhost02.vmdk
# cp -p testhost01/testhost01-flat.vmdk testhost02/testhost02-flat.vmdk

仮想マシン構成ファイルをコピーする

# cp -p testhost01/testhost01.vmx testhost02/testhost02.vmx

コピーできたことを確認する

# ls -l testhost02
total 52428800
-rw-------    1 root  root     53687091200 Oct 20 11:36 testhost02-flat.vmdk    
-rw-------    1 root  root    451 Oct 20 11:35 testhost02.vmdk
-rwxr-xr-x    1 root  root    3351 Oct 20 11:37 testhost02.vmx

仮想マシン構成ファイル(testhost02.vmx)の以下の箇所がコピー元の名前になっているので、コピー先の名前に変更する

# vi testhost02/testhost02.vmx

scsi0:0.fileName = "testhost02.vmdk"
displayName ="testhost02"
nvram = "testhost02.nvram"
sched.swap.derivedName = "/vmfs/volumes/62fa4fbb-18678ea4-9c6b-b8cb29dd0762/testhost02/testhost02-e823816f.vswap"
migrate.hostLog = "./testhost02-e823816f.hlog"

仮想ディスク(testhost02.vmdk)の以下の箇所がコピー元の名前になっているので、コピー先の名前に変更する

# vi testhost02/testhost02.vmdk

# Extent description
RW 104857600 VMFS "testhost02-flat.vmdk"

念のため変更漏れがないか確認する

cat testhost02/testhost02.vmx | grep testhost01
cat testhost02/testhost02.vmdk | grep testhost01

コピーしたVMデータから、仮想マシンを作成する

WebUIの「ストレージ」→「データストア ブラウザ」でコピー先の仮想マシン構成ファイル(testhost02.vmx)を右クリックし「仮想マシンの登録」を選択する

成功すれば新しく仮想マシンが登録される

新しく登録した仮想マシンを選択し、「パワーオン」をクリックする。

「この仮想マシンは移動またはコピーされている可能性があります~」と質問されるので、「コピーしました」を選択し回答すると、VMが起動する。

ポイント

「コピーしました」を選択すると、MACアドレスが自動的に変更されます

VM起動後、必要に応じてIPアドレスやホスト名等を変更する。

コメントを残す

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

CAPTCHA