Dieses Kapitel gibt einen Überblick über Load Balancer und ist in die folgenden Abschnitte gegliedert:
Eine detaillierte Liste der Konfigurationsfunktionen der einzelnen Komponenten von Load Balancer, die Sie zur Planung Ihrer Netzverwaltung heranziehen können, finden Sie in Netz verwalten: Zu verwendende Load-Balancer-Features bestimmen.
Load Balancer ist eine Softwarelösung für die Verteilung eingehender Clientanforderungen auf mehrere Server. Dieses Produkt verbessert die Leistung von Servern erheblich, indem es TCP/IP-Sitzungsanforderungen auf verschiedene Server einer Gruppe verteilt. Dieser Lastausgleich ist für Benutzer und andere Anwendungen transparent. Load Balancer ist vor allem bei Anwendungen wie E-Mail-Servern, WWW-Servern, verteilten Abfragen paralleler Datenbanken und anderen TCP/IP-Anwendungen nützlich.
Beim Einsatz mit Webservern kann Load Balancer zur optimalen Nutzung des Potenzials Ihrer Site beitragen, da dieses Produkt eine leistungsfähige, flexible und skalierbare Lösung für Probleme bietet, die durch eine sehr hohe Arbeitslast auftreten können. Haben Besucher zu Zeiten hoher Nachfrage Schwierigkeiten, auf Ihre Site zuzugreifen, können Sie mit Load Balancer automatisch den optimalen Server zur Bearbeitung eingehender Anforderungen suchen.
Load Balancer besteht aus den folgenden fünf Komponenten, die separat oder zusammen verwendet werden können, um bessere Ergebnisse beim Lastausgleich zu erzielen:
Wenn Sie mit dem Protokoll HTTP arbeiten, können Sie auch die Dispatcher-Funktion für inhaltsabhängige Weiterleitung verwenden, um die Last ausgehend vom Inhalt der Clientanforderung zu verteilen. Der ausgewählte Server ist das Ergebnis des Abgleichs des URL mit einer angegebenen Regel. Für die inhaltsabhängige Weiterleitung von Dispatcher (Weiterleitungsmethode cbr) ist kein Caching Proxy erforderlich.
Weitere Informationen zu den Komponenten Dispatcher, CBR, Site Selector, Cisco CSS Controller und Nortel Alteon Controller finden Sie im Abschnitt Komponenten von Load Balancer.
Die Anzahl von Benutzern und Netzen, die mit dem globalen Internet verbunden sind, wächst mit rasanter Geschwindigkeit. Dieses Wachstum verursacht Probleme hinsichtlich der Skalierbarkeit, da der Benutzerzugriff auf attraktive Sites bei einem hohen Anforderungsaufkommen möglicherweise eingeschränkt wird.
Derzeit benutzen Netzadministratoren verschiedene Methoden zur Optimierung des Zugriffs. Bei einigen dieser Methoden können Sie nach dem Zufallsprinzip einen anderen Server auswählen, wenn der vorher ausgewählte Server zu langsam oder überhaupt nicht antwortet. Diese Vorgehensweise ist jedoch mühsam und ineffektiv. Eine weitere Methode ist die Standard-RoundRobin-Methode, bei der der Domänennamensserver der Reihe nach Server zur Bearbeitung von Anforderungen auswählt. Dieser Ansatz ist zwar besser, aber immer noch ineffizient, da der Datenverkehr ohne Berücksichtigung der Serverauslastung weitergeleitet wird. Zudem werden bei dieser Methode auch dann noch Anforderungen an einen Server gesendet, wenn er ausgefallen ist.
Der Bedarf an einer leistungsfähigeren Lösung hat zur Entwicklung von Load Balancer geführt. Dieses Produkt bietet gegenüber früheren Lösungen und Lösungen anderer Anbieter eine Vielzahl von Vorteilen:
Wenn die Anzahl der Clientanforderungen steigt, können Sie Server dynamisch hinzufügen und Millionen von Anforderungen pro Tag auf Hunderten von Servern unterstützen.
Der Lastausgleich gewährleistet, dass jede Servergruppe die zugehörige Hardware optimal nutzen kann, da die bei einer Standard-RoundRobin-Methode häufig auftretenden Spitzenbelastungen auf ein Minimum reduziert werden.
Load Balancer benutzt TCP/IP-Standardprotokolle oder UDP/IP-Protokolle. Das Produkt kann zu einem vorhandenen Netz hinzugefügt werden, ohne dass physische Änderungen am Netz erforderlich sind. Es ist leicht zu installieren und zu konfigurieren.
Bei Verwendung der einfachen Weiterleitungsmethode MAC achtet der Dispatcher nur auf den beim Server eingehenden Datenverkehr vom Client. Den vom Server zum Client abgehenden Datenverkehr muss er nicht sehen. Dies führt im Vergleich zu anderen Methoden zu einer erheblichen Reduzierung negativer Auswirkungen auf die Anwendung und zu einer verbesserten Leistung im Netz.
Der Dispatcher, der Cisco CSS Controller und der Nortel Alteon Controller sind Komponenten mit integrierter hoher Verfügbarkeit, für die eine Ausweichmaschine benutzt wird, die jederzeit die Weiterleitung von Paketen übernehmen kann, wenn die primäre Servermaschine ausfällt. Sollte einer der Server ausfallen, werden die Anfragen vom anderen Server bedient. Dies bedeutet, dass keiner der Server als Single Point of Failure eingesetzt werden muss. Die Site zeichnet sich somit durch hohe Verfügbarkeit aus.
Weitere Informationen enthält der Abschnitt Bereitstellung der hohen Verfügbarkeit durch Load Balancer.
Zusammen mit Caching Proxy kann die Komponente CBR HTTP- und HTTPS-Anforderungen (SSL) ausgehend vom angefragten Inhalt an bestimmte Server weiterleiten. Wenn eine Anforderung im Verzeichnisabschnitt des URL beispielsweise die Zeichenfolge "/cgi-bin/" enthält und der Servername ein lokaler Server ist, kann CBR die Anforderung an den besten Server einer speziell für die Bearbeitung von cgi-Anforderungen zugeordneten Servergruppe übertragen.
Die Komponente Dispatcher erlaubt auch eine inhaltsabhängige Weiterleitung, erfordert jedoch nicht die Installation von Caching Proxy. Da die inhaltsabhängige Weiterleitung der Komponente Dispatcher beim Empfang von Paketen im Kernel ausgeführt wird, ist sie schneller als die der Komponente CBR. Die Komponente Dispatcher führt das Content-Based Routing für HTTP (unter Verwendung des Regeltyps "content" (Inhalt)) und für HTTPS (unter Verwendung der Affinität von SSL-Sitzungs-IDs) durch.
Die Komponente Dispatcher stellt eine integrierte Funktion für hohe Verfügbarkeit bereit, so dass der Dispatcher nicht mehr als Single Point of Failure in Ihrem Netz eingesetzt werden muss. Für diese Funktion ist eine zweite Dispatcher-Maschine erforderlich, die die primäre Maschine überwacht und den Lastausgleich übernehmen kann, wenn die primäre Maschine ausfällt. Die Komponente Dispatcher gewährleistet außerdem eine gegenseitige hohe Verfügbarkeit, so dass sowohl die primäre als auch die sekundäre Maschine die jeweils andere Maschine als Ausweichmaschine nutzen kann. Weitere Informationen finden Sie im Abschnitt Hohe Verfügbarkeit konfigurieren.
Wenn Sie eine Client/Server-Konfiguration mit einer Dispatcher-Maschine verwenden, bei der der Datenverkehr auf mehrere Server mit CBR verteilt wird, können Sie auch mit der Komponente CBR ein hohes Maß an Verfügbarkeit erreichen.
Die Controller stellen eine Funktion für hohe Verfügbarkeit bereit, so dass der Controller nicht mehr als Single Point of Failure eingesetzt werden muss. Ein Controller auf einer Maschine kann als primärer Controller und ein Controller auf einer anderen Maschine als Ausweichcontroller konfiguriert werden. Der Ausweichcontroller überwacht den primären Controller und ist bereit, bei einem Ausfall des primären Controllers dessen Aufgaben zu übernehmen und den Switches Serverwertigkeiten bereitzustellen. Weitere Informationen hierzu finden Sie im Abschnitt Hohe Verfügbarkeit.