Mobile-Menu

Funktion und Design von Load Balancing-Architekturen Load Balancer in fünf Szenarien einsetzen

Autor / Redakteur: Thomas Kurz, Territory Manager D/A/CH und Mittlerer Osten, KEMP Technologies / Ulrich Roderer

Content-Server sind im Geschäftsalltag oft genug überlastet. Aber sollten leistungsstärkere Server das Problem nicht lösen können? Load Balancer sind hier oft effektiver, aber nicht jeder passt zu jeder Infrastruktur.

Fünf Szenarien für Load Balancer bzw. ADC.
Fünf Szenarien für Load Balancer bzw. ADC.

Web Server, Shopping-Sites, Info- und Dienstleistungsportale müssen mehr und mehr Traffic bewältigen. Gleichzeitig sind die Nutzer zu Recht anspruchsvoller geworden, was schnelle und sichere Transaktionen für viele Bereiche des täglichen und geschäftlichen Lebens anbelangt.

Moderne Internet-basierte Infrastrukturen sind längst in kleinen und mittleren Unternehmen angekommen. Aus traditionellen Anwendungen wie der Auftragsbearbeitung, Fakturierung und Kundenverwaltung sind umfassende Internet-basierte Supply-Chain-Anwendungen geworden.

Diese neuen Internetanwendungen vereinheitlichen und straffen die Geschäftsprozesse gegenüber früheren monolithischen Client-/Server-Szenarien. Für kleine und mittlere Unternehmen eine gute Nachricht, denn hier gibt es Potenzial teure Hardware und Wartungszeit einzusparen, um flexibler am Markt agieren zu können.

Dies in die Realität umzusetzen ist allerdings oft heikel, und das gilt für alle Phasen von der Implementierung bis zum produktiven Betrieb. Die klassischen Beispiele: Stillstand durch Serverausfall oder Server-Überlastung.

Load Balancer entlasten und steuern die Verteilung von Lasten mittels komplexer Algorithmen. Für die jeweiligen Nutzer und Kunden laufen diese Vorgänge unbemerkt im Hintergrund ab. Das gilt inzwischen selbst dann, wenn Server gewartet oder defekte Geräte ausgetauscht werden. Weder Mitarbeiter noch Kunden müssen davon noch etwas bemerken.

Load Balancing und ADC

Um diese Risiken in den Griff zu bekommen, verwendet man heute Application Delivery Controller (ADCs) – die moderne Variante der klassischen Load Balancer. Der ADC nimmt die Anfragen aller Clients, also zum Beispiel Webbrowsern entgegen und leitet die Zugriffe auf die verschiedenen nachgelagerten Server weiter. Diese sind ihrerseits häufig mit Datenbankservern verbunden.

Fällt dann einer der nachgelagerten Server aus, sind die Folgen nicht dramatisch: die Benutzer des fraglichen Servers werden auf andere Server verteilt, und insgesamt bleibt die Anwendung verfügbar.

Die aktuelle Technik der Application Delivery Controller ist aus den Server Load Balancern der 90er Jahre hervorgegangen. Ein ADC leitet einen Internetnutzer anhand verschiedener Lastverteilungsalgorithmen zum Beispiel an die Server mit der größten verfügbaren Leistung weiter. Dazu kann das Gerät eigene Serverparameter wie Antwortzeit oder die Anzahl gleichzeitiger Verbindungen verwenden.

Oder die Metrik wird Server-seitig ermittelt, um etwa die CPU- beziehungsweis die Speicherauslastung dynamisch einzubeziehen. Ist ein Server nicht erreichbar, stellt der ADC diesen oder die Anwendung offline und leitet die Anwender automatisch auf andere, einwandfrei funktionierende Server um. Der Benutzer bemerkt diesen Vorgang nicht, er läuft im Hintergrund ab.

ADCs übernehmen und beschleunigen heute auch die SSL-Aktivitäten und entlasten die Server beim Aufbauen von SSL-Verbindungen sowie beim Ver- und Entschlüsseln. Dadurch ist der Server leistungsstärker für seine eigentlichen Aufgaben. Gleichzeitig wird die SSL-Abwicklung schneller.

Daneben kann ein ADC auch den Webserver beschleunigen, zum Beispiel durch Content Caching und Datenkomprimierung.

Content Caching

Beim Content Caching werden statische Daten durch den ADC zwischengespeichert. Sie verändern sich nicht und müssen folglich nicht bei jedem neuen Zugriff vom Server generiert werden. Die Daten können sofort ausgeliefert werden. In der Regel muss auch die enorme Menge an übertragenen Daten komprimiert werden. Dazu werden die Daten in kleinere Pakete gepresst, welche wiederum zu einem größeren Paket zusammengefasst werden. Ein weiterer Bereich ist die Sicherheit, Stichwort Intrusion Prevention System (IPS) sowie "Content Routing". Mit letzterem ist gemeint, dass sicherheitskritische Anfragen auf gesonderte Server umgelenkt werden.

Load Balancer richtig auswählen

