z/OS での Liberty の管理
z/OS® プラットフォームでは、MVS™ オペレーター・コマンドを使用して、Liberty を始動、停止、または変更できます。
始める前に
- サーバー・プロセスおよびエンジェル・プロセスの STARTED プロファイル
- 許可 z/OS サービスへのアクセスを許可する SERVER プロファイル
![[16.0.0.4 and later]](../ng_v16004plus.gif)
各 LPAR には、1 つのデフォルト・エンジェル・プロセスを含めることができます。エンジェルが V16.0.0.4 以降で開始されている場合、エンジェルに名前を付けることができます。そのエンジェルは、その LPAR 上の追加エンジェル・プロセスになることができます。エンジェルおよび LPAR について詳しくは、名前付きエンジェルを参照してください。可能であれば、デフォルト・エンジェル・プロセスが、LPAR 上の最新のインストール済みレベルの Liberty で実行されている状態にしてください。Liberty サーバー・インスタンスが、以前のサービス・レベルで実行されているエンジェルに接続した場合、サーバーの一部の機能が使用可能でないことがあります。
このタスクについて
このトピックでは、MVS コンソールを使用して、Liberty を始動、変更、および停止する方法について説明します。また、シェルからサーバーを始動および停止する、シェルを使用して開始タスクとしてサーバーを始動することもできます。 『コマンド行からのサーバーの始動と停止』を参照してください。
- Liberty の bbgzsrv。
- エンジェル・プロセス用の bbgzangl。これは、z/OS プラットフォームでシステム許可サービスへのアクセスを制御するために必要になります。
オペレーター STOP コマンドのターゲットは、ジョブまたは始動タスクです。
JCL プロシージャー・テンプレートは、カスタマイズした後に、システム・プロシージャー・ライブラリー連結に配置する必要があります。プロシージャー・メンバーの名前は、START コマンドの引数になります。
手順
例
以下の例では、サーバー・プロセス (bbgzsrv) のプロシージャー・テンプレートを示します。この PROC は、z/OS proclib 連結のデータ・セットにあります。
//BBGZSRV PROC PARMS='defaultServer'
//*------------------------------------------------------------------
//* INSTDIR - the path to the WebSphere Liberty install.
//* This path is used to find the product code and is
//* equivalent to the WLP_INSTALL_DIR environment variable
//* in the Unix shell.
//* USERDIR - the path to the WebSphere Liberty user area.
//* This path is used to store shared and server specific
//* configuration information and is equivalent to the
//* WLP_USER_DIR environment variable in the Unix shell.
//*------------------------------------------------------------------
// SET INSTDIR='/u/MSTONE1/wlp'
// SET USERDIR='/u/MSTONE1/wlp/usr'
//*------------------------------------------------------------------
//* Start the Liberty server
//*
//* WLPUDIR - PATH DD that points to Liberty's "user"
//* directory. If the DD is not allocated, the user
//* directory location defaults to the wlp/usr directory
//* in the install tree.
//* STDOUT - Destination for stdout (System.out)
//* STDERR - Destination for stderr (System.err)
//* MSGLOG - Destination for messages.log (optional)
//* STDENV - Initial Unix environment - read by the system. The
//* installation default and server specific server
//* environment files will be merged into this environment
//* before the JVM is launched.
//*------------------------------------------------------------------
//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
- ランチャーは STDENV DD を初期環境として使用しますが、この DD はオプションです。プロセスの初期環境は、PROC で定義されます。Language Environment® でサポートされる任意のタイプのデータ・セットを指すことができますが、フォーマットは期待されるフォーマットとの互換性がなければなりません。例えば、拡張 2 進化 10 進コード (EBCDIC)、単純な key=value、拡張なしです。
- 既存のディレクトリー (ファイルではない) を指す PATH DD は許可されます。その DD をオープンすると、返される FILE ストリームは fldata に対して有効であるため、DD に関連付けられた HFS パスを使用できます。PROC テンプレートは、WLP_USER_DIR に相当するものを表す WLPUDIR PATH DD を定義します。
- WLP_USER_DIR は、以下のロジックによって決定されます。
- WLPUDIR DD が定義されている場合は、関連付けられたパスが WLP_USER_DIR として使用されます。
- WLPUDIR は定義されていないが WLP_USER_DIR が初期環境で (STDENV から) 設定されている場合は、それが使用されます。
- WLPUDIR が定義されておらず、WLP_USER_DIR も初期環境で設定されていない場合は、$WLP_INSTALL_DIR/usr のデフォルト値が使用されます。
- 環境は、以下のロジックによって決定されます。
- STDENV DD を定義する場合、Language Environment はエントリーを初期環境として読み取ります。
- $WLP_INSTALL_DIR/etc/server.env が存在し、読み取り可能な場合は、その key=value の内容が読み取られて環境に設定されます。ファイルは ASCII または EBCDIC にすることができます。コメントはポンド記号 (#) で始まり、行末までです。空白が含まれる値は、二重引用符で囲んで配置できます。このファイルで指定されたすべての環境エントリーは、初期環境のエントリーをオーバーライドします。
- $WLP_USER_DIR/servers/{serverName}/server.env が存在し、読み取り可能な場合は、その key=value の内容が読み取られて環境に設定されます。このファイルも ASCII または EBCDIC にすることができ、コメントがサポートされます。 ここで指定されたすべてのエントリーは、初期環境および etc/server.env のエントリーをオーバーライドします。
- ユーザーが指定した環境に関係なく、エントリー _BPXK_WLM_PROPAGATE=NO, JAVA_THREAD_MODEL=HEAVY および JAVA_PROPAGATE=NO が明示的に設定されます。_EDC_PTHREAD_YIELD が設定されていない場合は、-2 に設定されます。
- 環境の設定後は、JAVA_HOME は、以下のロジックによって決定されます。
- JAVA_HOME が環境で設定されている場合は、そのロケーションが JAVA_HOME として使用されます。
- JAVA_HOME が環境で設定されていないが $WLP_INSTALL_DIR/../java64 が存在する場合は、$WLP_INSTALL_DIR/../java64 が JAVA_HOME として使用されます。
- JAVA_HOME が環境で設定されておらず、$WLP_INSTALL_DIR/../java64 も存在しない場合は、$WLP_INSTALL_DIR/../java が JAVA_HOME として使用されます。
- JAVA_HOME の決定後は、JVM コマンド行オプションが、以下のロジックによって決定されます。
- $WLP_USER_DIR/servers/{serverName}/jvm.options が存在し、読み取り可能な場合は、その内容が読み取られます。ファイルは ASCII または EBCDIC にすることができ、ファイルの各行は、単一の java コマンド行引数にする必要があります。 コメントはポンド記号 (#) で始まり、行末までです。
- $WLP_USER_DIR/servers/{serverName}/jvm.options が存在しないが $WLP_INSTALL_DIR/etc/jvm.options が存在し、読み取り可能な場合は、その内容が読み取られます。ファイルは ASCII または EBCDIC にすることができ、1 行につき 1 つの java コマンド行引数が含まれている必要があります。コメントはサポートされます。
- jvm.options の内容に関係なく、-Dfile.encoding=iso8859-1、-javaagent:$WLP_INSTALL_DIR/lib/bootstrap-agent.jar、および -classpath $WLP_INSTALL_DIR/lib/server-launcher.jar がコマンド行で指定されます。
- 引数を JVM に渡す場合は、JAVAOPTS DD ステートメントを定義して、Java™ コマンド行引数が次にこの DD から読み取られるようにします。以下の例は、サンプル入力ファイルを示しています。
-Xmx512m -Xms256m -Daaa.bbb.ccc=something.forsomeone
- Liberty サーバーを
z/OS プロシージャーで始動する場合、サーバー・プロセスで使用される umask をカスタマイズできます。umask をカスタマイズするには、WLP_SKIP_UMASK 環境変数と _BPX_BATCH_UMASK 環境変数を以下のいずれかの方法で定義します。
- WLP_SKIP_UMASK 環境変数を指定します。この変数は server.env ファイルで指定できます。あるいは、z/OS プロシージャーでサーバーを始動する場合、STDENDV DD エントリーの下にこの変数を指定することも可能です。z/OS プロシージャーでは、STDENV DD エントリーの下に _BPX_BATCH_UMASK 変数を指定してください。_BPX_BATCH_UMASK 変数を server.env ファイル内で指定することはできません。以下の例は、umask 値のカスタマイズのサンプルを示しています。
//STDENV DD * _BPX_BATCH_UMASK=XXXX WLP_SKIP_UMASK=TRUE /*
- _BPX_BATCH_UMASK=XXXX と WLP_SKIP_UMASK=TRUE の両方を、EBCDIC エンコードされた z/OS
UNIX ファイルで指定します。z/OS プロシージャーにおいて、STDENV DD エントリーの下にパスを定義してください。以下の例は、umask 値のカスタマイズのサンプルを示しています。
//STDENV DD PATH='u/path/to/env/ebcdic/file',PATHOPTS=ORDONLY
- WLP_SKIP_UMASK 環境変数を指定します。この変数は server.env ファイルで指定できます。あるいは、z/OS プロシージャーでサーバーを始動する場合、STDENDV DD エントリーの下にこの変数を指定することも可能です。z/OS プロシージャーでは、STDENV DD エントリーの下に _BPX_BATCH_UMASK 変数を指定してください。_BPX_BATCH_UMASK 変数を server.env ファイル内で指定することはできません。以下の例は、umask 値のカスタマイズのサンプルを示しています。
start bbgzsrv,parms='defaultServer'
![[16.0.0.4 and later]](../ng_v16004plus.gif)
//BBGZANGL PROC PARMS='',COLD=N,NAME=''
//*------------------------------------------------------------------
// SET ROOT='/u/MSTONE1/wlp'
//*------------------------------------------------------------------
//* Start the Liberty angel process
//*------------------------------------------------------------------
//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=*