Dieser Artikel beschreibt das Einrichten einer Client/Server-Konfiguration mit hoher Verfügbarkeit, die
die Funktionalität von zwei Load-Balancer-Komponenten (Dispatcher
und CBR) mit der von Caching Proxy verbindet.
Serverkonfiguration
Beispiel für
eine Client/Server-Konfiguration mit hoher Verfügbarkeit unter Verwendung von Dispatcher,
CBR und Caching Proxy
Diese Abbildung beschreibt das folgende Szenario:
- EdgeServer1: primäre Dispatcher-Maschine (hohe Verfügbarkeit) an demselben Standort (kollokiert) wie
CBR und Caching Proxy, die die Last auf Web-Server verteilt
- EdgeServer2: Standby-Dispatcher-Maschine (hohe Verfügbarkeit) an demselben Standort (kollokiert) wie
CBR und Caching Proxy
- EdgeServer3: Server mit CBR und Caching Proxy.
- WebServerA, WebServerB, WebServerC: Back-End-Web-Servers
Die Abbildung zeigt eine grundlegende Darstellung mehrerer Server
(EdgeServer1, EdgeServer2, EdgeServer3) mit Lastausgleich auf mehrere Back-End-Web-Server.
Die Komponente CBR verwendet Caching Proxy, um auf dem Inhalt des URL basierende Anforderungen
an die Back-End-Web-Server weiterzuleiten. Die Komponente Dispatcher
verteilt die Last der CBR-Komponenten auf alle Edge-Server. Die Dispatcher-Funktion für
hohe Verfügbarkeit stellt sicher, dass Anforderungen an die Back-End-Server auch dann möglich sind, wenn
die primäre Maschine mit hoher Verfügbarkeit
(EdgeServer1) ausfällt.
Richtlinien für die Basiskonfiguration
- Konfigurieren Sie Caching Proxy auf allen Edge-Servern identisch. Zur Verbesserung der
Zugriffsmöglichkeiten auf die Webseiten der Back-End-Server sollten Sie
Caching Proxy für das Speicher-Caching konfigurieren. Durch Einrichten von Caching Proxy
können die EdgeServers Webseiten zwischenspeichern, die häufiger angefordert werden. Weitere Informationen zum Einrichten von
Caching Proxy finden Sie im
Administratorhandbuch für Caching Proxy.
- Definieren Sie für die Load-Balancer-Komponenten CBR und Dispatcher identische
Clusteradressen und Ports.
- Konfigurieren Sie die Komponente CBR auf allen Edge-Servern gleich. Verwenden Sie an den Ports, die Sie
für den Cluster definieren möchten, die Web-Server A, B und C. Weitere Informationen zum Konfigurieren von
Content Based Routing finden Sie in den Artikeln zu diesem Thema.
- Konfigurieren Sie die Komponente Dispatcher auf den Edge-Servern 1 und
2 identisch. Definieren Sie an den Ports, die als Cluster-Ports festgelegt werden sollen, an denen Dispatcher einen Lastausgleich
durchführt, alle Edge-Server als zu verwendende Server. Weitere Informationen zur Konfiguration von Dispatcher finden Sie in den Artikeln zu diesem Thema.
- Konfigurieren Sie den Edge-Server 1 als primäre Maschine mit hoher Verfügbarkeit und
den Edge-Server 2 als Standby-Maschine (Sicherung) mit hoher Verfügbarkeit. Weitere Informationen finden Sie im Artikel zur hohen Verfügbarkeit.
- Wenn Sie vermeiden möchten, dass die Back-End-Serveradressen auf einem Client im URL
angezeigt werden, müssen Sie für jede Back-End-Serveradresse
die Anweisung ReversePass
in der Konfigurationsdatei von Caching Proxy setzen.
- Um sicherzustellen, dass das Webspeicher-Caching effizient genutzt wird, setzen Sie die Anweisung Caching
in der Konfigurationsdatei
von Caching Proxy auf ON, und erhöhen Sie den
Wert für die Anweisung CacheMemory
auf die erforderliche Größe.
- Beispielzeilen zu den Schritten 1 und 2:
Caching ON
CacheMemory 128000 K
ReversePass /* http://websrvA.company.com/* http://www.company.com/*
- Legen Sie auf der Netzschnittstellenkarte für
EdgeServer1 und auf den Loopback-Einheiten der übrigen Edge-Server einen Aliasnamen für die Clusteradresse
fest.
- Wenn Sie die Edge-Server auf einer Linux-Plattform verwenden, könnten Sie einen Patch-Code für den Linux-Kernel
installieren oder eine alternative Methode nutzen, um auf der Loopback-Einheit einen Aliasnamen festzulegen. .
- Wenn Sie CBR mit Inhaltsregeln verwenden, sollten Sie die Portaffinität (stickytime) nicht verwenden,
weil die Inhaltsregeln
während der Verarbeitung von Anforderungen für die Back-End-Web-Werver nicht
erfüllt werden.
Beispielkonfigurationsdateien
Die folgenden Beispielkonfigurationsdateien ähneln den Dateien, die erstellt werden, wenn Sie eine
Edge-Components-Konfiguration wie in der Abbildung dargestellt einrichten.
Die Beispielkonfigurationsdateien sind Dateien für die Load-Balancer-Komponenten
Dispatcher und CBR. In der Beispielkonfiguration wird für jede Edge-Server-Maschine
ein Ethernet-Adapter verwendet, und alle Adressen befinden sich innerhalb eines privaten
Teilnetzes. In den Beispielkonfigurationsdateien sind für die angegebenen Maschinen
die folgenden IP-Adressen angegeben:
- EdgeServer1 (primärer Edge-Server mit hoher Verfügbarkeit): 192.168.1.10
- EdgeServer2 (Ausweich-Edge-Server mit hoher Verfügbarkeit): 192.168.1.20
- EdgeServer3 (Edge-Server für Web-Caching): 192.168.1.30
- Website-Clusteradresse: 192.168.1.11
- WebServers A-C (Back-End-Web-Server): 192.168.1.71, 192.168.1.72
und 192.168.1.73
Beispielkonfigurationsdatei für die Komponente Dispatcher
auf dem primären Edge-Server mit hoher Verfügbarkeit
dscontrol executor start
dscontrol cluster add 192.168.1.11 primaryhost 192.168.1.10
dscontrol port add 192.168.1.11@80
dscontrol server add 192.168.1.11@80@edgeserver1 address 192.168.1.10
dscontrol server add 192.168.1.11@80@edgeserver2 address 192.168.1.20
dscontrol server add 192.168.1.11@80@edgeserver3 address 192.168.1.30
dscontrol manager start manager.log 10004
dscontrol highavailability heartbeat add 192.168.1.10 192.168.1.20
dscontrol highavailability backup add primary auto 4567
Beispielkonfigurationsdatei für die Komponente CBR auf den
Edge-Servern
cbrcontrol set loglevel 1
cbrcontrol executor start
cbrcontrol cluster add 192.168.1.11
cbrcontrol port add 192.168.1.11@80
cbrcontrol server add 192.168.1.11@80@webserverA address 192.168.1.71
cbrcontrol server add 192.168.1.11@80@webserverB address 192.168.1.72
cbrcontrol server add 192.168.1.11@80@webserverC address 192.168.1.73
cbrcontrol rule add 192.168.1.11@80@webA_rule type content
pattern (URI=*WSA*)|(URI=*wsA*) priority 21
cbrcontrol rule useserver 192.168.1.11@80@webA_rule webserverA
cbrcontrol rule add 192.168.1.11@80@webB_rule type content
pattern (URI=/WS_B*) priority 22
cbrcontrol rule useserver 192.168.1.11@80@webB_rule webserverB
cbrcontrol rule add 192.168.1.11@80@webC_rule type content
pattern URI=*webC* priority 23
cbrcontrol rule useserver 192.168.1.21@80@webC_rule webserverC