PowerCLI Alle VMs herunterfahren
Aus znilwiki
Changelog:
- 30.10.2019 erste Version
Vorwort
Kurzes PowerShell-Skript welches alle VMs eines vCenters herunterfährt - das vCenter selbst zuletzt.
Wird als USV-Skript genutzt (per Batch aufgerufen)
Quellcode PowerShell
# Name des vCenters (gleichzeitig Name der vCenter-VM)
$vcName = 'vcenter'
# Extra Benutzer im vCenter eingerichtet
$vcUser = 'usv@vsphere.local'
$vcPassword = '########'
# Mit vCenter verbinden
Connect-VIServer -Server $vcName -User $vcUser -Password $vcPassword
# Die VM des vCenters finden
$vcVM = Get-VM -Name $vcName
#Write-Host "vCenter: $vcVM"
Write-Host
#Get-VM -Server $vcName | where{$_.Name -ne $vcName} | Shutdown-VMGuest -Confirm:$false
$VMs = Get-VM -Server $vcName | where{$_.Name -ne $vcName}
foreach ($VM in $VMs ) {
If ($VM.PowerState -ne 'PoweredOff') {
Write-Host "Shutdown VM .......: $VM"
Shutdown-VMGuest -VM $VM -Confirm:$false
}
Else
{
Write-Host "Already Powered Off: $VM.Name"
}
}
sleep 60
Shutdown-VMGuest -VM $vcVM -Confirm:$false
Disconnect-VIServer -Confirm:$false
Quellcode Batch
PowerShell.exe -Command "& 'C:\Skripte\Shutdown_All_VMs.ps1'"
exit
Quellen
Kommentare
Loading comments...