Wenn Python ausgeführt wird, können Sie das unten beschriebene Skript verwenden, um Ihren ESXi-Server zu aktivieren und herunterzufahren. Ich habe zu Hause einen Dell R810, den ich als Cisco VIRL-Server und andere Dinge verwende, aber ich schalte ihn nur ein, wenn ich ihn brauche. Es ist unten, also wollte ich einen Weg, wie ich es starten und von oben stoppen kann. Ich habe Wake On Lan auf der primären Netzwerkkarte auf dem Server aktiviert (STRG-S beim Booten und Aktivieren für Ihre primäre Netzwerkkarte). Stellen Sie in vSphere Ihre VMs so ein, dass sie mit dem Server gestartet und gestoppt werden, da dieses Skript Ihre VMs herunterfährt und den Server ausschaltet. Aktivieren Sie ssh für Ihren ESXi-Server, geben Sie den MAC der primären Netzwerkkarte ein und ändern Sie das Root-Passwort, die Server-IP und den Pfad zu Python unten.
python esxi.py -w Weckt den Server durch Senden des WOL-Magic-Pakets. python esxi.py -s fährt Ihre VMs herunter und schaltet Ihren Server aus.
Abhängigkeiten
Paramiko Wakeonlan Argparse
####################Start Script
#!/home/mikepartain/scripts/esxi/bin/python
from wakeonlan import wol
import time, argparse, paramiko
parser = argparse.ArgumentParser()
parser.add_argument('-w', action='store_true', dest='wakeup')
parser.add_argument('-s', action='store_true', dest='shutdown')
args = parser.parse_args()
if args.wakeup:
print 'Waking up ESXI Server'
wol.send_magic_packet('f0.4d.a2.aa.aa.aa')
if args.shutdown:
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect('192.168.178.10', username='root', password='#PASSWORD#')
stdin, stdout, stderr = ssh.exec_command('powerOffVms && halt')
print 'Shutting down ESXi Server'
ssh.close()
####################END Script
Wenn dies für Sie funktioniert oder Sie eine Möglichkeit haben, es zu verbessern, lassen Sie es mich bitte wissen!
Mike Partain