最好等到使用PowerCLI重新启动后确保VM备份?

时间:2014-03-11 20:17:54

标签: powershell vmware virtualization powercli

我正在等待来宾操作系统拥有一个IP地址,但它在Windows完全重启之前(即在Windows登录并且所有启动服务都已运行之前)获得了一个IP地址。

do
{
    Start-Sleep -Seconds 5
    Write-Host "Waiting for VM reboot"
    $VMInfo = Get-VM $VMName
    $GuestIP = $VMInfo.Guest.IPAddress
}
until ($GuestIP -eq $IP)

有人知道等待更好的属性吗?

1 个答案:

答案 0 :(得分:2)

您可以使用wait-tools代替。实际上,当VC知道访客IP时,vmtools(以及其他大部分内容)都已经启动了。假设您的访客具有静态IP,那么您的方法似乎很好。如果您的客户从DHCP获取其IP,则IP总是有可能发生变化。在这种情况下,您可以确保$ guestIP不为空,而不是将其与预期值进行比较:

until ($GuestIP)

毋庸置疑,如果你需要一些特别的作品,最安全的是检查那件作品。如果检查需要额外的复杂性,可能会gwmi win32_serviceinvoke-vmscript