z/OS で IBM HTTP Server を始動するための JCL プロシージャーの使用
JCL プロシージャーを準備して、MVS™ システム・コンソールから IBM® HTTP Server を 開始および停止することができます。
JCL カタログ式プロシージャーを使用して apachectl start および apachectl stop コマンドを発行することにより、MVS システム・コンソールから IBM HTTP Server インスタンスを始動および停止できます。 同じプロシージャーを使用して、他の apachectl コマンドを MVS システム・コンソールから発行できます。
以下の JCL プロシージャーのサンプルを SHAPJCL(HAPAPROC) からお使いのシステム・プロシージャー・ライブラリーにコピーしてください。
//*---------------------------------------------------------
//IHSAPACH PROC ACTION='start',
// DIR='/path/to/IHS/runtime/directory',
// CONF='conf/httpd.conf'
//*---------------------------------------------------------
//IHS EXEC PGM=BPXBATCH,
// PARM='SH &DIR/bin/apachectl -k &ACTION -f &CONF -DNO_DETACH',
// MEMLIMIT=512M
//STDOUT DD PATH='&DIR/logs/proc.output',
// PATHOPTS=(OWRONLY,OCREAT,OTRUNC),
// PATHMODE=(SIRUSR,SIWUSR,SIRGRP,SIWGRP)
//STDERR DD PATH='&DIR/logs/proc.errors',
// PATHOPTS=(OWRONLY,OCREAT,OTRUNC),
// PATHMODE=(SIRUSR,SIWUSR,SIRGRP,SIWGRP)
// PEND
/*------------------------------------------------------
//WEBFTNEI JOB (KOMA-Y98),'Apache NZX2 ',MSGCLASS=T,
// TIME=NOLIMIT
// EXPORT SYMLIST=*
//*-------------------------------------
// SET ACTION='start'
// SET DIR='/home/ihsa/install/webft'
// SET CONF='../../httpd/webftnei.conf'
//*-----------------------------------------------------
//IHS EXEC PGM=BPXBATCH,PARMDD=PARMIN,
// MEMLIMIT=512M
//PARMIN DD *,SYMBOLS=JCLONLY
PGM &DIR/bin/apachectl
-k &ACTION
-f &CONF
-DNO_DETACH
//*-------------------------------------------------------
//STDOUT DD SYSOUT=T
//*
//STDERR DD SYSOUT=T
//*
//
//STDOUT DD PATH='&DIR/logs/proc.output',
// PATHOPTS=(OWRONLY,OCREAT,OTRUNC),
// PATHMODE=(SIRUSR,SIWUSR,SIRGRP,SIWGRP)
//*
//STDERR DD PATH='&DIR/logs/proc.errors',
// PATHOPTS=(OWRONLY,OCREAT,OTRUNC),
// PATHMODE=(SIRUSR,SIWUSR,SIRGRP,SIWGRP)
//
/*----------------------------------------------------------
サンプル JCL で使用される apachectl コマンドの説明については、Apache HTTP Server Control Interface Web サイトを参照してください。
IBM HTTP Server インスタンスのデフォルトのジョブ名は、カタログ式プロシージャーのメンバー名と同じです。Web サーバーはマルチプロセス・サーバーであり、作成される各追加プロセスは、元のジョブ名に基づいて生成されたジョブ名を持ちます。元のジョブ名が 8 文字の長さの場合、すべての追加プロセスは同じジョブ名を持ちます。元のジョブ名が 8 文字未満の場合、追加プロセスは、元のジョブ名と接尾部として追加された数字で構成されたジョブ名を持ちます。Web サーバーが bin/apachectl コマンドを使用して UNIX 環境から開始された場合、デフォルトのジョブ名は、コマンドの実行に使用されたユーザー ID になります。ジョブ名と同様に、ユーザー ID が 8 文字の長さの場合、すべての追加プロセスは同じジョブ名を持ちます。ユーザー ID が 8 文字未満の場合、プロセスは、接尾部として数字が追加されたユーザー ID で構成されたジョブ名を持ちます。
RDEFINE STARTED WEBSRV1.* STDATA(USER(WWWSERV) GROUP(WWWGROUP) TRACE(YES))
SETROPTS RACLIST(STARTED) GENERIC(STARTED) REFRESH
- MVS コンソールからサーバーを開始するには、以下を入力します。
S WEBSRV1
注: Web サーバーのジョブ名は、jobname を開始コマンドに追加することにより変更できます。例えば、次のようになります。S WEBSRV1,JOBNAME=HTTPDWS1
ベスト・プラクティス 1: 8 文字のジョブ名を使用します。8 文字のジョブ名を使用することにより、Web サーバーのこのインスタンス用に作成されるすべてのプロセスは同じジョブ名を持つようになります。サーバーを停止するには、以下のように入力します。P WEBSRV1
注: SDSF を使用している時は、System Command Extension (コマンド入力) 画面を使用して、サーバーを停止するコマンドを入力する必要があります。- コマンド・プロンプトで、スラッシュ (/) を入力してから Enter を押すと、System Command Extension ウィンドウが表示されます。
- System Command Extension ウィンドウで、S WEBSRV1,ACTION='stop' コマンドを入力します。 stop が小文字であることを確認してください。
- 他の apachectl コマンドを発行するには、以下のように入力します。
S WEBSRV1,ACTION='<command>'
- サーバーを再始動するには、以下を入力します。
z/OS コンソールからサーバーを再始動できます。S WEBSRV1,ACTION=restart
- サーバーを正常に再始動するには、以下を入力します。
z/OS コンソールからサーバーを正常に再始動できます。S WEBSRV1,ACTION=graceful
start コマンドと stop コマンドの出力は、プロシージャー内の STDOUT JCL ステートメントおよび STDERR DD JCL ステートメントに指定されたファイル内にあります。
LoadModule zos_cmds_module modules/mod_zos_cmds.so
BPXM023I (WASTST1) IHS is active. Use jobname HTTPDWS1 for MVS commands.
ここで、WASTST1 は、Web サーバーの実行に使用されているユーザー ID です。ジョブ名も識別する項目がエラー・ログに書き込まれます。mod_zos_cmds デーモンのジョブ名は、HTTPDWS1 になりますので注意してください。MODIFY コマンドを入力すると、このコマンドは、指定されたジョブ名を持つすべてのジョブのターゲットになります。Web サーバー・プロセスの 1 つのみがこのコマンドを受け入れます。システムは、同じジョブ名を持つ他の各ジョブに次のメッセージを発行します。IEE342I MODIFY REJECTED-TASK BUSY
- stop コマンドを使用してサーバーを停止するには、次のように入力します。
P HTTPDWS1
- modify コマンドを使用してサーバーを再始動するには、次のように入力します。
F HTTPDWS1,appl='restart'
- modify コマンドを使用してサーバーを正常に再始動するには、次のように入力します。
F HTTPDWS1,appl='graceful'
BPXM023I (WASTST1) IHS is stopping
ここで、WASTST1 は、Web サーバーの実行に使用されているユーザー ID です。