使用PowerCLI脚本从ISO映像引导

时间:2011-06-02 09:38:19

标签: powershell virtualization vmware virtual-machine powercli

如何使以下脚本有效?目前,我可以在我的服务器中创建一个新的虚拟机。我还希望加载Windows 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
}

1 个答案:

答案 0 :(得分:3)

  

我的问题是ISO PATH图像。我收到错误“无效的数据存储格式”

您正在使用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