VMWare ESX 3.5 – Per Script alle VMs herunterfahren und/oder starten

Folgendes: Wenn man nen ESX updateded muss man ggf. alle VM herunterfahren und den ESX auch neustarten und dann wieder alle VMs starten.

Ich habe jetzt schon eine Zeit gesucht nach etwas fertigem hab aber nix gefunden, dabei bin ich über folgenden Befehl gestolpert:

vmware-vim-cmd vmsvc/power.shutdown „VMID“

Dieser Befehl fährt eine VM herunter, sofern die VMWare-Tools installiert sind.
Gut weiter, folgender Befehl gibt alle VMs auf den ESX aus mit der entsprechenden VMID:

vmware-vim-cmd vmsvc/getallvms

Leider gibt er hier ziemlich viel aus und da ich nicht so Script bewandert bin um die gesamte Ausgabe zu beschränken lasse ich einfach eine Schleife laufen bei der er alles ausprobiert. Ich bekomme zwar Meldungen zurück das es einige VMs nicht gibt, was klar ist, aber im Grunde tut das Script was es machen soll. Es fährt alle VMs herunter oder auch wieder hoch.

Hier das Script zum Shutdown:

#!/bin/bash
for vm in `vmware-vim-cmd vmsvc/getallvms`
do
vmware-vim-cmd vmsvc/power.shutdown „$vm“
done

So bald das Script den Inhalt mit der ID trifft, fährt er diese Maschine herunter.

Und hier noch das ganze um alle wieder einzuschalten:

#!/bin/bash
for vm in `vmware-vim-cmd vmsvc/getallvms`
do
vmware-vim-cmd vmsvc/power.on „$vm“
done

Wenn Ihr eine einfache Möglichkeit wisst das zubegrenzen, immer her damit. Danke schon mal vorab.

Übernehme keine Haftung für Fehler in Bezug auf diese Scripte.

Ein Gedanke zu „VMWare ESX 3.5 – Per Script alle VMs herunterfahren und/oder starten“

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.