【发布时间】:2011-09-06 22:52:00
【问题描述】:
如何使以下脚本工作?目前我可以在我的服务器中创建一个新的虚拟机。我还希望加载 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
}
【问题讨论】:
-
嗯,
$array来自哪里?为什么Get-VIServer?你的意思是Connect-VIServer?您的脚本遇到了哪些问题? -
@empo 是的,由于 powercli 的版本,它是 get-viserver。命令有细微的变化。其余的我只是复制并粘贴它。顺便说一句,我的问题是 ISO PATH 映像。当我使用 powercli 命令提示符运行脚本时,我收到错误“无效的数据存储格式”。
标签: powershell virtualization vmware virtual-machine powercli