vmwarecmd.gif

De onderstaande code zorgt ervoor dat mijn Citrix Lab omgeving netjes afgesloten wordt. Het is eigenlijk een lijstje van VMs die een voor een worden afgeslote. Zoals je ziet zit er een pauze van 120 seconden tussen elke VM. Deze pauze zorgt ervoor dat de ESX server niet in eenkeer overbelast raakt en dat de Citrix Farm de tijd krijgt om alles te verwerken.

clear
echo#####################################
echo## ICTFreak.nl
echo## Shutdown script Citrix Lab
echo#####################################

#!/bin/bash

echo Stopping the Citrix testlab

echo Stopping the CTXLAB-WI
vmware-cmd /vmfs/volumes/lunc/CTXLAB-WI/CTXLAB-WI.vmx stop
sleep 120

echo Stopping the CTXLAB-MPS2
vmware-cmd /vmfs/volumes/lunc/CTXLAB-MPS2/CTXLAB-MPS2.vmx stop
sleep 120

echo Stopping the CTXLAB-MPS1
vmware-cmd /vmfs/volumes/lunc/CTXLAB-MPS1/CTXLAB-MPS1.vmx stop
sleep 120

echo Stopping the CTXLAB-SQL
vmware-cmd /vmfs/volumes/lunc/CTXLAB-SQL/CTXLAB-SQL.vmx stop
sleep 120

echo Stopping the CTXLAB-FILE
vmware-cmd /vmfs/volumes/lunc/CTXLAB-FILE/CTXLAB-FILE.vmx stop
sleep 120

echo Stopping the CTXLAB-DC
vmware-cmd /vmfs/volumes/lunc/CTXLAB-DC/CTXLAB-DC.vmx stop
sleep 120

echo Stopping the CTXLAB-ROUTER
vmware-cmd /vmfs/volumes/lunb/CTXLAB-ROUTER/CTXLAB-ROUTER.vmx stop hard

Vervang de “stop” waarde voor “start” (zonder het ” teken) en je hebt een startup script. Als je dit script wilt gebruiken dan kopieer je de code naar kladblok en slaat het bestand op als scriptnaam.sh. Vervolgens dien je het script op de ESX server te plaatsen. Dit kun je doen met het gratis programma WinSCP. Nadat je het script geplaatst hebt moet je nog even de rechten aanpassen.

Dit doe je met het volgende commmando:

chmod 0755 script.sh

Vervolgens kun je het script uitvoeren met het commando

sh scriptnaam.sh

3 thoughts on “VMware-Cmd: VM Shutdown Script

  1. Ik heb het script iets anders gemaakt, wij gebruiken meerdere esx machines en dmv van vmotion weet je eigenlijk nooit waar welke machine draait en soms moet de hele omgeving toch even down.

    vmware-cmd -l |
    while read power
    do vmware-cmd $power stop trysoft
    done

    Dit script ‘kijkt’ welke machines er geregistreerd staan op de esx host en zet deze vervolgens uit, staat een machine al uit komt er een melding, dit kan je afvangen door eerst de status te controleren en dan pas een shutdown te geven.

    Wil je dit uitvoeren direct vanaf de commandline,

    vmware-cmd -l | while read power; do vmware-cmd $power stop; done

    En om dit op meerdere esx servers tegelijk uit te voeren kun je de ITQ Infrastructure client gebruiken, te downloaden van http://www.run-virtual.com/?page_id=160

  2. Volgens mij staat er in de C:\Program Files\VMware\VMware GSX Server een vmware-cmd.exe. Hiermee kun je ook het shutdown en powerup commando geven.

Leave a reply to afokkema Cancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.