Gemeinsam sind wir schnell
Pakete verteilen ist out, intelligentes Verwalten von Sessions ist in. WAN Load Balancing ist heute eine Wissenschaft für sich. Die Geräte schauen sich die eingehenden Pakete genau an, verteilen nach komplexen Regeln und schützen vor Attacken.
Als die ersten Load-Balancer Ende der neunziger Jahre auf den Markt kamen, waren die Geräte und ihre Funktion noch überschaubar. Eingehender HTML-Traffic wurde nach vorgegebenen Regeln auf die dahinter stehenden Webserver verteilt. Das funktionierte entweder ganz simpel und statisch nach dem Round-Robin-Verfahren – alle Server wurden der Reihe nach bedient – oder nach etwas intelligenteren Methoden. Dazu lief beispielsweise auf den Webservern ein kleines Softwaremodul, das den Load-Balancer über die aktuelle CPU-Auslastung informierte. Schwer beschäftigte Webserver wurden verschont, neue HTML-Sessions gingen an weniger ausgelastete Rechner.
Das funktioniert auch heute noch, aber aktuelle Load-Balancer können mehr, viel mehr. Das fängt schon damit an, dass das Marktsegment als Application Delivery Networking bezeichnet wird. Weg von der stupiden Paketschubserei, hin zur ganzheitlichen Applikationslieferung. Der Begriff Load Balancing hat sich erweitert, er steht nun für den Teil einer Hochverfügbarkeitslösung mit Funktionen wie Deep Packet Inspection und Bandbreitenmanagement.
Lokal und global verteilen
Bei den Load-Balancing-Produkten der großen Anbieter wie F5 Networks, Cisco, Radware oder Barracuda geht es immer um zwei Spielarten: lokales oder globales Load Balancing. Beim globalen Ansatz stehen hinter dem Load-Balancer keine Server sondern ganze Rechenzentren. Es geht darum, für einen Kunden irgendwo auf der Welt das beste Rechenzentrum heraus zu suchen. Nicht nur basierend auf geographischer Nähe, sondern auf der aktuellen Performance der gewünschten Anwendung, zum Beispiel eines E-Commerce-Shops.
Im Endeffekt kommen dabei die gleichen Mechanismen zum Einsatz, die auch lokales Load Balancing benutzt. Im Gegensatz zu den einfachen, statischen Verteilmechanismen von früher wird nun die HTTP-Session haargenau analysiert, bei den meisten Herstellern nicht nur auf Paketebene, sondern bis hoch zum Layer 7 der Applikation. Anwendungen beschränken sich heute nicht mehr auf einen Server, wie man bei Radware weiß. Frontend, Backend und Datenbank – alle drei Komponenten, die sich zum Teil auch auf mehr als einem physikalischen System ausbreiten, tragen zur Gesamtperformance bei. Ergo muss auch der Load-Balancer die komplette Kette beurteilen können, um zu wissen, welcher Server im Moment die besten Werte für eine neue Session bieten kann.
Neben solchen Kriterien, die vor allem die Optimierung einer Verbindung betreffen, kümmern sich die Systeme heute auch um die Gesundheit der Serversysteme. So sind bei F5 und Radware Tests integriert, die SNMP-Parameter auswerten und Server mit bedenklichen Statistikwerten weniger belasten als andere. Radware kann sogar Server mit offensichtlichen Problemen komplett aus dem System nehmen, sie neu starten und danach langsam und unter ständiger Beobachtung wieder an die Last heranführen. Alles automatisch, wohlgemerkt.