IBM HTTP Server mit JCL-Prozeduren unter z/OS starten
Sie können JCL-Prozeduren vorbereiten, um IBM® HTTP Server über die MVS-Systemkonsole zu starten und zu stoppen.
Mit einer katalogisierten JCL-Prozedur zum Absetzen der apachectl-Befehle "start" und "stop" können Sie eine Instanz von IBM HTTP Server über die MVS-Systemkonsole starten und stoppen. Weitere apachectl-Befehle können über die MVS-Systemkonsole mit derselben Prozedur abgesetzt werden.
Kopieren Sie die folgende JCL-Beispielprozedur aus SHAPJCL(HAPAPROC) in Ihre Systemprozedurenbibliothek:
//*---------------------------------------------------------
//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)
//
/*----------------------------------------------------------
Eine Beschreibung des in der JCL-Beispielprozedur verwendeten Befehls apachectl finden Sie auf der Website Apache HTTP Server Control Interface.
Der Standardjobname für die Instanz von IBM HTTP Server stimmt mit dem Membernamen der katalogisierten Prozedur überein. Der Web-Server ist ein Multiprozessserver und für jeden zusätzlichen Prozess, der erstellt wird, wird ein auf dem ursprünglichen Jobnamen basierender Jobname generiert. Wenn der ursprüngliche Jobnamen mehr als 8 Zeichen enthält, haben alle zusätzlichen Prozesse denselben Jobnamen. Wenn der ursprüngliche Jobname weniger als 8 Zeichen enthält, setzen sich die Jobnamen der zusätzlichen Prozesse aus dem ursprünglichen Jobnamen und einer als Suffix angefügten Ziffer zusammen. Wenn der Web-Server in der UNIX-Umgebung mit dem Befehl bin/apachectl gestartet wird, ist der Standardjobname die Benutzer-ID, unter der der Befehl ausgeführt wird. Für die Benutzer-ID gilt wie beim Jobnamen: Wenn die Benutzer-ID 8 Zeichen enthält, haben alle zusätzlichen Prozesse denselben Jobnamen. Wenn die Benutzer-ID weniger als 8 Zeichen enthält, setzen sich die Jobnamen der Prozesse aus der Benutzer-ID und einer als Suffix angefügten Ziffer zusammen.
RDEFINE STARTED WEBSRV1.* STDATA(USER(WWWSERV) GROUP(WWWGROUP) TRACE(YES))
SETROPTS RACLIST(STARTED) GENERIC(STARTED) REFRESH
- Geben Sie Folgendes ein, um den Server von der MVS-Systemkonsole aus zu starten:
S WEBSRV1
Anmerkung: Sie können den Jobnamen des Web-Servers ändern, indem Sie dem Startbefehl jobname hinzufügen, z. B.:S WEBSRV1,JOBNAME=HTTPDWS1
Bewährtes Verfahren 1: Verwenden Sie einen Jobnamen mit 8 Zeichen. Wenn Sie einen Jobnamen mit 8 Zeichen verwenden, wird dadurch sichergestellt, dass alle für diese Instanz des Web-Servers erstellten Prozesse denselben Jobnamen haben.Geben Sie Folgendes ein, um den Server zu stoppen:P WEBSRV1
Anmerkung: Wenn Sie SDSF verwenden, müssen Sie die SCE-Anzeige (Befehlseintrag) verwenden, um den Befehl zum Stoppen des Servers einzugeben.- Geben Sie an der Eingabeaufforderung einen Schrägstrich (/) ein, und drücken Sie anschließend die Eingabetaste, um das SCE-Fenster (SCE, System Command Extension) aufzurufen.
- Setzen Sie im SCE-Fenster den Befehl S WEBSRV1,ACTION='stop' ab. Vergewissern Sie sich, dass stop in Kleinbuchstaben geschrieben ist.
- Geben Sie Folgendes ein, um weitere apachectl-Befehle abzusetzen:
S WEBSRV1,ACTION='<command>'
- Gehen Sie wie folgt vor, um den Server direkt neu zu starten:
Sie können den direkten Serverneustart über die z/OS-Konsole durchführen.S WEBSRV1,ACTION=restart
- Gehen Sie wie folgt vor, um den Server regulär neu zu starten:
Sie können den regulären Serverneustart über die z/OS-Konsole durchführen.S WEBSRV1,ACTION=graceful
Die Ausgabedateien für die Start- und Stoppbefehle befinden sich in den Dateien, die in den JCL-Anweisungen STDOUT und STDERR DD in dieser Vorgehensweise angegeben sind.
LoadModule zos_cmds_module modules/mod_zos_cmds.so
BPXM023I (WASTST1) IHS is active. Use jobname HTTPDWS1 for MVS commands.
Dabei ist WASTST1 die Benutzer-ID, unter der der Web-Server ausgeführt wird.
Es wird außerdem ein Eintrag in das Fehlerprotokoll geschrieben, in dem der Jobname
angegeben ist. Beachten Sie, dass der Jobname des mod_zos_cmds-Dämons
HTTPDWS1 ist. Wenn ein MODIFY-Befehl eingegeben wird,
wird dieser für jeden Job mit dem angegeben Jobnamen ausgeführt. Nur ein einziger der Web-Server-Prozesse
akzeptiert den Befehl. Das System gibt die folgende Nachricht für jeden der Jobs mit demselben Jobnamen aus. IEE342I MODIFY REJECTED-TASK BUSY
- Geben Sie zum Stoppen des Servers mit dem stop-Befehl Folgendes ein:
P HTTPDWS1
- Geben Sie zum erneuten Starten des Servers mit dem modify-Befehl Folgendes ein:
F HTTPDWS1,appl='restart'
- Geben Sie für den ordnungsgemäßen Neustart des Servers mit dem modify-Befehl Folgendes ein:
F HTTPDWS1,appl='graceful'
BPXM023I (WASTST1) IHS is stopping
Dabei ist
WASTST1 die Benutzer-ID, unter der der Web-Server ausgeführt wird.