我正在为 VMWare 使用 PowerCLI 模块,我需要关闭 4 台计算机(所以第 1 组关闭,确认它们全部关闭,第 2 组关闭,确认它们全部关闭,等等......)确认一组服务器已关闭,然后再继续下一组。
为了节省时间,我想向第一组中的所有服务器发送 VMGuest-Shutdown,然后返回并一次验证一个电源状态,然后再转到下一组服务器。
这是我所拥有的,但它似乎不起作用。我假设我可以在第一个命令集中的子例程中执行此操作,但我有点不知道该去哪里。
$gssservers | Where-Object {$_.Tier -match "App"} | Foreach-Object {
Shutdown-VMGuest -VM $_.Name -Confirm:$false
}
$gssservers.reset()
$gssservers | Where-Object {$_.Tier -match "App"} | Foreach-Object {
$counter = 0
while((Get-VM $_.Name).PowerState -ne "PoweredOff" -and $counter -lt $maxcounter){
sleep 5
$counter += $maxcounter
}
}
提前致谢!