Der aspectra-Blog seit 2012

Application Delivery Controller - die neue Generation der Load Balancer (Teil 1)

Jedes Unternehmen, das mit seinen Kunden in irgendeiner Form über eine eigene Web-Applikation kommuniziert, ist heutzutage auch von deren Geschwindigkeit und Zuverlässigkeit abhängig, um nicht schon beim ersten Kundenkontakt wettbewerbsmässig ins Hintertreffen zu geraten. Moderne Load Balancer, respektive Application Delivery Controller, sind dabei eine grosse Unterstützung.

Die Geschichte der Load Balancer

Die Geburtsstunde der Load Balancings kann man in etwa mit der Entdeckung gleichsetzen, wie man für einen A Resource Record im Domain Name System mehrere IP Adressen festlegen konnte. Anfragende Clients bekamen somit immer eine Auswahl an IP Adressen zurück, von denen sie eine für die Client-Server Kommunikation frei auswählen konnten. Diese primitive Art der Lastverteilung funktionierte zwar einigermassen, war jedoch sehr limitiert und konnte aus Informationsmangel zum Beispiel nicht mit dem Ausfall eines Servers umgehen.

Die nächste Evolutionsstufe bestand aus applikationsspezifischer Cluster-Software. Mit dieser konnte dem Client nun wieder nur eine einzelne IP Adresse ausgeliefert werden und der sogenannte Cluster Manager wählte anschliessend bei der Kontaktaufnahme des Clients im Hintergrund automatisch den besten Cluster-Server zur Kommunikation aus. Diese Lastverteilung funktionierte zwar gut, war jedoch immer von spezifischen Applikationen abhängig und skalierte ab einer bestimmten Server-Anzahl nur noch bedingt, da die Statuskommunikation unter den Cluster-Servern alleine schon viel Last verursachte.

Aus diesem Dilemma entstand die erste Generation der Load Balancer-Geräte. Diese waren applikationsneutral und vermochten somit mit unterschiedlichen Applikationen gleichzeitig umzugehen. Zudem lösten sie das Skalierungsproblem bei einer hohen Serveranzahl, da nur noch der Load Balancer den (Gesundheits-) Zustand des Clusters überwachen musste.

Die neuste Generation von Load Balancer-Geräten, allgemein als Application Delivery Controller (ADC) betitelt, baut auf der Standardfunktionalität der „alten“ Load Balancer auf und erweitert diese aufgrund der rasanten Entwicklung von Prozessor-Power und Netzwerk-Performance sowie der markant gestiegenen Erreichbarkeitsbedürfnisse der Kunden. In dieser 6teiligen Blog-Serie decken wir die wichtigsten Eigenschaften eines modernen ADCs ab.

Weiter geht es in Kürze mit Teil 2 über „ADC – die Netzwerkintegration“.

Suche