Beispiel BeenThere konfigurieren und ausführen


Erste Schritte
Application-Server-Knoten hinzufügen
Webcontainer-Cluster erstellen
EJB-Container-Cluster erstellen
Virtuellen Host aktualisieren
WebSphere-Konfigurationsservice aktivieren
Datei BeenThere.ear installieren
Sicherheit konfigurieren (optional)
Server starten
Beispiel ausführen
Beispielkonfiguration prüfen


Erste Schritte

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.



Application-Server-Knoten hinzufügen

Gehen Sie wie folgt vor, um der Zelle Application-Server-Knoten hinzuzufügen:


  1. Starten Sie den Deployment Manager.
  2. Geben Sie auf einer der Maschinen, auf der ein Application Server installiert ist, in der Befehlszeile den folgenden Befehl ein (Installationsstammverzeichnis/bin muss in der Umgebungsvariablen PATH enthalten sein. Installationsstammverzeichnis steht für das Installationsstammverzeichnis des Basisprodukts WebSphere Application Server):

    Auf Windows-Plattformen:
    addNode <Deployment-Manager-Host>

    Auf Linux- und UNIX-Plattformen:
    addNode.sh <Deployment-Manager-Host>

    Auf iSeries-Plattformen:
    Installationsstammverzeichnis/bin/addNode <Deployment-Mangager-Host> <Deployment-Manager-Port> -profileName <Profilname> -startingport <Port-Block>

    wobei:
    <Deployment-Manager-Host> steht für den Namen des Host, auf dem der Deployment Manager ausgeführt wird.
    <Deployment-Manager-Port> ist der SOAP-Connector-Port für den Deployment Manager.
    <Profilname> steht für den Profilnamen des Application Server, der dem Deployment Manager hinzugefügt werden soll.
    <Port-Block> bezeichnet einen Block nicht verwendeter Ports. Ein Port-Block wird verwendet, um Port-Konflikte in einer Umgebung mit mehreren Instanzen zu vermeiden.

  3. Wiederholen Sie diese Prozedur auf der Maschine, auf der die zweite Instanz von WebSphere Application Server installiert ist.

Die Application Server können jetzt in die Zelle eingebunden werden.



Webcontainer-Cluster erstellen

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:


  1. Rufen Sie die Administrationskonsole in einem Browser mit der Webadresse http://<Hostname>:9060/ibm/console auf. Hier steht <Hostname> für den Hostnamen oder die IP-Adresse, unter dem bzw. der der Deployment Manager ausgeführt wird.
  2. Klicken Sie in der Administrationskonsole auf Server > Cluster.
  3. Klicken Sie auf Neu.
  4. Geben Sie im Feld "Cluster-Name" den Wert MyWebCluster ein.
  5. Klicken Sie auf Weiter.
  6. Geben Sie die folgenden Werte ein:
  7. Klicken Sie auf Weiter.
  8. Geben Sie die folgenden Werte ein:
  9. Klicken Sie auf Anwenden.
  10. Klicken Sie auf Weiter.
  11. Klicken Sie auf Fertig stellen.
  12. Klicken Sie oben in der Hauptanzeige der Administrationskonsole auf Speichern.
  13. Wählen Sie das Kontrollkästchen Änderungen mit Knoten synchronisieren aus.
  14. Klicken Sie auf Speichern.

Damit haben Sie den MyWebCluster erstellt.



EJB-Container-Cluster erstellen

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:


  1. Klicken Sie auf Server > Cluster.
  2. Klicken Sie auf Neu.
  3. Geben Sie im Feld "Cluster-Name" den Wert MyEJBCluster ein.
  4. Wählen Sie das Kontrollkästchen Bevorzugung des lokalen Knotens aktiviert ab.

    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.

  5. Klicken Sie auf Weiter.
  6. Geben Sie die folgenden Werte ein:
  7. Klicken Sie auf Weiter.
  8. Geben Sie die folgenden Werte ein:
  9. Klicken Sie auf Anwenden.
  10. Klicken Sie auf Weiter.
  11. Klicken Sie auf Fertig stellen.
  12. Klicken Sie oben in der Hauptanzeige der Administrationskonsole auf Speichern.
  13. Klicken Sie auf Speichern.

Damit haben Sie den MyEJBCluster erstellt.



