Red Hat Cluster Suite: Konfiguration und Management eines Cluster | ||
---|---|---|
Zurück | Kapitel 12. Konfigurieren der LVS-Router mit Piranha Configuration Tool | Nach vorne |
Das VIRTUAL SERVERS-Panel zeigt Informationen zu jedem augenblicklich definierten virtuellen Server an. Jeder Eintrag in der Tabelle zeigt den Status des virtuellen Servers, den Servernamen, die dem Server zugewiesenen virtuelle IP, die Netmask der virtuellen IP, die Nummer des Ports, zu welchem der Server kommuniziert, das verwendete Protokoll, und die virtuelle Geräte-Schnittstelle.
Jeder im VIRTUAL SERVERS-Panel angezeigte Server, kann in darauffolgenden Bildschirmen oder Unterabschnitten konfiguriert werden.
Um einen Service hinzuzufügen, klicken Sie den ADD-Button. Um einen Service zu entfernen, selektieren Sie den Radio-Button neben dem entsprechenden virtuellen Server und klicken dann DELETE.
Um einen virtuellen Server in der Tabelle ein oder auszuschalten, selektieren Sie den Radio-Button und klicken dann den (DE)ACTIVATE-Button.
Nach dem Hinzufügen eines virtuellen Servers, können Sie diesen konfigurieren, indem Sie den nebenstehenden Radio-Button selektieren, und dann den EDIT-Button klicken, um den VIRTUAL SERVER Unterabschnitt anzuzeigen.
Der VIRTUAL SERVER Unterabschnitt, in Abbildung 12-6 gezeigt, erlaubt Ihnen einen individuellen virtuellen Server zu konfigurieren. Links zu Unterabschnitten, welche speziell auf diesen virtuellen Server bezogen sind, sind am oberen Rand der Seite gelegen. Bevor Sie jegliche auf diesen virtuellen Server bezogenen Unterabschnitte konfigurieren, füllen Sie jedoch erst diese Seite vollständig aus, und klicken Sie den ACCEPT-Button.
Geben Sie einen beschreibenden Namen ein, welcher den virtuellen Server identifiziert. Dieser Name ist nicht der Hostname für die Maschine, also machen Sie diesen beschreibend und einfach identifizierbar. Sie können sogar das Protokoll mit einbeziehen, welches vom virtuellen Server benutzt wird, wie HTTP.
Geben Sie die Nummer des Ports an, welchen die Service-Applikation abhören wird. Da dieses Beispiel für HTTP-Services ist, ist Port 80 verwendet.
Wählen Sie zwischen UDP und TCP im Drop-Down Menü. Web-Server benutzen normalerweise das TCP Protokoll, weswegen dies im Beispiel verwendet wurde.
Geben Sie die schwebende IP-Adresse des virtuellen Servers in diesem Feld an.
Setzen Sie die Netmask für diesen virtuellen Server mit dem Drop-Down Menü.
Geben Sie hier keine Firewall-Markierungen ein, ausser Sie fassen Multi-Port Protokolle zusammen oder erzeugen Multi-Port virtuelle Server für separate, jedoch verwandte Protokolle. In diesem Beispiel, hat der oben angegebene virtuelle Server eine Firewall Mark von 80, da wir Verbindungen zu HTTP auf Port 80 und zu HTTPS auf Port 443, unter Verwendung der Firewall-Markierung 80, zusammen fassen. Wenn dies mit Persistenz kombiniert wird, haben wir eine Methode, welche sicherstellt, dass Anforderungen von Benutzern zu beiden, normalen und sicheren Web-Seiten zum gleichen realen Server weitergeleitet werden, und dadurch der Status erhalten bleibt.
![]() | Warnung |
---|---|
Die Eingabe einer Firewall-Markierung in dieses Feld, erlaubt IPVS Pakete mit dieser Firewall-Markierung zu erkennen und diese gleich zu behandeln. Sie müssen allerdings weitere Konfigurationen ausserhalb von Piranha Configuration Tool vornehmen, um diese Firewall-Markierungen zuzuweisen. Sehen Sie Abschnitt 11.3 für Anleitungen zum Erzeugen von Multi-Port Services und Abschnitt 11.4 zum Einrichten eines hochverfügbaren virtuellen FTP-Servers. |
Geben Sie den Namen des Netzwerk-Geräts ein, zu welchem Sie die schwebende IP-Adresse, welche im Feld Virtual IP Address definiert ist, binden wollen.
Sie sollten einen Alias der öffentlichen schwebenden IP-Adresse für die Ethernet-Schnittstelle erzeugen, welche zum öffentlichen Netzwerk verbindet. In diesem Beispiel ist das öffentliche Netzwerk auf der eth0-Schnittstelle, weswegen eth0:1 als Gerätename eingegeben werden sollte.
Geben Sie einen ganzzahligen Wert an, welcher die Zeit in Sekunden bestimmt, die der aktive LVS-Router wartet, bevor dieser versucht einen realen Server, nach Ausfall, wieder in den Cluster aufzunehmen.
Geben Sie einen ganzzahligen Wert an, welcher die Zeit in Sekunden bestimmt, die gewartet wird, bevor ein realer Server als ausgefallen betrachtet und aus dem Cluster herausgenommen wird.
Wenn der Quiesce server Radio-Button ausgewählt ist, dann wird jedes Mal, wenn ein neuer realer Server Online geht, die Least-Connections Tabelle zurückgesetzt, sodass der aktive LVS-Router Anforderungen so weiterleitet, als ob alle Server gerade zum Cluster hinzugefügt wurden. Diese Option verhindert, dass der neue Server mit einer hohen Anzahl von Verbindungen überflutet wird.
Der LVS-Router kann die Last auf den verschiedenen realen Servern überwachen, entweder durch die Benutzung von rup oder von ruptime. Sollten Sie rup aus dem Drop-Down Menü auswählen, muss jeder der realen Server den rstatd Service ausführen. Sollten Sie ruptime wählen, muss jeder reale Server den rwhod Service ausführen.
![]() | Achtung |
---|---|
Lastüberwachung ist nicht das selbe wie Lastausgleich und kann zur Folge haben, dass das Scheduling-Verhalten schwer zu berechnen ist, sollten gewichtete (weighted) Scheduling-Algorithmen verwendet werden. Auch ist zu beachten, dass für die Benutzung der Lastüberwachung, alle realen Server im Cluster Linux-Maschinen sein müssen. |
Wählen Sie Ihren bevorzugten Scheduling-Algorithmus aus dem Drop-Down Menü. Der Default ist Weighted least-connection. Für mehr Information zu Scheduling-Algorithmen, siehe Abschnitt 9.3.1.
Sollte ein Administrator persistente Verbindungen zu den virtuellen Servern während Client-Transaktionen benötigen, geben Sie in dieses Feld die Anzahl von Sekunden ein, welche eine Verbindung inaktiv bleiben darf, bevor diese als getrennt betrachtet wird.
![]() | Wichtig |
---|---|
Sollten Sie einen Wert in das oben angegebene Feld Firewall Mark eingetragen haben, sollten Sie auch einen Wert für Persistenz angeben. Stellen Sie auch sicher, dass, wenn Sie Firewall-Markierungen und Persistenz zusammen benutzen, der Wert für Persistenz für jeden der virtuellen Server, welcher die gleiche Firewall-Markierung benutzt, der selbe ist. Für mehr zur Verwendung von Persistenz und Firewall-Markierungen, sehen Sie Abschnitt 9.5. |
Um Persistenz auf ein bestimmtes Subnetz einzuschränken, wählen Sie die entsprechende Netmask aus dem Drop-Down Menü.
![]() | Anmerkung |
---|---|
Vor der Einführung von Firewall-Markierungen, war auf ein Subnetz eingeschränkte Persistenz ein grober Weg der Zusammenfassung von Verbindungen. Heute ist es am besten, Persistenz in Verbindung mit Firewall-Markierungen zu verwendet, um das gleiche zu erzielen. |
![]() | Warnung |
---|---|
Nach dem Fertigstellen dieser Seite, klicken Sie den ACCEPT-Button, um sicherzustellen, dass Sie keine Änderungen verlieren, wenn Sie ein neues Panel wählen. |
Das Klicken auf den Link zum Unterabschnitt REAL SERVER, am oberen Rand des Panels, wird den Unterabschnitt EDIT REAL SERVER anzeigen. Dieser zeigt den Status der physischen Server-Hosts für einen bestimmten virtuellen Service an.
Klicken Sie den ADD-Button, um einen neuen Server hinzuzufügen. Um einen bestehenden Server zu entfernen, wählen Sie den nebenstehenden Radio-Button und klicken Sie den DELETE-Button. Klicken Sie den EDIT-Button, um das EDIT REAL SERVER-Panel, wie in Abbildung 12-8 gezeigt, zu laden.
Dieses Panel besteht aus drei Feldern:
Ein beschreibender Name für den realen Server.
![]() | Tipp |
---|---|
Dieser Name ist nicht der Hostname der Maschine. Machen Sie diesen beschreibend und einfach identifizierbar. |
Die IP-Adresse des realen Servers. Da der abhörende Port bereits für den virtuellen Server angegeben ist, hängen Sie hier keine Port-Nummer an.
Ein ganzzahliger Wert, welche die Kapazität des Hosts, relativ zu den Kapazitäten der anderen Hosts in der Gruppe angibt. Dieser Wert kann beliebig gewählt werden, solange dieser in der richtigen Relation zu den anderen realen Servern im Cluster steht. Für mehr zur Gewichtung von Servern, sehen Sie Abschnitt 9.3.2.
![]() | Warnung |
---|---|
Nach dem Fertigstellen dieser Seite, klicken Sie den ACCEPT-Button, um sicherzustellen, dass Sie keine Änderungen verlieren, wenn Sie ein neues Panel wählen. |
Klicken Sie auf den Link MONITORING SCRIPTS am oberen Bildschirmrand. Der Unterabschnitt EDIT MONITORING SCRIPTS erlaubt dem Administrator eine Send/Expect String-Sequenz anzugeben, um zu prüfen, dass der Service für den virtuellen Server auf jedem der realen Server funktionstüchtig ist. Dies ist auch der Ort, an dem der Administrator benutzerdefinierte Skripte angeben kann, um Services zu überprüfen, welche sich dynamisch ändernde Daten benötigen.
Für eine weiter fortgeschrittene Überprüfung von Services, können Sie dieses Feld verwenden, um den Pfad zu einem Skript zur Service-Überprüfung anzugeben. Diese Funktionalität ist besonders Hilfreich für Services, welche sich dynamisch ändernde Daten benötigen, wie HTTPS oder SSL.
Um diese Funktionalität zu Verwenden, müssen Sie ein Skript schreiben, welches textuelle Antworten zurück gibt, dieses Ausführbar machen, und den Pfad dieses Skripts im Feld Sending Program angeben.
![]() | Tipp |
---|---|
Um sicherzustellen, dass jeder Server in der Gruppe der realen Server überprüft wird, benutzen Sie das %h-Token, nach dem Pfad zum Skript, im Feld Sending Program. Dieses Token wird durch die IP-Adresse jedes realen Servers ersetzt, wenn das Skript vom nanny-Daemon aufgerufen wird. |
Folgend ist ein Beispiels-Skript, an welchem Sie sich während dem Erstellen eines externen Skripts zur Service-Überwachung orientieren können.
#!/bin/sh TEST=`dig -t soa example.com @$1 | grep -c dns.example.com if [ $TEST != "1" ]; then echo "OK else echo "FAIL" fi |
![]() | Anmerkung |
---|---|
Wird ein externes Programm im Feld Sending Program angegeben, dann wird das Feld Send ignoriert. |
Geben Sie in diesem Feld einen String für den nanny-Daemon an, welcher zu jedem der realen Server gesendet werden kann. Bei Default, ist dieses Feld für HTTP eingerichtet. Sie können diesen Wert Ihren Anforderungen entsprechend anpassen. Wenn Sie dieses Feld leer lassen, wird der nanny-Daemon versuchen den Port zu öffnen, und annehmen, dass der Service läuft, sollte dies erfolgreich sein.
Nur eine Send-Sequenz ist in diesem Feld erlaubt, und diese kann lediglich printbare ASCII-Zeichen, sowie die folgenden Escape-Zeichen enthalten:
\n für Zeilenumbruch.
\r für Zeilenvorschub.
\t für Tabulator.
\ um das darauffolgende Zeichen im Text-Modus zu übernehmen.
Geben Sie eine textuelle Antwort ein, welche der Server zurückgibt, sollte dieser funktionstüchtig sein. Wenn Sie Ihr eigenes Sending-Programm geschrieben haben, geben Sie hier die Antwort ein, welche Sie für den Erfolgsfall implementiert haben.
![]() | Tipp |
---|---|
Um festzustellen, was für einen gegebenen Service gesendet werden soll, können Sie eine telnet-Verbindung zum Port auf dem realen Server aufbauen und sehen, was zurück gegeben wird. FTP, zum Beispiel, gibt nach dem Aufbauen einer Verbindung 220 zurück, demnach könnte quit im Feld Send und 220 im Feld Expect angegeben werden. |
![]() | Warnung |
---|---|
Nach dem Fertigstellen dieser Seite, klicken Sie den ACCEPT-Button, um sicherzustellen, dass Sie keine Änderungen verlieren, wenn Sie ein neues Panel wählen. |
Haben Sie erst einmal die virtuellen Server mit Hilfe von Piranha Configuration Tool konfiguriert, müssen Sie nun die entsprechenden Konfigurationsdateien auf den Backup LVS-Router kopieren. Sehen Sie Abschnitt 12.7 für Details.
Zurück | Zum Anfang | Nach vorne |
REDUNDANCY | Nach oben | Synchronisieren der Konfigurationsdateien |