前回は仮想マシン作成の自動化を紹介しました。
今回は仮想マシンのクローンを自動化する備忘録です。
クローン実行時にカスタマイズ仕様を指定してるので、例えば Windows ならそのまま Sysprep も実行出来ます。
スクリプト実行前に、VMwareのモジュールをインポートしておきます。
VMware.PowerCLI
https://www.powershellgallery.com/packages/VMware.PowerCLI/12.0.0.15947286
1.仮想マシンクローン用スクリプト
Windows と Linux は「クローン対象」と「カスタマイズ仕様」の指定の違いのみで、スクリプト自体に違いはありません。
Import-Module VMware.PowerCLI
Connect-VIServer -Server vcsa -User root -Password “Passw0rd!” -Force
Write-Host “VMName:” -NoNewLine
$vmname = Read-Host
New-VM -Name $vmname -VMHost ‘esx1’ -VM ‘TempServer’ -Datastore ‘datastore’ -OSCustomizationSpec ‘Customize’ -Location ‘Folder’
$vm = Get-VM $vmname
$vm | Start-VM
$vm | Open-VMConsoleWindow
Disconnect-VIServer -Confirm:$false
2.コマンドおよびオプションの説明
Import-Module VMware.PowerCLI
⇒PowerCLIモジュールをインポートします。
Connect-VIServer
⇒vCenter または ESXi に接続します。
オプション | 値 |
Server | 接続先の vCenter またはESXi |
User | ログインユーザー |
Password | ログインパスワード |
Force | 証明書エラーを無視する |
New-VM
⇒仮想マシンを作成します。
オプション | 値 |
Name | 仮想マシン名 |
VMHost | ESXiホスト |
VM | クローン対象の仮想マシン |
Datastore | クローン先データストア |
OSCustomizationSpec | カスタマイズ仕様 |
Location | クローン先のフォルダ ※vCenterを利用してる場合 |
Start-VM
⇒仮想マシンを起動します。
Open-VMConsoleWindow
⇒コンソールを起動します。
Disconnect-VIServer
⇒vCenter または ESXi から切断します。
VMware仮想マシンクローンの自動化については以上です。
コメント