Lesen Sie vor Ausführung der in diesem Kapitel beschriebenen Schritte Planung für Dispatcher. Dieses Kapitel erläutert das Erstellen einer Basiskonfiguration für die Komponente Dispatcher von Load Balancer.
Vergewissern Sie sich vor Ausführung der Konfigurationsschritte in dieser Tabelle, dass die Dispatcher-Maschine und alle Servermaschinen mit dem Netz verbunden sind, gültige IP-Adressen haben und sich gegenseitig über Pingsignale erreichen können.
Task | Beschreibung | Referenzinformationen |
---|---|---|
Dispatcher-Maschine konfigurieren. |
Lastausgleichskonfiguration definieren. |
Dispatcher-Maschine konfigurieren |
Am Lastausgleich beteiligte Maschinen konfigurieren. | Definieren Sie einen Aliasnamen auf der Loopback-Einheit. Überprüfen Sie, ob eine zusätzliche Route vorhanden ist und löschen Sie zusätzliche Routen. | Servermaschinen für Lastausgleich konfigurieren |
Es gibt vier grundlegende Methoden für die Konfiguration des Dispatchers:
Dies ist die direkte Methode für die Konfiguration des Dispatchers. Die Werte der Befehlsparameter müssen in englischen Zeichen eingegeben werden. Die einzige Ausnahme hiervon bilden Hostnamen (die in den Befehlen cluster, server und highavailability verwendet werden) und (die in Dateibefehlen verwendeten) Dateinamen.
Starten Sie dem Dispatcher wie folgt von der Befehlszeile aus:
Für die Parameter des Befehls dscontrol können Sie die Kurzform verwenden. Sie müssen nur die eindeutigen Buchstaben der Parameter eingeben. Beispiel: Wenn Sie Hilfe für den Befehl zum Speichern von Dateien aufrufen möchten, können Sie dscontrol he f an Stelle von dscontrol help file angeben.
Wenn Sie die Befehlszeilenschnittstelle starten möchten, setzen Sie den Befehl dscontrol ab, um die Eingabeaufforderung dscontrol aufzurufen.
Sie können die Befehlszeilenschnittstelle verlassen, indem Sie den Befehl exit oder quit absetzen.
Die Befehle zum Konfigurieren von Dispatcher können in eine Konfigurationsscriptdatei eingegeben und dann zusammen ausgeführt werden. Weitere Informationen finden Sie im Abschnitt Beispielkonfigurationsdateien für Load Balancer.
dscontrol file appendload meinScript
dscontrol file newload meinScript
Führen Sie den folgenden Befehl aus, um die aktuelle Konfiguration in einer Scriptdatei (z. B. "Sicherungsscript") zu speichern:
dscontrol file save Sicherungsscript
Dieser Befehl speichert die Konfigurationsscriptdatei im folgenden Verzeichnis:
Abb. 38 zeigt ein Beispiel für die grafische Benutzerschnittstelle (GUI) mit allgemeinen Anweisungen.
Gehen Sie zum Starten der GUI wie folgt vor:
dsserver
Zum Konfigurieren von Dispatcher über die grafische Benutzerschnittstelle (GUI) müssen Sie zunächst in der Baumstruktur Dispatcher auswählen. Sie können den Executor und den Manager starten, nachdem Sie eine Verbindung zu einem Host hergestellt haben. Sie können auch Cluster mit Ports und Servern erstellen und Advisor für den Manager starten.
Mit der GUI können Sie dieselben Tasks wie mit dem Befehl dscontrol ausführen. Wenn Sie beispielsweise einen Cluster von der Befehlszeile aus konfigurieren möchten, müssten Sie den Befehl dscontrol cluster add Cluster eingeben. Zum Definieren eines Clusters von der GUI aus müssen Sie mit der rechten Maustaste auf "Executor" klicken und im daraufhin angezeigten Popup-Menü mit der linken Taste auf Cluster hinzufügen klicken. Geben Sie die Clusteradresse im Dialogfenster ein und klicken Sie dann auf OK.
Bereits vorhandene Dispatcher-Konfigurationsdateien können Sie mit der im Popup-Menü Host angezeigten Option Neue Konfiguration laden (zum vollständigen Ersetzen der derzeitigen Konfiguration) oder An aktuelle Konfiguration anfügen (zum Aktualisieren der derzeitigen Konfiguration) laden. Sie sollten Ihre Dispatcher-Konfiguration von Zeit zu Zeit mit der Option Konfigurationsdatei sichern unter in einer Datei sichern. Diese Option ist ebenfalls im Popup-Menü Host enthalten. Das in der GUI befindliche Menü Datei bietet Ihnen die Möglichkeit, die aktuellen Hostverbindungen in einer Datei zu speichern oder Verbindungen aus vorhandenen Dateien für alle Komponenten von Load Balancer wiederherzustellen.
Die Konfigurationsbefehle können auch auf einem fernen System ausgeführt werden. Weitere Informationen hierzu finden Sie im Abschnitt Remote Method Invocation (RMI).
Wenn Sie von der GUI aus einen Befehl ausführen möchten, gehen Sie wie folgt vor: Heben Sie in der GUI-Baumstruktur den Hostknoten hervor und wählen Sie im Popup-Menü "Host" Befehl senden... aus. Geben Sie im Befehlseingabefeld den gewünschten Befehl ein, z. B. executor report. In einem Fenster sehen Sie die Ergebnisse und die Historie der in der aktuellen Sitzung ausgeführten Befehle.
Sie können die Hilfe aufrufen, indem Sie auf das Fragezeichen in der oberen rechten Ecke des Fensters von Load Balancer klicken.
Weitere Informationen zur Verwendung der GUI finden Sie in Anhang A. Allgemeine Anweisungen zur GUI.
Führen Sie folgende Schritte aus, wenn Sie den Konfigurationsassistenten verwenden:
dsserver
Der Assistent führt Sie schrittweise durch den Prozess zum Erstellen einer Basiskonfiguration für die Komponente Dispatcher. Der Assistent stellt Ihnen Fragen zu Ihrem Netz. Sie erhalten eine Anleitung für die Konfiguration eines Clusters, bei der der Dispatcher den Datenverkehr auf eine Gruppe von Servern verteilt.
Vor dem Konfigurieren der Dispatcher-Maschine müssen Sie (auf AIX-, HP-UX-, Linux- oder Solaris-Systemen) als Root oder (auf Windows-Systemen) als Administrator registriert sein.
Der Load Balancer kann auf allen unterstützten Plattformen einen verknüpften Server haben. Dies bedeutet, dass sich Load Balancer physisch auf einer Servermaschine befinden kann, für die er einen Lastausgleich durchführt.
Wenn Sie die Weiterleitungsmethode mac anwenden möchten, benötigen Sie für die Dispatcher-Maschine mindestens zwei gültige IP-Adressen. Bei Verwendung der Weiterleitungsmethode cbr oder nat sind mindestens drei gültige IP-Adressen erforderlich:
Diese IP-Adresse ist die primäre IP-Adresse der Dispatcher-Maschine und wird als NFA (Non-Forwarding Address) bezeichnet. Dies ist standardmäßig dieselbe Adresse wie die vom Befehl hostname zurückgegebene. Benutzen Sie diese Adresse, wenn Sie zu Verwaltungszwecken (z. B. für eine Fernkonfiguration über Telnet oder für den Zugriff auf den SNMP-Subagenten) eine Verbindung zur Maschine herstellen möchten. Kann die Dispatcher-Maschine bereits andere Maschinen im Netz über Pingsignale erreichen, sind keine weiteren Aktionen zum Konfigurieren der NFA erforderlich.
Eine Clusteradresse ist eine Adresse, die einem Hostnamen zugeordnet ist (beispielsweise www.IhreFirma.com). Diese IP-Adresse wird von einem Client benutzt, um die Verbindung zu den Servern in einem Cluster herzustellen. An dieser Adresse führt der Dispatcher den Lastausgleich durch.
Der Dispatcher verwendet die Rückkehradresse beim Lastausgleich für die Clientanforderung auf dem Server als Quellenadresse. Auf diese Weise wird sichergestellt, dass der Server das Paket an die Dispatcher-Maschine zurückgibt und es nicht direkt an den Client sendet. (Der Dispatcher leitet das IP-Paket dann an den Client weiter.) Sie müssen den Wert für die Rückkehradresse beim Hinzufügen des Servers angeben. Die Rückkehradresse kann nur geändert werden, wenn Sie den Server entfernen und dann erneut hinzufügen.
Die Anzahl aktiver Verbindungen zwischen Load Balancer und dem Back-End-Server wird durch die Anzahl der Rückkehradressen beschränkt, die definiert sind. Load Balancer verwendet nur Ports, die auf der Rückkehradresse basieren, und keine Ports, die auf der Kombination von Rückkehradresse und Server basieren. Wenn alle verfügbaren Ports belegt sind, schlagen weitere Verbindungen fehl. Verwenden Sie in einer ausgelasteten Umgebung mehrere Rückkehradressen, um einen Engpass bei den verfügbaren Ports zu vermeiden.
Nur Solaris-Systeme:
Editieren Sie beispielsweise die Datei /opt/ibm/edge/lb/servers/ibmlb.conf wie folgt, um die Standardeinstellung zu ändern:
Wenn Sie vorhaben, zwei 100-Mbit/s-Ethernet-Adapter zu verwenden, muss die Datei ibmlb.conf eine Zeile mit der Einheitenangabe eri enthalten.
Falls Sie einen 10-Mbit/s-Ethernet-Adapter und einen 100-Mbit/s-Ethernet-Adapter verwenden möchten, müssen Sie in der Datei ibmlb.conf zwei Zeilen angeben, eine Zeile für die Einheit le und eine für die Einheit eri.
ifconfig -a
Beispiel: Sie erhalten die folgende Ausgabe:
lo0: flags=2001000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4,VIRTUAL>
mtu 8232 index 1 inet 127.0.0.1 netmask ff000000
eri0: flags=1000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4>
mtu 1500 index 2 inet 9.42.93.208
netmask fffffc00 broadcast 9.42.95.255 ether 0:3:ba:2d:24:45
In diesem Fall bearbeiten Sie die Datei ibmlb.conf wie folgt:
eri -1 0 ibmlb
Sind die beiden Cluster X und Y für einen der in ibmlb.conf aufgelisteten Adapter beispielsweise für die Komponente CBR konfiguriert, werden die Cluster X und Y aus der Konfiguration entfernt, sobald der Befehl dscontrol executor start oder dscontrol executor stop abgesetzt wird. Dieses Ergebnis ist unter Umständen nicht erwünscht. Wenn die Cluster X und Y im Script goAliases konfiguriert sind, werden Sie nach dem Starten oder Stoppen des Dispatcher-Executors automatisch rekonfiguriert.
Vergewissern Sie sich, dass die IP-Weiterleitung für das TCP/IP-Protokoll nicht aktiviert ist.
Abb. 15 zeigt ein Beispiel für einen mit einem Cluster, zwei Ports und drei Servern kofigurierten Dispatcher.
Hilfe zu den in dieser Prozedur verwendeten Befehlen finden Sie in Befehlsreferenz für Dispatcher und CBR.
Eine Beispielkonfigurationsdatei finden Sie im Abschnitt Beispielkonfigurationsdateien für Load Balancer.
AIX-, HP-UX-, Linux- oder Solaris-Systeme: Geben Sie zum Starten der Serverfunktion dsserver ein.
Windows-Systeme: Die Serverfunktion wird automatisch als Dienst gestartet.
Geben Sie zum Starten der Executor-Funktion den Befehl dscontrol executor start ein. Sie können jetzt auch verschiedene Executor-Einstellungen ändern. Weitere Informationen finden Sie in Befehlsreferenz für Dispatcher und CBR.
Die NFA wird benutzt, um zu Verwaltungszwecken (z. B. für die Verwendung von Telnet oder SMTP) eine Verbindung zur Maschine herzustellen. Standardmäßig ist diese Adresse der Hostname.
Geben Sie zum Definieren der NFA den Befehl dscontrol executor set nfa IP-Adresse ein oder editieren Sie die Beispielkonfigurationsdatei. Die IP-Adresse ist entweder ein symbolischer Name oder die IP-Adresse.
Der Dispatcher verteilt die Last der an die Clusteradresse gesendeten Anforderungen auf die für die Ports dieses Clusters konfigurierten Server.
Der Cluster ist entweder der symbolische Name, die Adresse in der Schreibweise mit Trennzeichen oder die spezielle Adresse 0.0.0.0, die einen Platzhaltercluster definiert. Setzen Sie zum Definieren eines Clusters den Befehl dscontrol cluster add ab. Setzen Sie zum Definieren von Clusteroptionen den Befehl dscontrol cluster set ab oder verwenden Sie die GUI zum Absetzen von Befehlen. Platzhaltercluster können verwendet werden, wenn mehrere IP-Adressen für den Lastausgleich eingehender Pakete in Frage kommen. Weitere Informationen hierzu finden Sie in den Abschnitten Platzhaltercluster zum Zusammenfassen von Serverkonfigurationen verwenden, Platzhaltercluster für den Lastausgleich von Firewalls verwenden und Platzhaltercluster mit Caching Proxy für transparente Weiterleitung verwenden.
Nachdem der Cluster definiert wurde, müssen Sie normalerweise die Clusteradresse auf einer der Netzschnittstellenkarten der Dispatcher-Maschine konfigurieren. Setzen Sie dazu den Befehl dscontrol executor configure Clusteradresse ab. Damit wird nach einem Adapter mit einer vorhandenen Adresse gesucht, die zu demselben Teilnetz wie die Clusteradresse gehört. Anschließend wird der Adapterkonfigurationsbefehl des Betriebssystems für die Clusteradresse unter Verwendung des gefundenen Adapters und der Netzmaske für die auf diesem Adapter vorhandene Adresse abgesetzt. Beispiel:
dscontrol executor configure 204.67.172.72
In manchen Fällen soll die Clusteradresse möglicherweise nicht konfiguriert werden. Dies gilt für Cluster, die zu einem Bereitschaftsserver im Modus für hohe Verfügbarkeit hinzugefügt wurden, oder für Cluster, die zu einem Weitverkehrs-Dispatcher hinzugefügt wurden, der als ferner Server dient. Sie müssen den Befehl executor configure auch nicht ausführen, wenn Sie im Standalone-Modus das Beispielscript goIdle verwenden. Informationen zum Script goIdle finden Sie im Abschnitt Scripts verwenden.
In seltenen Fällen haben Sie möglicherweise eine Clusteradresse, die mit keinem Teilnetz für vorhandene Adressen übereinstimmt. Verwenden Sie in diesem Fall die zweite Form des Befehls executor configure und geben Sie explizit den Schnittstellennamen und die Netzmaske an. Verwenden Sie dscontrol executor configure Clusteradresse Schnittstellenname Netzmaske.
Beispiele:
dscontrol executor configure 204.67.172.72 en0 255.255.0.0
(AIX-Systeme)
dscontrol executor configure 204.67.172.72 eth0:1 255.255.0.0
(Linux-Systeme)
dscontrol executor configure 204.67.172.72 eri0 255.255.0.0
(Solaris-Systeme)
dscontrol executor configure 204.67.172.72 en1 255.255.0.0
(Windows-Systeme)
Für die zweite Form des Befehls executor configure müssen Sie auf Windows-Systemen den zu verwendenden Schnittstellennamen ermitteln. Befindet sich in Ihrer Maschine nur eine einzige Ethernet-Karte, lautet der Schnittstellenname en0. Befinden sich in Ihrer Maschine mehrere Karten, müssen Sie die Zuordnung der Karten festlegen. Gehen Sie wie folgt vor:
In der Anzeige erscheint eine Ausgabe. Suchen Sie in den Zeilen, die auf Number of NIC records folgen, nach der IP-Adresse Ihrer Load-Balancer-Maschine, um den für die Load-Balancer-Konfiguration zu verwendenden Schnittstellennamen zu bestimmen.
Die IP-Adresse Ihrer Load-Balancer-Maschine wird wie folgt aufgelistet: ia->ia_addr. Der zugehörige Schnittstellenname wird mit ifp->if_name angegeben.
Die mit dem Befehl executor configure zugewiesenen Schnittstellennamen werden den in diesem Befehl aufgelisteten Schnittstellennamen zugeordnet.
Nachdem Sie diese Zuordnungsinformationen erhalten haben, können Sie auf der Netzschnittstelle einen Aliasnamen für die Clusteradresse festlegen.
Auf Linux- oder UNIX-Systemen führt der Befehl "executor configure" ifconfig-Befehle aus.
Bei Verwendung von bindungsspezifischen Serveranwendungen, die an eine Liste von IP-Adressen ohne die IP-Adresse des Servers gebunden werden, verwenden Sie an Stelle von ifconfig den Befehl arp publish, um auf der Load-Balancer-Maschine dynamisch eine IP-Adresse festzulegen. Beispiel:
arp -s <Cluster> <MAC-Adresse von Load Balancer> pub
Zum Definieren eines Ports können Sie den Befehl dscontrol port add Cluster:Port eingeben, die Beispielkonfigurationsdatei editieren oder die GUI verwenden. Cluster ist entweder der symbolische Name oder die IP-Adresse. Port ist die Nummer des Ports, den Sie für dieses Protokoll verwenden. Sie können jetzt auch verschiedene Porteinstellungen ändern. Sie müssen alle Server für einen Port definieren und konfigurieren. Weitere Informationen finden Sie in Befehlsreferenz für Dispatcher und CBR.
Mit der Portnummer 0 (null) wird ein Platzhalterport angegeben. Dieser Port akzeptiert Datenverkehr, der nicht für einen der definierten Ports eines Clusters bestimmt ist. Der Platzhalterport wird zum Konfigurieren von Regeln und Servern für alle Ports verwendet. Diese Funktion kann auch verwendet werden, wenn Sie eine identische Server-/Regelkonfiguration für mehrere Ports haben. Der Datenverkehr an einem Port könnte dann die Lastausgleichsentscheidungen für Datenverkehr an anderen Ports beeinflussen. Weitere Informationen zur Verwendung eines Platzhalterports finden Sie im Abschnitt Platzhalterport für die Übertragung von Datenverkehr mit nicht konfiguriertem Port verwenden.
Geben Sie zum Definieren einer am Lastausgleich beteiligten Servermaschine den Befehl dscontrol server add Cluster:Port:Server ein. Sie können auch die Beispielkonfigurationsdatei editieren oder die GUI verwenden. Cluster und Server sind entweder symbolische Namen oder IP-Adressen. Port ist die Nummer des Ports, den Sie für dieses Protokoll verwenden. Für einen Port eines Clusters müssen Sie mehrere Server definieren, um einen Lastausgleich durchführen zu können.
Bindungsspezifische Server: Wenn die Komponente Dispatcher die Last auf bindungsspezifische Server verteilt, müssen die Server so konfiguriert werden, dass sie an die Clusteradresse gebunden werden. Da der Dispatcher Pakete ohne Änderung der Ziel-IP-Adresse weiterleitet, enthalten die beim Server eingehenden Pakete noch immer die Clusteradresse als Ziel. Wenn ein Server für die Bindung an eine andere IP-Adresse als die Clusteradresse konfiguriert ist, kann der Server für den Cluster bestimmte Anforderungen nicht akzeptieren.
Mit dem Befehl netstat -an können Sie feststellen, ob der Server bindungsspezifisch ist. Achten Sie auf den Server:Port. Wenn der Server nicht bindungsspezifisch ist, gibt der Befehl 0.0.0.0:80 zurück. Andernfalls sehen Sie eine Adresse wie 192.168.15.103:80.
Verknüpfung mehrerer Adressen: In einer verknüpften Konfiguration muss die Adresse der verknüpften Servermaschine nicht mit der NFA übereinstimmen. Wenn Ihre Maschine mit mehreren IP-Adressen definiert wurde, können Sie eine andere Adresse verwenden. Für die Komponente Dispatcher muss die verknüpfte Servermaschine mit dem Befehl dscontrol server als verknüpft definiert werden. Weitere Informationen zu verknüpften Servern finden Sie im Abschnitt Verknüpfte Server verwenden.
Weitere Informationen zur Syntax des Befehls dscontrol server können Sie dem Abschnitt dscontrol server — Server konfigurieren entnehmen.
Die Managerfunktion verbessert den Lastausgleich. Soll der Manager gestartet werden, geben Sie den Befehl dscontrol manager start ein, editieren Sie die Beispielkonfigurationsdatei oder verwenden Sie die GUI.
Die Advisor liefern dem Manager weitere Informationen über die Fähigkeit der am Lastausgleich beteiligten Servermaschinen, auf Anforderungen zu antworten. Advisor sind protokollspezifisch. Soll beispielsweise der HTTP-Advisor gestartet werden, setzen Sie den folgenden Befehl ab:
dscontrol advisor start http Port
Eine Liste
der Advisor mit den zugehörigen Standardports finden Sie in
Befehlsreferenz für Dispatcher und CBR. Eine Beschreibung der einzelnen Advisor
können Sie dem Abschnitt Liste der Advisor entnehmen.
Wenn Sie Advisor starten, können Sie den Stellenwert (die Gewichtung) ändern, der den in Entscheidungen für den Lastausgleich einfließenden Advisorinformationen beigemessen wird. Setzen Sie zum Festlegen von Clusterproportionen den Befehl dscontrol cluster set Cluster proportions ab. Weitere Informationen hierzu finden Sie im Abschnitt Proportionale Gewichtung von Statusinformationen.
Führen Sie die nachstehenden Schritte aus, wenn eine der folgenden Bedingungen erfüllt ist:
Wird die Weiterleitungsmethode mac verwendet, verteilt der Dispatcher die Last nur auf Server, bei denen der Loopback-Adapter mit einer zusätzlichen IP-Adresse konfiguriert werden kann, da der Back-End-Server nicht auf ARP-Anforderungen (Adressauflösungsprotokoll) reagiert. Führen Sie die Schritte in diesem Abschnitt aus, um die am Lastausgleich beteiligten Servermaschinen zu konfigurieren.
Damit die am Lastausgleich beteiligten Servermaschinen arbeiten können, müssen Sie die Loopback-Einheit (die häufig als lo0 bezeichnet wird) auf die Clusteradresse setzen (oder bevorzugt einen Aliasnamen für die Clusteradresse angeben). Bei Verwendung der Weiterleitungsmethode mac ändert die Komponente Dispatcher nicht die Ziel-IP-Adresse des TCP/IP-Pakets, bevor sie dieses an eine TCP-Servermaschine weiterleitet. Wird die Loopback-Einheit auf die Clusteradresse gesetzt oder diese Adresse als Aliasname der Loopback-Einheit festgelegt, akzeptieren die am Lastausgleich beteiligten Servermaschinen ein an die Clusteradresse gerichtetes Paket.
Falls Ihr Betriebssystem Aliasnamen auf Netzschnittstellen unterstützt (wie es bei AIX-, HP-UX-, Linux-, Solaris- oder Windows-Systemen der Fall ist), sollten Sie auf der Loopback-Einheit einen Aliasnamen für die Clusteradresse festlegen. Ein Betriebssystem mit Unterstützung für Aliasnamen bringt den Vorteil, dass die am Lastausgleich beteiligten Servermaschinen für mehrere Clusteradressen konfiguriert werden können.
WICHTIGER HINWEIS: Lesen Sie die Informationen zu Linux-Systemen im Abschnitt Alternativen für die Festlegung eines Loopback-Aliasnamens unter Linux bei Verwendung der Load-Balancer-Weiterleitungsmethode mac.
Wenn das Betriebssystem Ihres Servers keine Aliasnamen unterstützt, müssen Sie die Loopback-Einheit auf die Clusteradresse setzen.
Verwenden Sie den in Tabelle 2 angegebenen betriebssystemspezifischen Befehl, um die Adresse der Loopback-Einheit oder einen Aliasnamen für die Einheit zu definieren.
AIX |
|
HP-UX |
Anmerkung:
Bei Verwendung von bindungsspezifischen
Serveranwendungen, die an eine Liste von
IP-Adressen ohne die IP-Adresse
des Servers gebunden werden, verwenden Sie an Stelle von ifconfig
den Befehl arp publish,
um auf der Load-Balancer-Maschine
dynamisch eine IP-Adresse festzulegen.
Beispiel:
|
Linux | Wählen Sie einen der folgenden Befehle aus:
|
OS/2 | ifconfig lo Clusteradresse |
OS/390 | Loopback-Aliasnamen auf einem OS/390-System konfigurieren
|
Solaris |
|
Windows |
|
Unter einigen Betriebssystemen wurde möglicherweise eine Standardroute erstellt, die entfernt werden muss.
route print
WICHTIGER HINWEIS: Unter Windows 2003 müssten alle zusätzlichen Routen ignoriert werden. Falls nach dem Konfigurieren des Aliasnamens Probleme beim Routing auftreten, entfernen Sie den Aliasnamen und fügen Sie ihn dann mit einer anderen Netzmaske wieder hinzu.
netstat -nr
Beispiel für Windows:
Aktive Routen:
Netzadresse Netzmaske Gateway-Adresse Schnittstelle Metrik
0.0.0.0 0.0.0.0 9.67.128.1 9.67.133.67 1
9.0.0.0 255.0.0.0 9.67.133.158 9.67.133.158 1
9.67.128.0 255.255.248.0 9.67.133.67 9.67.133.67 1
9.67.133.67 255.255.255.255 127.0.0.1 127.0.0.1 1
9.67.133.158 255.255.255.255 127.0.0.1 127.0.0.1 1
9.255.255.255 255.255.255.255 9.67.133.67 9.67.133.67 1
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1
224.0.0.0 224.0.0.0 9.67.133.158 9.67.133.158 1
224.0.0.0 224.0.0.0 9.67.133.67 9.67.133.67 1
255.255.255.255 255.255.255.255 9.67.133.67 9.67.133.67 1
9.0.0.0 255.0.0.0 9.67.133.158 9.67.133.158 1
Die zusätzliche Route muss gelöscht werden. Löschen Sie die zusätzliche Route mit dem in Tabelle 3 angegebenen betriebssystemspezifischen Befehl.
Beispiel: Geben Sie zum Löschen einer zusätzlichen Route wie in der Beispielauflistung "Aktive Routen" für Schritt 2 Folgendes ein:
route delete 9.0.0.0 9.67.133.158
HP-UX | route delete Clusteradresse Clusteradresse |
Windows | route delete Netzadresse Clusteradresse (an einer
MS-DOS-Eingabeaufforderung)
Anmerkung:
Die zusätzliche Route müssen Sie bei jedem Neustart des Servers
löschen. Unter Windows 2003 können keine Routen gelöscht werden. Alle zusätzlichen Routen müssten ignoriert werden. Falls nach dem Konfigurieren des Aliasnamens Probleme beim Routing auftreten, entfernen Sie den Aliasnamen und fügen Sie ihn dann mit einer anderen Netzmaske wieder hinzu. |
Wenn Sie für das in Abb. 15 gezeigte Beispiel eine Servermaschine mit AIX konfigurieren, würde der Befehl wie folgt lauten:
route delete -net 204.0.0.0 204.67.172.72
Führen Sie zum Überprüfen der Konfiguration eines Back-End-Servers auf einer anderen Maschine im selben Teilnetz bei nicht aktivem Load Balancer und nicht konfiguriertem Cluster die folgenden Schritte aus:
arp -d Cluster
ping Cluster
Sie sollten keine Antwort empfangen.
Falls Sie eine Antwort auf das Pingsignal
erhalten, vergewissern Sie sich,
dass Sie nicht mit ifconfig die Schnittstelle auf die Clusteradresse gesetzt haben. Vergewissern Sie sich, dass keine Maschine einen veröffentlichten
Eintrag arp für die Clusteradresse hat.arp -a
Die Ausgabe des Befehls sollte die MAC-Adresse Ihres Servers enthalten. Setzen Sie den folgenden Befehl ab:
arp -s Cluster MAC-Adresse des Servers
arp -d Cluster
Einige Linux-Versionen setzen für jede auf der Maschine konfigurierte IP-Adresse auf allen Schnittstellen der Maschine eine ARP-Antwort ab. Linux kann außerdem für ARP-Abfragen who-has ausgehend von allen auf der Maschine vorhandenen IP-Adressen eine ARP-Quellen-IP-Adresse auswählen, ohne dabei die Schnittstellen zu berücksichtigen, für die diese Adressen konfiguriert sind. Dies führt dazu, dass der gesamte Clusterdatenverkehr auf unkontrollierte Weise an nur einen Server weitergeleitet wird.
Wenn Sie die Dispatcher-Weiterleitungsmethode mac verwenden, müssen Sie durch einen Mechanismus sicherstellen, dass die Stacks der Back-End-Server an den Cluster adressierten Datenverkehr akzeptieren können. Wenn sowohl die hohe Verfügbarkeit als auch die Verknüpfung aktiviert ist, gehört zu diesen Back-End-Servern auch die verknüpfte Bereitschaftsmaschine für hohe Verfügbarkeit.
In den meisten Fällen müssen Sie auf der Loopback-Einheit einen Aliasnamen für die Clusteradresse festlegen. Bei Back-End-Servern muss daher auf der Loopback-Einheit ein Aliasname für den Cluster definiert sein. Falls Sie mit hoher Verfügbarkeit und Verknüpfung arbeiten, müssen Sie auf der Loopback-Einheit der Bereitschaftsserver für Lastausgleich Clusteraliasnamen festlegen.
Um sicherzustellen, dass Linux-Systeme Adressen nicht auf der Loopback-Einheit zugänglich machen, können Sie eine der folgenden vier Lösungen nutzen, die Linux-Systeme mit der Dispatcher-Weiterleitungsmethode mac kompatibel machen.
# sysctl -w net.ipv4.conf.all.hidden=1 net.ipv4.conf.lo.hidden=1
Anschließend können Sie ganz normal Aliasnamen für Cluster festlegen. Beispiel:
# ifconfig lo:1 $CLUSTER_ADDRESS netmask 255.255.255.255 up
# sysctl -w net.ipv4.conf.all.arp_ignore=3
net.ipv4.conf.all.arp_announce=2
Anschließend müssen Sie die Aliasnamen für die Cluster mit folgendem Befehl
definieren:
# ip addr add $CLUSTER_ADDRESS/32 scope host dev lo
In Konfigurationen mit hoher Verfügbarkeit muss ein ähnlicher Befehl in den go*-Scripts enthalten sein. # iptables -t nat -A PREROUTING -d $CLUSTER_ADDRESS -j REDIRECT
Dieser Befehl veranlasst Linux-Systeme, für jedes Paket ein DNAT (Destination NAT) durchzuführen, bei dem die Clusteradressen in die Schnittstellenadressen
konvertiert werden. Die Kehrseite dieser Methode ist jedoch, dass bei den Verbindungen pro Sekunde
ein Durchsatzrückgang von ca. 6,4 % zu verzeichnen ist. Diese Methode funktioniert nur bei unterstützten Stock Distributionen.
Es ist weder ein Kernel-Modul noch ein Patch-Build oder eine Patch-Installation erforderlich.# modprobe noarp
# noarpctl add $CLUSTER_ADDRESS Adresse_der_primären_NIC
Hier steht Adresse_der_primären_NIC für eine Adresse in demselben Teilnetz wie die Clusteradresse. Anschließend können Sie ganz normal Aliasnamen für Cluster festlegen. Beispiel:
# ifconfig lo:1 Clusteradresse netmask 255.255.255.255 up