Sauvegarde restauration d’un serveur de webservices
Sauvegarde et Restauration des webservers
Pour Sauvegarder et Restaurer un server de webservices vous pouvez utiliser les scriptes QSH prévus à cet effet.
Sauvegarde
saveWebServicesServer.sh
-server ‘server’
-saveFile ‘savf’ (‘/qsys.lib/libsavf.lib/savf.file’)
Restauration
restoreWebServicesServer.sh
-fromServerDirectory ‘server-directory’ (‘/www/server’)
-saveFile ‘savf’ (‘/qsys.lib/libsavf.lib/savf.file’)
Remarque :
Le seul support est le SAVF
Mais comment restaurer un serveur de webservices, si vous n’avez que les répertoires de l’IFS.
Il faut savoir qu’un webserveur de webservices c’est 3 choses :
– des répertoires de configuration (dans /www/)
– une instance APACHE déclarée dans http server (fichier QATMHINSTC qui contient un membre pour chacun instance)
– un enregistrement dans LWI ou Liberty.
Il vous faudra donc respecter les étapes suivantes
1) Restauration des répertoires de L’IFS
- RST DEV(‘/qsys.lib/qgpl.lib/savfIFS.file’)
OBJ((‘/www/YOURSERVER’))
Vous pouvez restaurer l’IFS à partir d’autres supports…
2) Autorisation de la branche du server au profil QTMHHTTP
Le profil QTMHHTTP est le profil utilisé par http server pour la plupart de ses opérations. Il doit avoir un droit explicite sur ces fichiers.
- CHGAUT OBJ(‘/www/YOURSERVER/*’)
USER(QTMHHTTP)
DTAAUT(*RWX)
OBJAUT(*ALL)
SUBTREE(*ALL)
Remarque :
Cette étape peut être facultative si vous avez une sauvegarde avec les droits privées paramètres PVTAUT(*YES) de vos commandes SAVXXX.
Il vous faudra préciser dans la commande RST … le paramètre PVTAUT(*YES)
3) Création du membre de l’instance APACHE dans le fichier QATMHINSTC de QUSRSYS.
En utilisant la commande
wrkmbrpdm qusrsys/QATMHINSTC
Dupliquer un membre existant en lui donnant le nom de votre server YOURSERVER
puis modifier le contenu en lui indiquant le nom de votre serveur
-apache -d /www/YOURSERVER -f conf/httpd.conf
Cette modification peut-être faite, via l’option 18, par SQL, par script…
4) Enregistrement de votre serveur dans liberty ou LWI
Sous LWI
java -cp /QIBM/ProdData/OS400/jt400/lib/jt400Native.jar:/QIBM/ProdData/OS/OSGi/LWI81/native/iasadmin.jar com.ibm.lwi.admin.IntegratedServerAdmin -registerServer YOURSERVER /www
Remarque :
La version de votre lwi ici 8.1, dépend de votre système pour la connaitre :
Se mettre sous qsh
cd /QIBM/ProdData/OS/OSGi
puis ls
o
par exemple ici la version est 6.0
donc la commande devient
java -cp /QIBM/ProdData/OS400/jt400/lib/jt400Native.jar:/QIBM/ProdData/OS/OSGi/LWI60/native/iasadmin.jar com.ibm.lwi.admin.IntegratedServerAdmin -registerServer YOURSERVER /www
Sous Liberty
java -cp /QIBM/ProdData/OS400/jt400/lib/jt400Native.jar:/QIBM/ProdData/OS/OSGi/shared/lib/iasadmin.jar com.ibm.lwi.admin.IntegratedServerAdmin -registerServer YOURSERVER /www
Vous avez un fichier de propriétés, il est dans le répertoire LWI correspondant :
Votre serveur est opérationnel et vous pouvez l’utiliser à nouveau.
Les fichiers de référence des serveurs enregistrés se trouvent :
En 6.1, dans /QIBM/UserData/OS/OSGi/registry/registry.data pour Lwi
À partir de la 7.1, dans /QIBM/UserData/OS/OSGi/registry/iasregistry.data pour Liberty
Vous pouvez désormais arrêter et redémarrer votre serveur.
ENDTCPSVR *HTTP HTTPSVR(YOURSERVER)
STRTCPSVR *HTTP HTTPSVR(YOURSERVER)
Exemple de requêtes SQL pour retrouver des informations
Liste des instances apaches démarrées
SELECT DISTINCT SERVER_TYPE
FROM TABLE(QSYS2.ACTIVE_JOB_INFO(
SUBSYSTEM_LIST_FILTER => ‘QHTTPSVR’)) X_table
WHERE function = ‘QZSRHTTP’
Liste des instances HTTP déclarées
SELECT TABLE_PARTITION as MEMBER FROM SYSPARTITIONSTAT
WHERE TABLE_NAME = ‘QATMHINSTC’ AND TABLE_SCHEMA = ‘QUSRSYS’
Remarque :
Admin n’a pas d’instance dans ce fichier
La jonction entre les tables pour voir celles qui ne sont pas démarrées
SELECT DISTINCT SERVER_TYPE, TABLE_PARTITION
FROM SYSPARTITIONSTAT a
Join TABLE(QSYS2.ACTIVE_JOB_INFO(
SUBSYSTEM_LIST_FILTER => ‘QHTTPSVR’)) B
on B.server_type = ‘QIBM_HTTP_’ concat TABLE_PARTITION
and TABLE_NAME = ‘QATMHINSTC’
AND TABLE_SCHEMA = ‘QUSRSYS’
where function = ‘QZSRHTTP’