Workload-Management |
Beispiel BeenThere konfigurieren und ausführen |
Dieser Abschnitt beschreibt, wie Sie die in Abbildung 1 dargestellte Umgebung konfigurieren und das Beispiel BeenThere installieren und ausführen. Es wird davon ausgegangen, dass die folgende Software bereits installiert ist:
Maschinenname | Installierte Software |
web |
IBM HTTP Server Plug-in für IBM HTTP Server |
app1 | IBM WebSphere Application Server |
app2 | IBM WebSphere Application Server |
dm | IBM WebSphere Application Server Deployment Manager |
Anmerkung: Für die folgenden Anweisungen wird angenommen, dass der Webserver und der zugehörige Verwaltungsservice aktiv sind und dass eine Webserver-Definition im Deployment Manager erstellt wurde, damit die Datei plugin-cfg.xml automatisch weitergegeben wird.
Gehen Sie wie folgt vor, um der Zelle Application-Server-Knoten hinzuzufügen:
addNode <Deployment-Manager-Host>
addNode.sh <Deployment-Manager-Host>
Installationsstammverzeichnis/bin/addNode <Deployment-Mangager-Host> <Deployment-Manager-Port> -profileName <Profilname> -startingport <Port-Block>
Die Application Server können jetzt in die Zelle eingebunden werden.
Der Cluster MyWebCluster unterstützt Lastausgleich und Failover (Funktionsübernahme bei Ausfall) für Servlets.
Führen Sie die folgenden Schritte aus, um den Cluster MyWebCluster zu erstellen:
Damit haben Sie den MyWebCluster erstellt.
Der Cluster MyEJBCluster unterstützt Lastausgleich und Failover (Funktionsübernahme bei Ausfall) für Enterprise-Beans.
Führen Sie die folgenden Schritte aus, um den Cluster MyEJBCluster zu erstellen:
Anmerkung:Wenn Sie auf einer verteilten Plattform die Option "Lokalen Knoten bevorzugen" auswählen, werden Anforderungen an die Enterprise-Bean auf dem lokalen Knoten weitergeleitet, sofern diese verfügbar ist. Diese Option ist in der Beispielkonfiguration inaktiviert, um den Lastausgleich für EJB-Anforderungen zu demonstrieren.
Damit haben Sie den MyEJBCluster erstellt.
Beim Erstellen des Cluster MyWebCluster wird die Option "Eindeutige HTTP-Ports generieren" für jedes neue Cluster-Member ausgewählt. Durch Auswahl dieser Option werden HTTP-Port-Konflikte vermieden, weil für jeden der neuen Application Server ein eindeutiger Port-Wert erstellt wird.
Führen Sie die folgenden Schritte aus, um sicherzustellen, dass für jeden HTTP-Port-Wert, der dynamisch erstellt wird, ein entsprechender Hostaliaseintrag für den Host default_host konfiguriert wird:
Sie haben den virtuellen Host damit aktualisiert.
Der WebSphere-Konfigurationsservice ist für Application Server standardmäßig nicht aktiviert. Das Beispiel erfordert, dass dieser Service die Konfigurationsdateien von WebSphere Application Server programmgesteuert liest,um die Umgebungsdaten zu erhalten.
Führen Sie die folgenden Schritte aus, um den WebSphere-Konfigurationsservice zu aktivieren:
Sie haben den WebSphere-Konfigurationsservice damit aktiviert.
Führen Sie die folgenden Schritte aus, um die Datei BeenThere.ear zu installieren:
Wenn Sie das Beispiel BeenThere ohne Sicherheit verwenden möchten, können Sie diesen Abschnitt überspringen. Wenn Sie BeenThere mit Sicherheit verwenden möchten, klicken Sie hier, um Anweisungen zur Konfiguration der Sicherheit zu erhalten.
Führen Sie die folgenden Schritte aus, um die Server zu starten:
Sie haben die Server damit gestartet.
Zum Ausführen des Beispiels rufen Sie in einem Webbrowser die Webadresse von BeenThere, http://<Hostname>/wlm/BeenThere, auf. Hier steht <Hostname> für den Hostnamen oder die IP-Adresse, unter dem bzw. der der IBM HTTP Server ausgeführt wird.
In WebSphere Version 6 und höher sind neue Funktionen vorhanden, mit denen Sie den Durchsatz der gesamten Umgebung maximieren können. Dies bedeutet letztendlich, dass beim Testen des Beispiels "BeenThere" in diesen Versionen die Komponente "Workload-Management" die Anforderungen unter Umständen nicht mit strikter Einhaltung der Wertigkeiten weiterleitet. Die Wertigkeiten können zur Laufzeit geändert werden, so dass die folgenden Prüfmethoden nicht korrekt sein können. In diesen Szenarios ist die beste Methode, die ordnungsgemäße Ausführung der WLM-Funktion zu gewährleisten, die Anforderungen an alle Cluster-Member weiterzuleiten, unabhängig davon, ob diese Weiterleitung strikt nach Wertigkeit durchgeführt wird. Außerdem sind Methoden verfügbar, um diese Feedback-Mechanismen zu inaktivieren. Wenden Sie sich an die IBM Unterstützungsfunktion, wenn Sie nähere Einzelheiten benötigen.
Führen Sie die folgenden Schritte aus, um zu prüfen, ob der Lastausgleich für Webcontainer ordnungsgemäß funktioniert:
Geben Sie in einem Webbrowser die Adresse von BeenThere, http://<Hostname>/wlm/BeenThere, ein. Hier steht <Hostname> für den Hostnamen oder die IP-Adresse, unter dem bzw. der der IBM HTTP Server ausgeführt wird.
Wie Sie in dem folgenden Beispiel sehen, ändern sich die Werte in der Zusammenfassung zur Servlet-Ausführung:
Als Servlet-Knoten wird jetzt app2 anstelle von app1 angezeigt. Die Ergebnisse zeigen, dass IBM HTTP Server die HTTP-Anforderung an die anderen Member im Cluster MyWebCluster, d. h. WebServer2 in app2, verteilt hat. Eine wiederholte Ausführung des Servlet zeigt, dass sich das Lastausgleichverhalten in Bezug auf die HTTP-Anforderungen nach den konfigurierten Wertigkeiten für Cluster-Member des Cluster MyWebCluster richtet.
Sie haben die Lastausgleichkonfiguration für Webcontainer damit geprüft.
Führen Sie die folgenden Schritte aus, um zu prüfen, ob der Lastausgleich für EJB-Container ordnungsgemäß funktioniert:
Die Werte in der Zusammenfassung zur Bean-Ausführung gleichen auf einer verteilten Plattform dem folgenden Beispiel:
An diesem Beispiel sehen Sie, dass sich Lastausgleichverhalten der Enterprise-Bean nach den konfigurierten Wertigkeiten für Cluster-Member des Cluster MyEJBCluster richtet. Es sind drei Aufrufe der Enterprise-Bean in app2 für jeden in app1 ausgeführten Aufruf aktiv.
Auf der Plattform "z/OS" werden Wertigkeiten für eine gleichmäßige Verteilung von HTTP-Anforderungen verwendet, jedoch nicht für die gleichmäßige Verteilung von IIOP-Anforderungen (Internet Inter-ORB Protocol).
Sie haben die Lastausgleichkonfiguration für EJB-Container damit geprüft.
Führen Sie die folgenden Schritte aus, um sicherzustellen, dass die Member-Wertigkeiten des Bean-Cluster korrekt definiert sind.
Vergleichen Sie die Ergebnisse mit dem folgenden Beispiel:
Die Ergebnisse enthalten die Wertigkeiten für alle Member im Cluster MyEJBCluster. EJBServer1 hat die Wertigkeit 1 und EJBServer2 die Wertigkeit 3.
Sie haben die Wertigkeiten der Bean-Cluster-Member damit geprüft.
Geschafft! Sie haben jetzt den Lastausgleich in der Praxis gesehen und sichergestellt, dass das Beispiel BeenThere ordnungsgemäß funktioniert.