PowerShell Friday: VM's stoppen
Gepubliceerd op 27 november 2015 • 2 min leestijd • 329 woorden
Als je je VM netjes wilt afsluiten, wat je volgens mij meestal zult doen, kun je beter Shutdown-VMGuest gebruiken. Hierbij worden de VMware-tools gebruikt om uw VM netjes af te sluiten. Net als bij het starten van VM’s heeft u de mogelijkheid om de VM op de opdrachtregel op te geven of uit de pijplijn te halen.
Met deze opdracht worden alle VM’s afgesloten, beginnend met een ‘A’
Shutdown-VMGuest -VM A*```## Controleren of de VM actief is
Als u VM's probeert te stoppen die niet actief zijn, krijgt u fouten en worden uw opdrachten niet voortgezet. Om te controleren of een VM actief is en deze vervolgens te stoppen, kunt u de status testen:Get-VMGuest -VM A* | Where-Object {$_.State -eq “Running”} | Shutdown-VMGuest```## Vraag geen toestemming, vraag om vergeving
Veel, zo niet alle, cmdlets in PowerCLI voldoen aan de -Confirm. Hiermee kunt u de cmdlet die u uitvoert vertellen of u toestemming wilt vragen, of gewoon de opdracht uitvoeren. De volledige regel hierboven zou er als volgt uitzien:
Get-VMGuest -VM A* | Where-Object {$_.State -eq "Running"} | Shutdown-VMGuest -Confirm:$FalseAls u het niet zeker weet, probeert u de parameter -WhatIf of denkt u nog even na voordat u de opdracht uitvoert. PowerCLI simuleert vervolgens wat er zou gebeuren als de cmdlet werd uitgevoerd, zonder daadwerkelijk iets te doen.
VM’s stoppen zonder VMware-tools
Als u geen VMware-tools op de VM uitvoert, kunt u de VM stoppen met de cmdlet Stop-VM
Stop-VM -VM MyVMHet stopt uw VM zonder iets op te slaan, dus wees er absoluut zeker van of u dit nodig heeft. Nogmaals, als u de parameter -Confirm gebruikt, wordt de VM gewoon gestopt zonder om toestemming te vragen.
Als dat de VM niet stopt, kun je altijd de kill-schakelaar gebruiken
Stop-VM -VM MyVM -KillAls dat niet hielp…