Nicht alle Load Balancer eignen sich für jede Umgebung. Es gibt fünf Szenarien, die im folgenden untersucht werden:

1. Ihr Unternehmen wächst

Die positive Nachricht hat leider ein typisches Problem im Gepäck. Die Netzwerk-Server sind chronisch überlastet. Sei es durch die wachsende Zahl an Mitarbeitern, sei es, weil mehr Geschäftspartner und Kunden auf interne und externe Applikationen zugreifen.

Eine Load-Balancing-Lösung steuert den kompletten Netzwerkverkehr und leitet den Datenstrom auf genau die Server, die freie Kapazitäten haben. Die aktuelle Generation von Load Balancern bezeichnet man gemeinhin als Application Delivery Controller (kurz ADC).

Der Name weist bereits darauf hin, dass es darum geht, die Lasten möglichst intelligent zu verteilen.

2. Nutzerzahl stabil – Traffic steigt

Kein ungewöhnliches Szenario. Webshops und Service-Angebote werden stärker nachgefragt, aber im Inneren des Netzwerks bleibt alles mehr oder weniger stabil, der Netzwerkverkehr nimmt sogar leicht ab.

Hier gilt es zu differenzieren, welche Auslastungsspitzen bei den einzelnen Servern auftreten und vor allem, wann. Unterschiedliche Server sind üblicherweise zu ganz unterschiedlichen Tageszeiten mehr oder weniger ausgelastet. Load Balancer analysieren diese Parameter und organisieren eine sinnvolle Verteilung der Lasten auf die Server, die aktuell im Pool zur Verfügung stehen.

Wie an einem ganz normalen Arbeitstag: Mit dem Eintreffen der Mitarbeiter steigt das Aufkommen von eingehenden und verschickten E-Mails, im Laufe des Tages kommen vielleicht Video-Konferenzen oder Meetings über eine VoIP-Anwendung dazu, parallel fragen Kunden oder Partner verstärkt Produkte oder Dienstleistungen nach. Die Kurve flacht dann leicht ab, um am Nachmittag bis zum Ende eines Arbeitstages wieder anzusteigen.

Load Balancer steuern und verteilen den Datenverkehr so, dass die Server intelligent ausgelastet sind. Die Nutzer merken im Idealfall nichts von möglichen Engpässen.

3. Server global verteilt – Global Server Load Balancing (GSLB)

Hersteller gehen an dieses Thema unterschiedlich heran. Eine Möglichkeit ist es, lokale Load Balancer einzusetzen und diese so zu konfigurieren, dass sie zusätzlich zu ihren eigentlichen Aufgaben auch die „Geo“-Funktion übernehmen können.

Eine andere Methode ist es, Load Balancer ausschließlich für diese Aufgabe zu konzipieren.

Statt dem Load Balancer neben seinen üblichen Funktionen noch eine weitere aufzubürden, ist er bei der zweiten Variante so konfiguriert, dass er nur seine spezifische Geo-Aufgabe übernimmt: nämlich den Datenverkehr effektiv auf die lokal eingesetzten Load Balancer zu verteilen. Gibt es beispielsweise einen Ausfall in einem Rechenzentrum, wird der Traffic zu einem anderen verfügbaren RZ mit ausreichender Kapazität weiter geleitet.

Geo-Load Balancer dieser Art können zusätzlich programmiert werden, um auch Denial-of-Service-Attacken abzuwehren. Sollte es sich um ein Netzwerk handeln, das primär Traffic von Microsoft Exchange und/oder Microsoft Lync Servern abwickelt, sollte der Geo-Load Balancer entsprechend kompatibel sein.

4. Virtualisierung oder keine?

100.000 virtuelle Anwendungen laufen erfolgreich über einen einzigen Server. Übertrieben? Nicht ganz. Solche und ähnliche Netzwerkkonzepte findet man tatsächlich in der Praxis. Natürlich gibt es in der Regel einen zweiten Server. Dieser arbeitet im Hochverfügbarkeitsmodus und übernimmt die Funktionen falls der ursprüngliche Server ausfallen sollte.

Problem: Was passiert mit den Daten, Angeboten, Bestellungen, Anfragen und so weiter, wenn die Daten nicht nahtlos von einem auf den anderen Server übertragen werden, und damit auch die dahinter liegenden Applikationen nicht zeitgleich erreichen? An dieser Stelle helfen virtualisierte Load Balancer, die sowohl mit VM-Ware-Lösungen als auch mit Microsoft Hyper-V zusammenarbeiten.

5. Hochverfügbarkeit – der Schlüssel zur richtigen Load-Balancer-Lösung?

Failover in umfänglichen Umgebungen für Microsoft Lync? Vor allem kleinere und mittlere Unternehmen tun sich mit zusätzlichen Investitionen schwer. Load Balancer bei denen Stateful Failover als Standard integriert ist schaffen Abhilfe. Auf kostspielige Microsoft SQL Server Lizenzen kann man dann verzichten.

(ID:34468120)