
Liberty unter z/OS verwalten
Auf der Plattform z/OS können Sie Liberty mit den MVS-Bedienerbefehlen starten und stoppen sowie ändern.
Vorbereitende Schritte
- STARTED-Profile für den Serverprozess und den Angel-Prozess
- SERVER-Profile, die den Zugriff auf berechtigte z/OS-Services erlauben
![[16.0.0.4 und höher]](../ng_v16004plus.gif)
Jede logische Partition kann einen Angel-Standardprozess haben. Sie können einem Angel-Prozess einen Namen geben, wenn der Angel-Prozess mit Version 16.0.0.4 oder höher gestartet wird. Dieser Angel-Prozess kann ein zusätzlicher Angel-Prozess für diese LPAR werden. Weitere Informationen zu Angel-Prozessen und LPARs finden Sie unter Benannter Angel. Stellen Sie sicher, dass der Angel-Standardprozess, wenn möglich, mit der neuesten installierten Version von Liberty in der LPAR ausgeführt wird. Wenn eine Liberty-Serverinstanz eine Verbindung zu einem Angel-Prozess herstellt, der mit einem früheren Service-Level ausgeführt wird, sind einige Features des Servers möglicherweise nicht verfügbar.
Informationen zu diesem Vorgang
In diesem Abschnitt wird beschrieben, wie Liberty über die MVS-Konsole gestartet, geändert und gestoppt wird. Sie können den Server auch über eine Shell starten und stoppen oder eine Shell verwenden, um den Server als gestartete Task zu starten. Informationen hierzu finden Sie unter Server über die Befehlszeile starten und stoppen.
- bbgzsrv für Liberty.
- bbgzangl für den Angel-Prozess, mit dem der Zugriff auf für das System berechtigte Services auf der z/OS-Plattform gesteuert wird
Das Ziel eines Bedienerbefehls STOP ist ein Job oder eine gestartete Task.
Nachdem die JCL-Prozedurvorlagen angepasst wurden, müssen Sie in die Verknüpfung zur Systemprozedurbibliothek eingefügt werden. Der Name des Prozedurelements wird zum Argument des Befehls START.
Vorgehensweise
Beispiel
Das folgende Beispiel enthält die Prozedurvorlage für den Serverprozess (bbgzsrv). Diese Prozedur (PROC) befindet sich in einer Datei in der Verkettung der z/OS-Prozedurenbibliotheken (proclib).
//BBGZSRV PROC PARMS='defaultServer'
//*------------------------------------------------------------------
//* INSTDIR - Der Pfad zur Installation von WebSphere Liberty.
//* Dieser Pfad wird verwendet, um den Produktcode zu
//* finden, und entspricht der Umgebungsvariablen WLP_INSTALL_DIR
//* in der UNIX-Shell.
//* USERDIR - Der Pfad zum Benutzerbereich von WebSphere Liberty.
//* Dieser Pfad wird verwendet, um gemeinsam genutzte und
//* serverspezifische Konfigurationsdaten zu speichern, und
//* entspricht der Umgebungsvariablen WLP_USER_DIR in der UNIX-Shell.
//*------------------------------------------------------------------
// SET INSTDIR='/u/MSTONE1/wlp'
// SET USERDIR='/u/MSTONE1/wlp/usr'
//*------------------------------------------------------------------
//* Liberty-Server starten
//*
//* WLPUDIR - PATH-DD, der auf das Liberty-Verzeichnis "user"
//* verweist. Wenn die DD nicht zugeordnet
//* ist, wird standardmäßig das Verzeichnis wlp/usr in der
//* Installationsstruktur verwendet.
//* STDOUT - Ziel für stdout (System.out)
//* STDERR - Ziel für stderr (System.err)
//* MSGLOG - Ziel für messages.log (optional)
//* STDENV - UNIX-Anfangsumgebung - wird vom System gelesen. Die
//* Standard- und serverspezifischen Umgebungsdateien
//* der Installation werden in dieser Umgebung zusammengeführt,
//* bevor die JVM gestartet wird.
//*------------------------------------------------------------------
//STEP1 EXEC PGM=BPXBATSL,REGION=0M,
// PARM='PGM &INSTDIR./lib/native/zos/s390x/bbgzsrv &PARMS'
//WLPUDIR DD PATH='&USERDIR.'
//STDOUT DD SYSOUT=*
//STDERR DD SYSOUT=*
//*MSGLOG DD SYSOUT=*
//*STDENV DD PATH='/etc/system.env',PATHOPTS=(ORDONLY)
//*STDOUT DD PATH='&ROOT/std.out',
//* PATHOPTS=(OWRONLY,OCREAT,OTRUNC),
//* PATHMODE=SIRWXU
//*STDERR DD PATH='&ROOT/std.err',
//* PATHOPTS=(OWRONLY,OCREAT,OTRUNC),
//* PATHMODE=SIRWXU
- Das Startprogramm verwendet die STDENV DD als Anfangsumgebung, aber diese DD ist optional. Die Anfangsumgebung für den Prozess wird in der PROC definiert. Sie kann auf jeden Typ von Datei verweisen, die von Language Environment unterstützt wird, aber das Format muss mit dem erwarteten Format kompatibel sein, z. B. Extended Binary Coded Decimal Interchange Code (EBCDIC), einfache Schlüssel=Wert-Angabe ohne Erweiterung.
- Eine PATH DD, die auf ein vorhandenes Verzeichnis (und nicht auf eine Datei) verweist, ist zulässig. Wenn dieser geöffnet wird, ist der zurückgegebene FILE-Datenstrom für fldata gültig. Daher kann der HFS-Pfad, der der DD zugeordnet ist, verwendet werden. Die PROC-Vorlage definiert eine WLPUDIR PATH DD, die WLP_USER_DIR entspricht.
- WLP_USER_DIR wird mit der folgenden Logik bestimmt:
- Wenn die WLPUDIR DD definiert ist, wird der zugehörige Pfad als WLP_USER_DIR verwendet.
- Wenn WLPUDIR nicht definiert ist, aber WLP_USER_DIR in der Anfangsumgebung (aus STDENV) gesetzt ist, wird dieses Verzeichnis verwendet.
- Wenn WLPUDIR nicht definiert ist und WLP_USER_DIR nicht in der Ausgangsumgebung gesetzt ist, wird der Standardwert $WLP_INSTALL_DIR/usr verwendet.
- Die Umgebung wird mit der folgenden Logik bestimmt:
- Wenn Sie die STDENV DD-Anweisung definieren, liest Language Environment den Eintrag als Startumgebung.
- Wenn $WLP_INSTALL_DIR/etc/server.env vorhanden und lesbar ist, wird dessen Schlüssel=Wert-Inhalt gelesen und in der Umgebung gesetzt. Die Datei kann das Format ASCII oder EBCDIC haben. Kommentare beginnen mit dem Zeichen # und gehen bis zum Ende der Zeile. Werte, die Leerzeichen enthalten, können in Anführungszeichen eingeschlossen werden. Alle in dieser Datei angegebenen Umgebungseinträge überschreiben Einträge aus der Anfangsumgebung.
- Wenn $WLP_USER_DIR/servers/{serverName}/server.env vorhanden und lesbar ist, wird dessen Schlüssel=Wert-Inhalt gelesen und in der Umgebung gesetzt. Diese Datei kann ebenfalls das Format ASCII oder EBCDIC haben und unterstützt Kommentare. Alle hier angegebenen Einträge überschreiben Einträge aus der Anfangsumgebung und aus etc/server.env.
- Unabhängig von der benutzerdefinierten Umgebung werden die folgenden Einträge gesetzt: _BPXK_WLM_PROPAGATE=NO, JAVA_THREAD_MODEL=HEAVY und JAVA_PROPAGATE=NO. Wenn _EDC_PTHREAD_YIELD nicht gesetzt ist, wird dafür der Wert "-2" festgelegt.
- Nach dem Einrichten der Umgebung wird die Umgebungsvariable JAVA_HOME
mit der folgenden Logik bestimmt:
- Wenn JAVA_HOME in der Umgebung festgelegt ist, wird die zugehörige Position als JAVA_HOME verwendet.
- Wenn JAVA_HOME nicht in der Umgebung festgelegt ist, aber $WLP_INSTALL_DIR/../java64 vorhanden ist, wird $WLP_INSTALL_DIR/../java64 als JAVA_HOME verwendet.
- Wenn JAVA_HOME nicht in der Umgebung festgelegt und $WLP_INSTALL_DIR/../java64 nicht vorhanden ist, wird $WLP_INSTALL_DIR/../java als JAVA_HOME verwendet.
- Nachdem JAVA_HOME festgelegt wurde, werden JVM-Befehlszeilenoptionen
mit der folgenden Logik bestimmt:
- Wenn $WLP_USER_DIR/servers/{serverName}/jvm.options vorhanden und lesbar ist, wird dessen Inhalt gelesen. Die Datei kann das Format ASCII oder EBCDIC haben und jede Zeile der Datei muss ein einziges Java-Befehlszeilenargument enthalten. Kommentare beginnen mit dem Zeichen # und gehen bis zum Ende der Zeile.
- Wenn $WLP_USER_DIR/servers/{serverName}/jvm.options nicht vorhanden ist, aber $WLP_INSTALL_DIR/etc/jvm.options vorhanden und lesbar ist, wird dessen Inhalt gelesen. Die Datei kann das Format ASCII oder EBCDIC haben und muss ein einziges Java-Befehlszeilenargument pro Zeile enthalten. Kommentare werden unterstützt.
- Unabhängig vom Inhalt von jvm.options, sind -Dfile.encoding=iso8859-1, -javaagent:$WLP_INSTALL_DIR/lib/bootstrap-agent.jar und -classpath $WLP_INSTALL_DIR/lib/server-launcher.jar in der Befehlszeile enthalten.
- Wenn Sie Argumente an die JVM übergeben möchten, definieren
Sie die JAVAOPTS DD-Anweisung so, dass die
Java™-Befehlszeilenargumente anschließend aus dieser DD-Anweisung gelesen werden. Das folgende Beispiel zeigt eine Beispieleingabedatei:
-Xmx512m -Xms256m -Daaa.bbb.ccc=something.forsomeone
- Wenn Sie einen Liberty-Server mit einer
z/OS-Prozedur starten, können Sie den vom Serverprozess verwendeten umask-Wert anpassen.
Definieren Sie zum Anpassen des umask-Werts die Umgebungsvariablen WLP_SKIP_UMASK und _BPX_BATCH_UMASK
auf eine der folgenden Arten:
- Geben Sie die Umgebungsvariable WLP_SKIP_UMASK an. Sie können diese Variable in der Datei
server.env oder, falls Sie den Server mit einer z/OS-Prozedur starten, im STDENDV DD-Eintrag angeben. Geben Sie in der
z/OS-Prozedur die Variable _BPX_BATCH_UMASK im
STDENV DD-Eintrag an. Sie können die Variable _BPX_BATCH_UMASK nicht in der Datei
server.env angeben. Im folgenden Beispiel wird die Anpassung des umask-Werts veranschaulicht:
//STDENV DD * _BPX_BATCH_UMASK=XXXX WLP_SKIP_UMASK=TRUE /*
- Geben Sie _BPX_BATCH_UMASK=XXXX und WLP_SKIP_UMASK=TRUE in
einer in EBCDIC codierten z/OS-UNIX-Datei an.
Definieren Sie den Pfad unter dem STDENV DD-Eintrag in der z/OS-Prozedur. Im folgenden Beispiel wird die Anpassung des umask-Werts veranschaulicht:
//STDENV DD PATH='u/path/to/env/ebcdic/file',PATHOPTS=ORDONLY
- Geben Sie die Umgebungsvariable WLP_SKIP_UMASK an. Sie können diese Variable in der Datei
server.env oder, falls Sie den Server mit einer z/OS-Prozedur starten, im STDENDV DD-Eintrag angeben. Geben Sie in der
z/OS-Prozedur die Variable _BPX_BATCH_UMASK im
STDENV DD-Eintrag an. Sie können die Variable _BPX_BATCH_UMASK nicht in der Datei
server.env angeben. Im folgenden Beispiel wird die Anpassung des umask-Werts veranschaulicht:
start bbgzsrv,parms='defaultServer'
![[16.0.0.4 und höher]](../ng_v16004plus.gif)
//BBGZANGL PROC PARMS='',COLD=N,NAME=''
//*------------------------------------------------------------------
// SET ROOT='/u/MSTONE1/wlp'
//*------------------------------------------------------------------
//* Liberty-Angel-Prozess starten
//*------------------------------------------------------------------
//STEP1 EXEC PGM=BPXBATA2,REGION=0M,TIME=NOLIMIT,
// PARM='PGM &ROOT./lib/native/zos/s390x/bbgzangl COLD=&COLD NAME=X
// &NAME &PARMS'
//STDOUT DD SYSOUT=*
//STDERR DD SYSOUT=*