仮想化を行う最大のメリットはOSを簡単にプロビジョニングできるという点です。ここでは新規に作成したゲストOSをクローンする方法をご紹介いたします。
まずESXiにSSHにてログインできるようvSphere Clientより設定変更を行います。「構成タブ」-「ソフトウェアのセキュリティプロファイル」-「サービスのプロパティ」をクリックします。
起動ポリシーをホストに連動して開始および停止を選択しサービスコマンドで開始をクリックしOKを押します。
以上でSSHサービスがスタートします。ただし、この際にサマリでワーニングが表示されるようになります。
この表示がうざったいので構成タブのソフトウェア-詳細設定から UseVars.SuppressShellWarningの値を0から1に変更します。
■ゲストOSのバックアップ
ここからは実際にESXiにSSHログインして作業を行います。まず、バックアップを取得するゲストOSのVMIDを確認しておきます。
# vim-cmd vmsvc/getallvms |
上記のコマンドを実行すると仮想マシン一覧が表示され、VMIDが合わせて表示されます。このVMIDはスナップショットを作成するときに必要となります。次に構成ファイルを仮想ディスクに先立ってバックアップしておきます。
# cd /vmfs/volumes/nfsstore2/CentOS1/ # cp CentOS1.vmx CentOS1.vmxf CentOS1.vmsd /vmfs/volumes/nfsstore3 |
仮想マシンのスナップショットを作成します。
# vim-cmd vmsvc/snapshot.create [VMID] snap1 |
上記snap1というスナップショットを作成しています。次に仮想ディスクのバックアップを行います。これは数十分の時間がかかります。
# vmkfstools -i /vmfs/volumes/nfsstore2/CentOS1/CentOS1.vmdk \ /vmfs/volumes/nfsstore3/CentOS1.vmdk |
最後に作成したスナップショットを削除します。
# vim-cmd vmsvc/snapshot.removeall [VMID] |
これはバックアップだけではなくクローンとしても利用可能です。あとはvmx/vmxfファイルの中で仮想ディスクファイルに関する記述を今回行った名前に変更する必要があります。
# cd /vmfs/volumes/nfsstore3 # mv CentOS1.vmx CentOS2.vmx # mv CentOS1.vmxf CentOS2.vmxf # mv CentOS1.vmsd CentOS2.vmsd # vi CentOS2.vmx [ CentOS1をCentOS2に書き換え ] # vi CentOS2.vmxf [ CentOS1をCentOS2に書き換え ] |
変更後はvSphere Clientでインベントリ登録を行えば仮想マシンとして使用できます。