In diesem Kapitel wird beschrieben, was die für die Planung des Netzes zuständige Person vor der Installation und Konfiguration der Komponente CBR mit Caching Proxy berücksichtigen muss.
Dieses Kapitel enthält die folgenden Abschnitte:
Mit der Komponente CBR können Sie unter Verwendung von Caching Proxy zum Weiterleiten der Anforderung HTTP- und SSL-Datenverkehr verteilen. Mit CBR können Sie einen Lastausgleich für Server durchführen, die Sie in der CBR-Konfigurationsdatei mit cbrcontrol-Befehlen konfiguriert haben.
CBR ist dem Dispatcher hinsichtlich der Komponentenstruktur sehr ähnlich. CBR umfasst die folgenden Funktionen:
Die drei wichtigsten Funktionen der Komponente CBR (Executor, Manager und Advisor) arbeiten gemeinsam an der Verteilung der eingehenden Anforderungen auf die Server. Neben dem Verteilen von Anforderungen überwacht der Executor die Anzahl neuer und aktiver Verbindungen. Diese Informationen stellt er anschließend dem Manager zur Verfügung.
Die Komponente CBR gibt Ihnen die Möglichkeit, eine Gruppe von Servern anzugeben, die eine Anforderung auf der Basis des Abgleichs eines regulären Ausdrucks mit dem Inhalt der Clientanforderung bearbeiten. Mit CBR können Sie Ihre Site partitionieren, so dass verschiedene Inhalte oder Anwendungsdienste von unterschiedlichen Servergruppen bearbeitet werden. Diese Partitionierung ist für Clients, die auf Ihre Site zugreifen, transparent.
Eine Möglichkeit, Ihre Site zu partitionieren, besteht darin, einige Server ausschließlich für die Bearbeitung von cgi-Anforderungen und eine andere Gruppe von Servern für die Bearbeitung aller anderen Anforderungen zuzuordnen. Dies verhindert, dass die Server aufgrund der Verarbeitung umfangreicher cgi-Scripts für den normalen HTML-Datenverkehr zu langsam werden, und resultiert in einer insgesamt besseren Antwortzeit für die Clients. Mit Hilfe dieses Schemas könnten Sie auch leistungsstärkere Workstations für normale Anforderungen zuordnen. Dadurch würde die Antwortzeit für Clients verbessert, ohne dass alle Ihre Server aufgerüstet werden müssen. Sie könnten auch für cgi-Anforderungen leistungsstärkere Workstations zur Verfügung stellen.
Eine andere Möglichkeit zur Partitionierung Ihrer Site besteht darin, Clients, die auf Seiten mit erforderlicher Registrierung zugreifen, an eine Servergruppe zu verweisen, und alle anderen Anforderungen an eine zweite Servergruppe zu senden. Damit würde verhindert, dass Browser Ihrer Site Ressourcen binden, die von bereits registrierten Clients verwendet werden könnten. Außerdem könnten Sie leistungsstärkere Workstation verwenden, um Services für die registrierten Clients zur Verfügung zu stellen.
Sie könnten natürlich die oben genannten Methoden kombinieren, um eine noch größere Flexibilität und einen noch besseren Service zu erreichen.
Da CBR die Angabe mehrerer Server für jede Art von Anforderung zulässt, können die Anforderungen so verteilt werden, dass eine optimale Clientantwortzeit erreicht wird. Aufgrund der Möglichkeit, jedem Inhaltstyp mehrere Server zuzuordnen, sind Sie abgesichert, wenn eine Workstation oder ein Server ausfällt. CBR erkennt den Ausfall und verteilt die Clientanforderungen auf die übrigen Server der Gruppe.
Caching Proxy kommuniziert über die zugehörige Plug-in-Schnittstelle mit einem CBR-Prozess. Voraussetzung dafür ist, dass CBR auf der lokalen Maschine aktiv ist. Da dies zwei separate Prozesse sind, können mehrere Instanzen von Caching Proxy aktiv sein und mit einer Instanz von CBR zusammenarbeiten. Mit dieser Konfiguration können Sie die Adressen oder Funktionen unter den Caching Proxys aufteilen oder die Ressourcennutzung der Maschine verbessern, weil der Clientdatenverkehr von mehreren Caching Proxys bearbeitet wird. Die Proxy-Instanzen können, je nach den Erfordernissen des Datenverkehrs, an verschiedenen Ports empfangsbereit sein oder an eindeutige IP-Adressen eines Ports gebunden werden.
CBR überprüft zusammen mit Caching Proxy HTTP-Anforderungen anhand angegebener Regeltypen. Wenn Caching Proxy aktiv ist, werden Clientanforderungen akzeptiert und von der CBR-Komponente die besten Server abgefragt. Bei dieser Abfrage gleicht CBR die Anforderung mit einer Gruppe von Regeln mit bestimmten Prioritäten ab. Wenn eine Regel erfüllt ist, wird aus einer vorkonfigurierten Servergruppe ein geeigneter Server ausgewählt. Abschließend teilt CBR Caching Proxy mit, welcher Server ausgewählt wurde. Die Anforderung wird dann an diesen Server weitergeleitet.
Nachdem Sie einen Cluster für den Lastausgleich definiert haben, müssen Sie sicherstellen, dass es für alle Anforderungen an diesen Cluster eine Regel für die Auswahl eines Servers gibt. Wird keine Regel gefunden, die zu einer bestimmten Anforderung passt, empfängt der Client von Caching Proxy eine Fehlerseite. Das Erstellen einer in allen Fällen gültigen Regel ("always true") mit einer sehr hohen Prioritätsnummer ist der einfachste Weg zu gewährleisten, dass alle Anforderungen mit einer Regel übereinstimmen. Vergewissern Sie sich, dass die von dieser Regel verwendeten Server alle Anforderungen bearbeiten können, die nicht explizit von den Regeln mit einer kleineren Prioritätsnummer bearbeitet werden. (Anmerkung: Die Regeln mit kleinerer Prioritätsnummer werden zuerst ausgewertet.)
Weitere Informationen hierzu finden Sie im Abschnitt Regelbasierten Lastausgleich konfigurieren.
CBR mit Caching Proxy kann SSL-Übertragungen vom Client zum Proxy empfangen und Übertragungen vom Proxy zu einem SSL-Server unterstützen. Wenn Sie für einen Server der CBR-Konfiguration einen SSL-Port für den Empfang der SSL-Anforderung vom Client definieren, können Sie den Datenverkehr mit CBR auf sichere Server (SSL-Server) verteilen und die Sicherheit Ihrer Site gewährleisten.
Zusätzlich zu den Änderungen an der Datei "ibmproxy.conf" für CBR müssen Sie der Datei "ibmproxy.conf" eine Konfigurationsanweisung hinzufügen, um die SSL-Verschlüsselung für Datenverkehr vom Proxy zum Server zu aktivieren. Diese Anweisung muss das folgende Format haben:
proxy uri-Muster url-Muster Adresse
Hier ist uri-Muster ein zu suchendes Muster (z. B. /secure/*), url-Muster ein Austausch-URL (z. B. https://ClusterA/secure/*) und Adresse die Clusteradresse (z. B. ClusterA).
Die Komponente CBR mit Caching Proxy kann auch SSL-Übertragungen vom Client empfangen und die SSL-Anfrage vor der Weiterleitung an einen HTTP-Server entschlüsseln. Für den Befehl cbrcontrol server gibt es das optionale Schlüsselwort mapport, damit CBR SSL-Datenverkehr vom Client zum Proxy und HTTP-Datenverkehr vom Proxy zum Server unterstützen kann. Verwenden Sie dieses Schlüsselwort, wenn der Port auf dem Server ein anderer als der vom Client eingehende Port ist. Nachfolgend sehen Sie ein Beispiel für das Hinzufügen eines Ports mit dem Schlüsselwort mapport. Der Clientport ist 443 (SSL) und der Serverport 80 (HTTP):
cbrcontrol server add Cluster:443 mapport 80
Die Portnummer für mapport kann eine beliebige positive ganze Zahl sein. Die Standardportnummer ist der Wert des vom Client eingehenden Ports.
Da CBR in der Lage sein muss, Empfehlungen zu einer HTTP-Anforderung für einen am Port 443 (SSL) konfigurierten Server zu geben, wird der spezielle Advisor ssl2http bereitgestellt. Dieser Advisor wird am Port 443 gestartet (an dem Port, an dem Anforderungen vom Client eingehen) und gibt Empfehlungen zu den für diesen Port konfigurierten Servern. Wenn zwei Cluster konfiguriert sind und jeder der Cluster den Port 443 und die Server mit einem anderen mapport konfiguriert hat, kann eine Instanz des Advisors den entsprechenden Port öffnen. Nachfolgend ist ein Beispiel dieser Konfiguration aufgeführt:
Executor Cluster1 Port:443 Server1 mapport 80 Server2 mapport 8080 Cluster2 Port:443 Server3 mapport 80 Server4 mapport 8080 Manager Advisor ssl2http 443