Mobile-Menu

Lastenausgleich mit NLB-Cluster in Windows Server 2022 Network Load Balancing und Roundrobin in Windows und Azure

Von Thomas Joos Lesedauer: 5 min

Anbieter zum Thema

Mit einem NLB-Cluster kann die Last einer Workload im lokalen Rechenzentrum auf mehrere Server verteilt werden. Einsatzgebiete dafür sind zum Beispiel RDP oder Webserver-Dienste. Wir zeigen in diesem Beitrag die Einrichtung dazu.

Ein Lastenausgleich im Netzwerk lässt sich entweder granular und lastabhängig über Network Load Balancing oder statistisch via DNS-Roundrobin herstellen. Wir zeigen, wie das geht.
Ein Lastenausgleich im Netzwerk lässt sich entweder granular und lastabhängig über Network Load Balancing oder statistisch via DNS-Roundrobin herstellen. Wir zeigen, wie das geht.
(Bild: © momius - stock.adobe.com)

NLB-Cluster (Network Load Balancing) gibt es schon eine ganze Weile in Windows und auch in Windows Server 2022 sind diese im Zusammenhang mit RDP oder Webdiensten sinnvoll einsetzbar. Bei einem Zusammenschluss mehrerer Server zu einem gemeinsamen NLB-Cluster verbinden sich Anwender zunächst mit dem Cluster selbst und werden dann zum jeweiligen Server weitergeleitet, der die Benutzeranfragen bearbeiten soll. Dabei kann es sich um virtuelle oder physische Server handeln.

Parallel dazu gibt es die Möglichkeit, mit DNS-Roundrobin zu arbeiten. Kommt parallel noch Microsoft Azure zum Einsatz, kann zudem der Einsatz von Azure Load Balancer Sinn machen. Azure Load Balancer, Application Gateway, Front Door oder Traffic Manager sind Dienste, die in Cloud- und hybriden Umgebungen für Lastenausgleich sorgen.

Bildergalerie
Bildergalerie mit 6 Bildern

NLB-Cluster-Grundlagen für Windows Server 2022

Insgesamt können bis zu 32 Server an einem NLB-Cluster angebunden werden. Dadurch lassen sich verschiedenen Dienste skalieren, die auf TCP- setzen. NLB-Cluster können dabei auch mehrere Anfragen des gleichen Clients auf unterschiedliche oder gleiche Knoten verteilen. Zur Skalierung ist es jederzeit möglich, dem Cluster weitere Hosts hinzuzufügen oder nicht mehr benötigte Server daraus zu entfernen. Ein weiterer Vorteil eines NLB-Clusters mit Windows Server ist die einfache Verwaltung.

NLB-Cluster vorbereiten

Um einen Host in ein NLB-Cluster zu integrieren, sollte das IP-Forwarding für den Host aktiviert werden. Das geht zum Beispiel in der Befehlszeile mit:

netsh interface ipv4 set int "<Name der LAN-Verbindung> forwarding=enabled

Das Aktivieren dieser Option stellt sicher, dass Server in der Lage sind, IP-Pakete weiterzuleiten, wenn sie diese nicht selbst verarbeiten. Damit ein Server an einem NLB-Cluster teilnehmen kann, muss das Feature "Netzwerklastenausgleich" über den Server-Manager, über die PowerShell oder über das Windows Admin Center installiert werden. Das Feature muss auf jedem Host aktiviert sein, der Mitglied im Cluster sein soll.

Parallel dazu kann im DNS-System ein Host-A-Eintrag mit dem Namen und der IP-Adresse des NLB-Clusters erstellt werden. Anwender verbinden sich über diesen Namen mit dem Cluster und die Knoten verteilen die Anfragen entsprechend.

NLB-Cluster erstellen

Die Erstellung des eigentlichen Clusters erfolgt über den "Netzwerklastausgleich-Manager". In diesem lässt sich über "Neuer Cluster" ein neues NLB-Cluster bereitstellen. Mit "Verbinden" erfolgt danach die Anbindung des ersten Knotens.

Nach der erfolgreichen Verbindung mit dem ersten Knoten, erfolgt die Konfiguration des Clusters. Hier werden zum Beispiel die IP-Adresse und der Name des NLB-Clusters festgelegt sowie definiert, ob der Ausführungsmodus "Unicast", "Multicast" oder "IGMP-Multicast" sein soll. In den meisten Fällen reicht "Unicast" aus, sollte es zu Verbindungsproblemen der Clients kommen, ist es nachträglich möglich, die Einstellungen zu "Multicast" oder "IGMP-Multicast" zu ändern. Bei der Verwendung von Unicast arbeiten alle Hosts mit der gleichen MAC-Adresse des Clusters.

