Beschreibung:
In diesem Artikel wird erklärt, wie das PowerShell Skript „Reboot-VMsAndHV-SU.ps1“ zu verwenden ist.
Das Skript kannst Du Dir aus unserem Github Repo hier herunterladen:
ScriptCollection/Smart Updates/Reboot-VMsAndHV-SU.ps1 at main · Server-Eye/ScriptCollection · GitHub
Das PowerShell Skript fährt die VMs eines Hyper-Vs in einer selbstbestimmten Reihenfolge herunter und in umgekehrter Reihenfolge wieder hoch, anhand einer .csv Tabelle.
Als Parameter (time) kann die maximal Laufzeit der VMs angegeben werden, bevor die Instanz dann durch das Script ausgeschaltet wird.
Beachte:
Der Fokus liegt auf dem Updaten des Hyper-V-Hosts. Das Skript stößt keine Smart Updates auf den Server VMs an!
Voraussetzungen
- Der Hyper-V muss selbst OCC-Connector sein. Ist eine VM OCC-Connector werden beim Neustart über das Skript keine Updates von Smart Updates installiert.
→ OCC-Connector auf den Hyper-V Host umziehen:
(Auf die Funktion "Netzwerkumgebung" im OCC muss somit verzichtet werden)
OCC-Connector umziehen auf einen bestehenden Sensorhub : Server-Eye
OCC-Connector umziehen auf eine neue Maschine ohne bestehende Server-Eye Installation : Server-Eye
(Zeitaufwand ca. 5min) - OS Version Server 2012 R2 oder neuer
- Smart Updates muss aktiviert sein
Anleitung
- Lade das Skript in Dein Online PowerShell Verzeichnis hoch.
- Im servereye Automation Planner eine Aufgabe anlegen.
- Name + Beschreibung: Reboot_Hyper-V_SU
- System: entsprechender Hyper-V Host
- Trigger: 1x wöchentlich (mit Kunde absprechen!)
- Aktionen: PowerShell Repository → Skript auswählen
(Parameter "time"= maximale Zeit in - Minuten, die eine VM zum Herunterfahren benötigen kann, bevor sie gestoppt wird) - Auf den Hyper-V aufschalten
- Sicherstellen, dass KEINE Datei "C:\vms.csv" existiert!
- In Windows Aufgabenplanung unter "servereye Tasks" die neu angelegte Aufgabe einmal ausführen
(bei der ersten Ausführung wird der Hyper-V nicht neu gestartet!):
Eine Datei "vms.csv" wird unter C: erstellt (C:\vms.csv) - In der erstellten .csv Datei sind alle Prioritäten auf 10 gesetzt. Nun muss die Reihenfolge bestimmt werden anhand der Priorität.
Es gilt je niedriger der Wert der Priorität, desto später wird die jeweilige VM bei einem Hyper-V Reboot heruntergefahren. Ein VM mit Prio 1 fährt nach einer VM mit Prio 2 herunter.
Zur Veranschaulichung folgendes Beispiel:
Der automatische Reboot des Hyper-V ist somit eingerichtet und findet zum nächsten Zeitpunkt der in servereye geplanten Aufgabe statt. Die VMs werden nach dem Reboot in umgekehrter Reihenfolge gestartet.
Anmerkungen
- der Parameter "time" im Script ist standardmäßig auf 30 Minuten festgelegt
- Änderungen des Namens aktiver VMs führt zu einer Neuanlage dieser VM in vms.csv mit der Priorität "10"
- gelöschte VMs werden automatisch aus vms.csv entfernt und in zukünftigen Neustarts nicht mehr berücksichtigt
- neu hinzugefügte VMs werden automatisch mit einer Priorität von 10 der Datei vms.csv hinzugefügt
- das Starten der VMs nach dem Hyper-V Reboot findet nach einem maximalen Delay von 5 Minuten statt! (nach maximal 5 Minuten startet die erste VM)
- die Zeit zwischen den Starts der einzelnen VMs ist auf 120 Sekunden festgesetzt (dies wird in einer zukünftigen Version als Parameter verfügbar sein)
- die ersten Neustarts sind zu kontrollieren!