Tags: Hyper-V, Windows Server 2016, Cluster, Load Balancing
Windows Server 2016 kann virtuelle Maschinen bei ungleicher Auslastung der Knoten im Hyper-V-Cluster automatisch live migrieren, um die vorhandenen Ressourcen besser zu nutzen. Ähnliche Features bieten System Center Virtual Machine Manager mit DO und VMware vSphere mit DRS.
VM Load Balancing (Node Fairness) im Hyper-V Failover-Cluster soll einem möglichen Ungleichgewicht entgegenwirken und dem Administrator automatische Unterstützung bieten, damit vorhandene Ressourcen effizienter genutzt werden. Bekannt ist dieser Automatismus aus dem Virtual Machine Manager (VMM) unter dem Namen Dynamic Optimization (Dynamische Optimierung).
Ein Anlass für eine solche Optimierung wäre beispielsweise, wenn bei manueller Wartung eines Hyper-V-Knotens dieser durch Live Migration der VMs freigeräumt wird, jedoch bei Wiederverfügbarkeit des Hosts die VMs nicht ökonomisch verteilt würden. Dann wären anschließend einige Hyper-V-Hosts stark beansprucht, andere hingegen eventuell zu gering.
Node Fairness von Server 2016 steht in Konkurrenz zu DO in VMM, da eine Aktivierung von Dynamischer Optimierung in SCVMM die Node Fairness abschaltet. Kommt der Virtual Machine Manager zum Einsatz, hat dieses Tool die oberste Priorität im Umgang mit hochverfügbaren Maschinen. Die dynamische Optimierung lässt sich noch granularer in Bezug auf die Schwellenwerte einstellen.
Wie arbeitet VM Load Balancing?
Das Feature berücksichtigt im aktivierten Zustand die aktuelle RAM- und CPU-Auslastung des Hosts. Bei der CPU wird ein durchschnittlicher Wert über einen Zeitraum von 5 Minuten ermittelt. Liegen die Werte für RAM oder CPU über einem bestimmten Schwellenwert, werden die virtuellen Maschinen auf einen Knoten mit weniger Auslastung live migriert. Entsprechend muss die Live Migration grundsätzlich aktiviert sein.
Bei ständig aktiviertem Load Balancing unterliegt der Verbund alle 30 Minuten einer Neubewertung, um bei einer Knotenüberlastung oder Unterforderung durch erneute Live Migration einen Lastenausgleich herbeizuführen.
Aktivierung im Failovercluster-Manager oder mit PowerShell
Das Balancing ist standardmäßig aktiviert und man erreicht die Konfiguration im Failovercluster-Manager über Clustername => rechte Maustaste => Eigenschaften und die Registerkarte Balancer (Ausgleichsmodul).
Hier besteht die Möglichkeit, Node Fairness generell zu aktivieren oder zu deaktivieren und festzulegen, wann ein Lastenausgleich stattfinden soll. Der Radio-Button lässt in der GUI zwei Optionen zu:
Zum einen wird ein Ausgleich beim Neuhinzufügen eines Knotens herbeigeführt und zum anderen beobachtet das Feature alle 30 Minuten die Lage, um bei unausgeglichenem Verhältnis zu reagieren. Der Standardwert liegt hier beim ständigen Beurteilen der Situation (Always load balance). In der PowerShell-Konsole lassen die Werte wie folgt manipulieren:
(Get-Cluster).AutoBalancerMode = <Wert>
AutoBalancerMode <Wert> | Verhalten |
---|---|
0 | Disabled |
1 | Load balance bei Knotenbeitritt |
2 (default) | Load balance bei Knotenbeitritt und alle 30 Minuten |
Drei konfigurierbare Schwellenwerte über PowerShell
Bestimmte Schwellenwerte, die auf den CPU- und RAM-Beurteilungen basieren, lassen sich mit PowerShell über das AutoBalancerLevel konfigurieren. Wie sensibel der Verbund auf Werte reagiert, lässt sich dann mit der Aggressiveness (Aggressivität) bestimmen. Der Standardwert liegt hier bei 1, wonach der Ausgleich mit geringer Aggressivität erst bei größer 80-prozentiger Last auf dem Hyper-V Knoten passiert.
AutoBalancerLevel <Wert> | Aggressivität | Verhalten |
---|---|---|
1 (default) | gering | Verschieben, wenn der Host > 80% unter Last steht |
2 | mittel | Verschieben, wenn der Host > 70% unter Last steht |
3 | hoch | Ein Durchschnittswert über alle Knoten wird gebildet. Der Ausgleich passiert, wenn ein Knoten mehr als 5% ausgelastet ist. |
Mit PowerShell lässt sich auch dieser Wert ausgeben und verändern:
(Get-Cluster).AutoBalancerLevel = <Wert>
Auch der Befehl
Get-Cluster | select *
zum Anzeigen der Cluster-Details gibt Auskunft über beide Werte des Node Fairness.
Täglich Know-how für IT-Pros mit unserem Newsletter
Marcel Küppers arbeitet seit über 25 Jahren in der IT, aktuell als Team Leader, zuvor als Consultant und Infrastructure Architect unter anderem für den japanischen Konzern JTEKT/TOYODA mit Verantwortung über die Europastandorte Krefeld und Paris.
Darüber hinaus wirkte er als Berater im EU-Projekt-Team für alle Lokationen des Konzerns mit und ist spezialisiert auf hochverfügbare virtualisierte Microsoft-Umgebungen plus Hybrid Cloud Solutions.
Zertifizierungen: MS Specialist und MCTS für Hyper-V/SCVMM, MCSE, MCITP, MCSA. Zusätzlich zertifiziert für PRINCE2 Projektmanagementmethode.
Verwandte Beiträge
- Anleitung: Windows Server 2016 Cluster OS Rolling Upgrade
- Knoten zu einem Hyper-V-Cluster mit Windows Admin Center hinzufügen
- Virtuelle Maschine vollständig mit PowerShell erstellen (am Beispiel von Azure Stack HCI)
- vSphere mit Tanzu auf Basis von vSphere-Networking (Distributed vSwitch) einrichten
- Hochverfügbare VMs im Hyper-V-Cluster erstellen mit dem Windows Admin Center
Weitere Links