Utilisation de procédures JCL pour démarrer IBM HTTP Server on z/OS
Vous pouvez préparer des procédures JCL pour démarrer et arrêter IBM® HTTP Server à partir de la console système MVS.
En utilisant une procédure cataloguée JCL pour exécuter les commandes de démarrage et d'arrêt apachectl, vous pouvez démarrer et arrêter une instance d'IBM HTTP Server depuis la console système MVS. D'autres commandes apachectl peuvent être exécutées depuis la console MVS via la même procédure.
Copiez l'échantillon de procédure JCL suivant depuis SHAPJCL(HAPAPROC) dans votre bibliothèque de procédure système :
//*---------------------------------------------------------
//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)
//
/*----------------------------------------------------------
Une description de la commande apachectl utilisée dans l'échantillon JCL est disponible sur le site Web Apache HTTP Server Control Interface.
Le nom de travail par défaut de l'instance d'IBM HTTP Server sera identique au nom de membre de la procédure cataloguée. Le serveur Web est un serveur multi-processus, et chaque processus supplémentaire créé sera associé à un nom de travail généré en fonction du nom de travail d'origine. Si le nom de travail d'origine comporte 8 caractères, tous les processus supplémentaires porteront le même nom de travail. Si le nom de travail d'origine comporte moins de 8 caractères, les processus supplémentaires porteront un nom de travail constitué du nom de travail d'origine et d'un chiffre ajouté comme suffixe. Si le serveur Web est démarré à partir de l'environnement UNIX à l'aide de la commande bin/apachectl, le nom de travail par défaut correspondra à l'ID utilisateur sous lequel la commande est exécutée. Comme pour le nom de travail, si l'ID utilisateur comporte 8 caractères, tous les processus supplémentaires porteront le même nom de travail. Si l'ID utilisateur comporte moins de 8 caractères, les processus supplémentaires porteront un nom de travail constitué de l'ID utilisateur et d'un chiffre ajouté comme suffixe.
RDEFINE STARTED WEBSRV1.* STDATA(USER(WWWSERV) GROUP(WWWGROUP) TRACE(YES))
SETROPTS RACLIST(STARTED) GENERIC(STARTED) REFRESH
- Pour démarrer le serveur depuis la console système MVS, entrez :
S WEBSRV1
Remarque : Le nom de travail du serveur Web peut être modifié en ajoutant jobname à la commande de démarrage, par exemple :S WEBSRV1,JOBNAME=HTTPDWS1
Méthode recommandée 1 : Utilisez un nom de travail composé de 8 caractères. Utiliser un nom de travail composé de huit caractères garantit que tous les processus créés pour cette instance du serveur Web porteront le même nom de travail.Pour arrêter le serveur, entrez :P WEBSRV1
Remarque : Si vous utilisez SDSF, vous devez passer par l'écran d'extension de commande système (saisie de commande) pour entrer la commande en vue d'arrêter le serveur.- A l'invite de commande, tapez une barre oblique (/) et appuyez sur Entrée pour accéder à la fenêtre d'extension de commande système.
- Dans cette fenêtre, entrez la commande S WEBSRV1,ACTION='stop'. Veillez à bien taper stop en minuscules.
- Pour exécuter d'autres commandes apachectl, tapez :
S WEBSRV1,ACTION='<commande>'
- Pour redémarrer le serveur, entrez :
Vous pouvez redémarrer le serveur à partir de la console z/OS.S WEBSRV1,ACTION=restart
- Pour un redémarrage automatique du serveur, entrez :
Vous pouvez redémarrer automatiquement le serveur à partir de la console z/OS.S WEBSRV1,ACTION=graceful
Les fichiers de sortie des commandes de démarrage et d'arrêt se trouvent dans les fichiers spécifiés dans les instructions JCL DD STDOUT et STDERR de la procédure.
LoadModule zos_cmds_module modules/mod_zos_cmds.so
BPXM023I (WASTST1) IHS is active. Use jobname HTTPDWS1 for MVS commands.
où WASTST1 est l'ID utilisateur sous lequel le serveur Web est exécuté. Une entrée identifiant également le nom de travail est écrite dans le journal des erreurs. Notez que le nom de travail du démon mod_zos_cmds est HTTPDWS1. Lorsqu'une commande MODIFY est saisie, elle s'applique à chaque travail portant le nom de travail spécifié. Seul l'un des processus de serveur Web accepte la commande. Le système émet le message suivant pour chacun des autres travaux du même nom de travail :IEE342I MODIFY REJECTED-TASK BUSY
- Pour arrêter le serveur à l'aide de la commande stop :
P HTTPDWS1
- Pour redémarrer le serveur à l'aide de la commande de modification, entrez :
F HTTPDWS1,appl='restart'
- Pour redémarrer le serveur progressivement à l'aide de la commande de modification, entrez :
F HTTPDWS1,appl='graceful'
BPXM023I (WASTST1) IHS is stopping
où WASTST1 est l'ID utilisateur sous lequel le serveur Web est exécuté.