Dieser Artikel enthält Informationen zum Komponente Dispatcher von Load Balancer.
Die Komponente Dispatcher verteilt den Datenverkehr
mit einer Kombination von Lastausgleichs- und Verwaltungssoftware auf Ihre Server. Der Dispatcher
kann auch einen ausgefallenen Server erkennen und den Datenverkehr entsprechend umleiten. Dispatcher
unterstützt HTTP, FTP, SSL, SMTP, NNTP, IMAP, POP3, Telnet, SIP sowie alle anderen TCP-basierten bzw.
statusunabhängigen UDP-basierten Anwendungen.
Alle an die Dispatcher-Maschine gesendeten
Clientanforderungen
werden auf der Basis dynamisch festgelegter Wertigkeiten an den
"besten" Server übertragen. Für diese Wertigkeiten können Sie
Standardwerte benutzen oder die Werte während des Konfigurationsprozesses
ändern.
Dispatcher stellt die folgenden Weiterleitungsmethoden bereit:
- Weiterleitungsmethode MAC: Verwenden Sie diese Weiterleitungsmethode, um die eingehenden Anforderungen gleichmäßig auf die Server in demselben Teilnetz zu verteilen.
Die Server antworten dem Client direkt unter Umgehung von Dispatcher.
- Weiterleitungsmethode NAT: Bei dieser Weiterleitungsmethode entfällt die Einschränkung, dass sich die Server in demselben Teilnetz befinden müssen wie Dispatcher.
Bei der Weiterleitungsmethode NAT verteilt
Dispatcher die eingehenden Anforderungen gleichmäßig auf die Server, die Server geben die Antwort an Dispatcher zurück, und
Dispatcher leitet die Antwort an den Client weiter.
- Kapselungsweiterleitung (Encapsulation Forwarding): Diese Weiterleitungsmethode ist eine Kombination aus den Weiterleitungsmethoden
NAT und MAC. Einerseits erlaubt es die Kapselungsweiterleitung, dass sich die Server in einem anderen Teilnetz befinden als die Dispatcher-Maschine.
Andererseits übermittelt sie die Antwort, unter Umgehung von
Dispatcher, direkt an den Client. Dispatcher unterstützt zwei Kapselungsprotokolle: GRE
und IPIP. Nicht alle Betriebssysteme unterstützen die Protokolle
GRE und IPIP. die Unterstützung dieser Protokolle ist betriebssystemabhängig.
Die Komponente Dispatcher ist der Schlüssel für eine stabile,
effiziente Verwaltung eines großen skalierbaren Netzes von Servern. Mit Dispatcher können Sie viele
einzelne Server so verbinden, dass sie sich als einzelner
virtueller Server präsentieren. Besucher sehen Ihre Site
daher unter einer IP-Adresse. Der Dispatcher arbeitet
unabhängig von einem Domänennamensserver. Alle Anforderungen werden an die IP-Adresse
der Dispatcher-Maschine gesendet.
Der Dispatcher bringt klare Vorteile bei
der Lastverteilung auf eine Gruppe von Servern und
ermöglicht daher eine stabile und effiziente Verwaltung Ihrer Site.
Features der Komponente Dispatcher:
- Hohe Verfügbarkeit
- Wenn Sie
Dispatcher einsetzen möchten, um die Einschränkungen eines Single Point of Failure für Ihr Netz zu beseitigen,
lesen Sie die Informationen im Abschnitt "Hohe Verfügbarkeit konfigurieren".
- Client-Server-Affinität
- Wenn Sie sicherstellen möchten, dass der Client für mehrere Verbindungen denselben Server verwendet,
lesen Sie den Artikel "Verbindungen mit Client-Server-Affinität für die Komponente
Dispatcher optimieren".
- Regelbasierter Lastausgleich
- Wenn Sie Dispatcher auf derselben Maschine ausführen möchten wie einen der verwalteten Server, für die Sie den Lastausgleich durchführen,
lesen Sie den Artikel "Kollokierte Server für die Komponente Dispatcher konfigurieren".
- Lastausgleich im WAN
Der Lastausgleich im WAN kann über zwei Methoden realisiert werden: Kapselungsweiterleitung und
Network Address Translation (NAT).
Informationen zum Lastausgleich auf fernen Servern mit der Kapselungsweiterleitung
(Encapsulation
Forwarding) von Dispatcher finden Sie im Artikel "Kapselungsweiterleitung verwenden, um Datenverkehr über Netzsegmente weiterzuleiten".
Informationen zum Lastausgleich auf fernen Servern mit der Weiterleitungsmethode
NAT
von Dispatcher finden Sie im Artikel
"NAT-Weiterleitung zum Weiterleiten des Datenverkehrs verwenden".
- Alerts
- Wenn Alerts generiert werden sollen, wenn Server als aktiv oder inaktiv gekennzeichnet werden, lesen Sie die Informationen unter "Beispielscripts für die Generierung von Alerts und die Protokollierung von Serverausfällen".
- Kollokation
- Wenn Sie Dispatcher auf derselben Maschine ausführen möchten wie einen der verwalteten Server, für die Sie den Lastausgleich durchführen,
lesen Sie den Artikel "Kollokierte Server für die Komponente Dispatcher verwenden".
Funktionen für den Lastausgleich
Die primären Funktionen von Dispatcher
interagieren miteinander und mit Ihrer Serverkonfiguration, um den Datenaustausch im Netz in Ihrer Umgebung gleichmäßig zu verteilen.
Der Dispatcher setzt sich aus den folgenden Funktionen zusammen:
- Der Befehl
dsserver wird für Anforderungen von der Befehlszeile an den Executor, den Manager und die Advisor verwendet.
- Der Executor (Steuerprogramm) unterstützt den portbasierten Lastausgleich für TCP-Verbindungen.
Der Executor kann Verbindungen ausgehend vom Typ der empfangenen
Anforderung (HTTP, FTP, SSL) an Server weiterleiten.
Er wird immer ausgeführt, wenn die Dispatcher-Komponente für den Lastausgleich verwendet
wird.
- Der Manager legt Wertigkeiten fest, die der Executor verwendet, und die auf Folgendem basieren:
- interne Zähler des Executors,
- Rückmeldungen von den Servern, die der Advisor bereitstellt
- Rückmeldungen von einem Systemüberwachungsprogramm
wie Metric Server oder WLM.
- Die Verwendung des Managers ist optional.
Ohne den Manager wird
der Lastausgleich nach einer gewichteten RoundRobin-Zeitplanung
und ausgehend von den aktuellen Serverwertigkeiten durchgeführt. Es stehen keine Advisor
zur Verfügung.
- Die Advisor richten Abfragen an die Server und analysieren die
Ergebnisse nach dem Protokoll, bevor sie den Manager zum Festlegen der entsprechenden Wertigkeiten aufrufen.
Derzeit sind Advisor für die folgenden Protokolle verfügbar: HTTP, FTP, SSL,
SMTP, NNTP, IMAP, POP3, SIP und Telnet.
Dispatcher bietet außerdem Advisor
an, die keine protokollspezifischen Informationen austauschen. Dazu gehören der
DB2-Advisor, der Angaben zum Status von DB2-Servern meldet,
und der Advisor "ping", der meldet, ob der Server auf ein Pingsignal antwortet.
Eine vollständige Liste der
Advisor finden Sie im Artikel "Liste der Advisor".
Sie können auch eigene Advisor
schreiben. (Lesen Sie hierzu die Informationen unter "Angepassten Advisor erstellen".)
Tipp: die Verwendung der Advisor ist optional, wird jedoch empfohlen.
Verwenden Sie zum Konfigurieren und Verwalten des Executors, der Advisor und des Managers die Befehlszeile
(dscontrol) oder die grafische Benutzerschnittstelle (lbadmin).
Die drei Schlüsselfunktionen des Dispatchers
(Executor, Manager und Advisor) kommunizieren miteinander, um
die eingehenden Anforderungen auf die Server zu verteilen. Neben Lastausgleichsanforderungen überwacht der Executor die Anzahl neuer, aktiver und beendeter Verbindungen. Der Executor übernimmt auch
die Garbage Collection für beendete oder zurückgesetzte Verbindungen und stellt diese Informationen
dem Manager zur Verfügung.
Der Manager stellt Informationen vom Executor, von den Advisor und von einem Systemüberwachungsprogramm
wie Metric Server zusammen. Der Manager passt anhand der
erhaltenen Informationen die Wertigkeit der Servermaschinen an den einzelnen Ports an
und teilt dem Executor
die neue Wertigkeit mit, die dieser dann beim Lastausgleich für neue Verbindungen
verwendet.
Die Advisor überwachen die einzelnen Server am zugeordneten
Port, um Antwortzeit und Verfügbarkeit der Server zu ermitteln,
und übergeben diese Informationen an den Manager. Die
Advisor überwachen zudem, ob ein Server aktiv oder inaktiv ist.
Ohne Manager und Advisor wendet der Executor eine RoundRobin-Zeitplanung auf der Basis
der aktuellen Serverwertigkeiten an.
Lokale Server mit Dispatcher verwalten
Die Dispatcher-Maschine
kann installiert werden, ohne dass physische Änderungen am Netz erforderlich sind. Nachdem
Dispatcher eine Clientanforderung an den optimalen Server übertragen hat,
wird die Antwort mit der Weiterleitungsmethode MAC ohne Eingriff von Dispatcher direkt
vom Server an den Client gesendet.
Physische Darstellung
der Site mit einer Ethernet-Netzkonfiguration. 
Lokale und ferne Server mit Dispatcher verwalten
Die Weitverkehrsunterstützung von Dispatcher ermöglicht die Verwendung
lokaler und ferner Server (d. h. Server in anderen Teilnetzen). Die Abbildung zeigt eine Konfiguration, bei der
eine lokale Dispatcher-Maschine (Dispatcher 1) als Eingangspunkt für alle Anforderungen
dient. Sie verteilt diese Anforderungen auf ihre lokalen Server
(ServerA, ServerB, ServerC) und die ferne Dispatcher-Maschine (Dispatcher
2), die die Last auf ihre lokalen Server (ServerG, ServerH, ServerI) verteilt.
Wenn Sie die Weiterleitungsmethode NAT oder die GRE-Unterstützung von Dispatcher nutzen, können Sie
eine Weitverkehrsunterstützung auch ohne Verwendung einer Dispatcher-Maschine am fernen Standort
(wo sich
ServerD, ServerE und ServerF befinden) erreichen.
Physische Darstellung
einer Site mit einer Ethernet-Netzkonfiguration. 