Virtuellen Host aktualisieren

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:


  1. Klicken Sie in der Administrationskonsole auf Server > Anwendungsserver > WebServer1 > Webcontainer-Einstellungen > Transportketten für Webcontainer > WCInboundDefault.
  2. Notieren Sie sich die Werte für Host und Port für den Eintrag, für den SSL inaktiviert ist.
  3. Klicken Sie auf Umgebung > Virtuelle Hosts > default_host > Hostaliasnamen.
  4. Überprüfen Sie, ob die Liste mit den Hostaliasnamen den Hostnamen und den Port aus Schritt 2 enthält. Falls die Werte nicht aufgeführt sind, führen Sie die folgenden Schritte aus:
    1. Klicken Sie auf Neu.
    2. Geben Sie den zuvor notierten Hostnamen und Port ein.
    3. Klicken Sie auf Anwenden.
    4. Klicken Sie oben in der Hauptanzeige der Administrationskonsole auf Speichern.
    5. Klicken Sie auf Speichern.
  5. Wiederholen Sie diese Prozedur für WebServer2.

Sie haben den virtuellen Host damit aktualisiert.



WebSphere-Konfigurationsservice aktivieren

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:


  1. Klicken Sie auf Server > Anwendungsserver > WebServer1 > Serverinfrastruktur > Verwaltung > Verwaltungsservices > Benutzerdefinierte Merkmale.
  2. Klicken Sie auf Neu.
  3. Geben Sie die folgenden Werte ein:
  4. Klicken Sie auf Anwenden.
  5. Klicken Sie oben in der Hauptanzeige der Administrationskonsole auf Speichern.
  6. Klicken Sie auf Speichern.
  7. Wiederholen Sie diese Prozedur für WebServer2.

Sie haben den WebSphere-Konfigurationsservice damit aktiviert.



Datei BeenThere.ear installieren

Führen Sie die folgenden Schritte aus, um die Datei BeenThere.ear zu installieren:


  1. Klicken Sie in der Administrationskonsole auf Anwendungen > Neue Anwendung installieren.
  2. Wählen Sie Remote File System und anschließend Durchsuchen... aus.
  3. Wählen Sie den Knoten für den Deployment Manager aus.
  4. Wählen Sie die Datei <Installationsstammverzeichnis>/samples/lib/BeenThere/BeenThere.ear aus. Hier steht <Installationsstammverzeichnis> für das Installationsstammverzeichnis des Deployment Manager.
  5. Klicken Sie auf OK.
  6. Klicken Sie auf Weiter.
  7. Stellen Sie sicher, dass im Feld "Virtueller Host" der Name des virtuellen Standardhost für Webmodule und default_host angegeben sind.
  8. Klicken Sie auf Weiter.
  9. Klicken Sie auf Weiter.
  10. Wählen Sie den Schritt Module Servern zuordnen aus.
  11. Wählen Sie in der Liste "Cluster und Server" den Cluster MyWebCluster und den Webserver aus.
  12. Wählen Sie das Modul BeenThere WAR aus.
  13. Klicken Sie auf Anwenden.
  14. Wählen Sie in der Liste "Cluster und Server" den Cluster MyEJBCluster und den Webserver aus.
  15. Wählen Sie das Modul BeenThere EJB aus.
  16. Klicken Sie auf Anwenden.
  17. Klicken Sie auf Schritt 8 (Zusammenfassung).
  18. Klicken Sie auf Fertig stellen.
  19. Klicken Sie auf In Master-Konfiguration speichern.
  20. Klicken Sie auf Speichern.


Sicherheit konfigurieren (optional)

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.



Server starten

Führen Sie die folgenden Schritte aus, um die Server zu starten:


  1. Klicken Sie auf Server > Cluster.
  2. Wählen Sie die Cluster MyWebCluster und MyEJBCluster aus.
  3. Klicken Sie auf Starten.

Sie haben die Server damit gestartet.



Beispiel ausführen

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.





Beispielkonfiguration prüfen

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:


  1. 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.

  2. Notieren Sie die Werte aus der Zusammenfassung zur Servlet-Ausführung. Im Folgenden sehen Sie ein Beispiel für diese Zusammenfassung:

  3. Laden Sie die Seite BeenThere erneut im Browser.

    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:


  1. Wählen Sie die Option Display servlet and bean run summaries für das Servlet BeenThere aus.
  2. Geben Sie im Feld Bean invocations eine 7 ein.
  3. Klicken Sie auf Run.

    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.


  1. Wählen Sie die Option Display bean cluster member weights für die Ausführung des Servlet BeenThere aus.
  2. Klicken Sie auf Run.

    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.