Bei der Verwendung von "Multicast" bleibt die lokale MAC-Adresse des Hosts erhalten und die MAC-Adresse des Clusters wird zusätzlich hinzugefügt. Im nächsten Schritt lassen sich Regeln für den Zugriff definieren. Die Regeln steuern die Zugriffe der Clients auf die einzelnen Hosts. Sobald die Einstellungen abgeschlossen sind, lassen sich weitere Hosts dem Server hinzufügen. Das erfolgt über "Host dem Cluster hinzufügen". Auf diesem Weg lassen sich dem NLB-Cluster auch jederzeit nachträglich Knoten hinzufügen oder daraus entfernen.

DNS-Roundrobin versus NLB-Cluster

Parallel zu einem NLB-Cluster ist auch DNS-Roundrobin eine Möglichkeit, einen Lastenausgleich im Netzwerk zu erreichen. Dabei kommt kein Cluster zum Einsatz, sondern spezielle DNS-Einträge, die Anwender nach der Anfrage am DNS-Server zu unterschiedlichen Clients weiterleiten. Bei DNS-Roundrobin lassen sich DNS-Antworten zyklisch ändern.

Bei der Verwendung von DNS-Roundrobin wird in DNS ein gemeinsamer DNS-Eintrag für alle Server mit gleichem Namen und der jeweiligen IP-Adresse des Hosts erstellt. Fragen Clients einen DNS-Server nach der IP-Adresse des Namens, antwortet der Server immer mit der nächsten IP-Adresse auf der Liste. Dabei findet die Auslastung des Hosts aber keine Berücksichtigung, sondern Clients verbinden sich nach und nach mit anderen Hosts, da die DNS-Server die IP-Adresse des Hosts jeweils ändern, wenn sie auf Client-Anfragen antworten.

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu Netzwerktechnik, IP-Kommunikation und UCC

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung

Einfach ausgedrückt, fragen Clients zum Beispiel zum Eintrag "Nlb.joos.int" nach der IP-Adresse des Verbundes. Als Antwort erhält der Client eine Liste aller IP-Adressen mit dem Eintrag, aber mit jeweils geänderter Reihenfolge, sodass sich die Clients immer mit einem anderen Host verbinden. DNS achtet dabei möglichst auf gleiche Subnetze bei der Weiterleitung, sodass Clients idealerweise an einen Host weitergeleitet werden, der sich im gleichen Subnetz oder einem Subnetz in der Nähe befindet.

Bei der Verwendung von DNS-Roundrobin hat jeder Host natürlich weiterhin seinen eigenen Host-A-Eintrag. Parallel dazu wird, genauso wie bei NLB, ein zusätzlicher Eintrag erstellt, und zwar für jeden Host derselbe Name, aber mit jeweils eigener IP-Adresse. Wenn die Konfiguration abgeschlossen ist, gibt es in DNS daher einen Eintrag für jeden Server mit seiner eigenen IP-Adresse und parallel einen gemeinsamen Namens-Eintrag, der aber die jeweilige IP-Adresse des Hosts verwendet.

Damit ein DNS-Server Roundrobin unterstützt, muss in den Eigenschaften des DNS-Servers in der DNS-Verwaltung bei "Erweitert" die Option "Roundrobin aktivieren". Wenn die Funktion für bestimmte Typen deaktiviert werden soll, kann dies über die Registry erfolgen. Dazu werden unter "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNS\Parameters" ein REG_SZ-Wert mit dem Namen "DoNotRoundRobinTypes" hinzugefügt und als Werte die Recordtypen eingetragen, die nicht zum Einsatz kommen sollen.

NLB mit Azure Load Balancer, Application Gateway, Front Door oder Traffic Manager

In hybriden Netzwerken, bei denen parallel noch Dienste in Azure zum Einsatz kommen, ist Azure Load Balancer ein wichtiges Werkzeug, das bei der Kontaktaufnahme von Clients zu Azure-Diensten die Last für Workloads verteilen kann.

Azure Load Balancer arbeitet ebenfalls auf der Layer 4 des OSI-Modells und stellt für Clients der angebundenen Anwendungen einen Einstiegspunkt dar. Dabei ist es möglich, einen internen und einen externen Lastenausgleich durchzuführen. Die Einrichtung dazu ist auf der Seite "Azure Load Balancer-Komponenten" zu finden.

Parallel dazu stellt Microsoft in Azure noch das Application Gateway für Layer 7 zur Verfügung sowie regionale Lastenausgleichsfunktionen. Azure Front Door bietet einen globalen Lastenausgleich und der Traffic Manager kann Lastenausgleiche mit DNS durchführen.

Bei der Suche nach "Lastenausgleich" erscheint im Azure-Portal eine Auswahlhilfe, die dabei unterstützt, den richtigen Loadbalancer zu konfigurieren, mit dem im lokalen oder globalen Lastenausgleich die jeweils richtigen Dienste erreicht werden.

(ID:49499261)