2011-06-02 34 views
3

如何使以下腳本有效?目前,我可以在我的服務器中創建一個新的虛擬機。我也希望加載Windows ISO映像並在虛擬機中進行無人值守安裝。我應該如何編輯腳本才能完成這項工作?使用PowerCLI腳本從ISO映像引導

# Virtual Center Details 
$server_address = "xxxxx" 
$username = "xxxxx" 
$password = "xxxxx" 
$iso = "WINXP_X86_SP3_CD.ISO" 

Get-VIServer -Server $server_address -Protocol https -User $username -Password $password 

foreach ($vmm in $array) 
{ 
    $vmm = "VirtualMachine" 

    New-VM -name $vmm -DiskMB 20000 -memoryMB 2000 
    Get-VM $vmm | Get-CDDrive | Set-CDDrive -IsoPath $iso -StartConnected $true -Confirm:$false 
    $value = "5000" 
    $vm = Get-VM $vmname | Get-View 
    $vmConfigSpec = New-Object VMware.Vim.VirtualMachineConfigSpec 
    $vmConfigSpec.BootOptions = New-Object VMware.Vim.VirtualMachineBootOptions 
    $vmConfigSpec.BootOptions.BootDelay = $value 
    $vm.ReconfigVM_Task($vmConfigSpec) 

    Start-vm -vm $vmname 
} 
+0

嗯,這裏'$ array'從何而來?爲什麼'Get-VIServer'?你是不是指'Connect-VIServer'?你遇到了哪些問題? – 2011-06-02 20:28:34

+0

'ReconfigVM_Task'是什麼? – 2011-06-02 20:42:38

+0

@empo因爲powercli的版本,它是get-viserver。這些命令有輕微的變化。剩下的我只是複製並粘貼它。順便說一句,我的問題是ISO路徑圖像。當我使用powercli命令提示符運行腳本時,出現「無效的數據存儲格式」錯誤。 – user448402 2011-06-03 00:51:20

回答

3

我的問題是與ISO路徑圖像。我收到錯誤「無效的數據存儲格式」

您指定isopath使用IsoPath參數,這是數據存儲路徑的ISO,不是單純的ISO名稱。從您的代碼中,您不會指示任何數據存儲區。

的數據存儲路徑的語法是:

"[yourdatastore] IsoFolder\$iso" 

來自實例的PowerCLI參考網上有:

$cd = New-CDDrive -VM $vm -ISOPath "[sof-20666-esx:storage1] ISO\testISO.iso" 
Set-CDDrive -CD $cd -StartConnected -Connected 
+0

@empo你如何檢查-ISOPATH「[sof-20666-esx:storage1]我正在使用什麼數據存儲?我目前使用vSphere Client版本4.1.0和VMware ESXI版本4.1.0。我使用此連接連接到我的服務器 – user448402 2011-06-03 08:21:07

+0

你的ISO所在的位置? – 2011-06-03 08:24:23

+0

@empo謝謝,它設法讀取光盤和ISO映像,但是如何使用powercli腳本來激活設備狀態(在開機時連接和連接),然後只有操作系統將安裝 – user448402 2011-06-03 08:46:35