![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[z/OS]](../images/ngzos.gif)
Création d'actions personnalisées pour la stratégie de santé
Utilisez des actions personnalisées afin de définir des tâches correctives applicables lorsque la condition de santé n'est pas respectée. Vous pouvez également utiliser des actions personnalisées pour appeler des scripts wasadmin.
Avant de commencer
#!/bin/sh
echo "The sick server is "
echo $server
echo " which is on node "
echo $node
echo " which is a part of cell "
echo $cell
![[z/OS]](../images/ngzos.gif)
- Ajoutez une procédure d'administration asynchrone WebSphere au fichier dans la concaténation PROCLIB. Exemple de langage JCL pour cette procédure :
//*-------------------------------------------- //SHELL2 EXEC PGM=BPXBATCH,REGION=0M, // PARM='SH &CMD. &OPT.' //STDERR DD SYSOUT=* //STDOUT DD SYSOUT=* //*--------------------------------------------
- Le nom par défaut de la procédure d'administration asynchrone WebSphere est BBO8ADM. Si un nom différent est requis, changez le nom de la procédure et mettez à jour la variable d'environnement WebSphere
WAS_SERVER_ONLY_shell_command_proc_name pour qu'elle désigne le nouveau nom de procédure.
Pour mettre à jour cette variable dans la console d'administration, cliquez sur OK. Sauvegardez et synchronisez la configuration. Redémarrez les serveurs qui utilisent la fonction d'action personnalisée pour commencer à utiliser le nouveau nom de procédure.
. Sélectionnez la variable WAS_SERVER_ONLY_shell_command_proc_name. Remplacez la valeur par le nouveau nom de procédure, puis cliquez sur - Configurez la commande start pour la procédure d'administration asynchrone WebSphere pour que seul l'ID de tâche démarrée pour l'agent de noeud puisse émettre la commande. Utilisez les commandes RACF suivantes :
RDEFINE OPERCMDS MVS.START.STC.<NOM_PROC_ADMIN>.**UACC(NONE) PERMIT MVS.START.STC.<NOM_PROC_ADMIN>.** CLASS(OPERCMDS) ID(<ID_AGENT_NOEUD>)ACCESS(UPDATE) SETR RACLIST(OPERCMDS)REFRESH
- Définissez l'ID utilisateur associé à la procédure d'administration asynchrone WebSphere et associez l'utilisateur à la procédure à l'aide de commandes RACF. Exemple :
ADDUSER WSADMSH DFLTGRP(<GROUPE_ADMIN_CELL>)OMVS(UID(2504) HOME (/var/WebSphere/home/<GROUPE_ADMIN_CELL> PROGRAM(/bin/sh)) NAME('Tâche d'administration asynchrone WAS') NOPASSWORD NOOIDCARD RDEFINE STARTED <NOM_PROC_ADMIN>.*STDATA(USER(WSADMSH)GROUP (<GROUPE_ADMIN_CELL>)TRACE(YES)) SETROPTS RACLIST(STARTED) GENERIC(STARTED) REFRESH
Remarque : Dans l'exemple précédent, le nom de l'ID utilisateur de la tâche d'administration asynchrone WebSphere est WSADMSH. Ce nom peut être personnalisé si nécessaire. La valeur DFLTGRP de l'ID utilisateur de la tâche d'administration asynchrone WebSphere doit être le groupe d'administration WebSphere pour la cellule.Si la console système n'est pas configurée pour requérir un ID de connexion, alors, même en cas d'utilisation de commandes RACF, tout utilisateur pouvant accéder à la console peut démarrer la procédure d'administration asynchrone WebSphere. Pour plus d'informations sur la sécurisation de la console système en requérant un ID de connexion, voir Controlling MCS and SMCS Consoles.
Pourquoi et quand exécuter cette tâche
Par défaut, vous pouvez définir les actions à exécuter lorsqu'une condition de santé n'est pas respectée : redémarrage du serveur, clichés d'unité d'exécution, ou clichés de tas. Si vous avez besoin d'actions plus spécifiques lorsqu'une condition de santé n'est pas respectée, créez une action personnalisée. Les actions personnalisées se composent de définitions de processus Java ou non Java, et peuvent être exécutées sur le gestionnaire de déploiement, un noeud qui héberge les serveurs ne respectant pas les conditions de santé, le noeud où s'exécute le contrôleur de gestion de santé, ou sur un noeud que vous indiquez.
Créez une action personnalisée avant de créer une stratégie de santé. Lorsque vous définissez la stratégie de santé, sélectionnez l'action personnalisée dans le cadre d'un plan d'action exécuté lorsque la condition de santé n'est pas respectée. Vous pouvez également définir une action personnalisée lorsque vous créez un plan d'action dans l'assistant de création de stratégies de santé.
Lorsqu'une stratégie de santé contient plusieurs actions personnalisées, la mise à jour des actions personnalisées peut entraîner une désynchronisation de l'environnement d'exécution du contrôleur de santé avec la configuration de la console d'administration. Si vous ajoutez, supprimez ou modifiez une action personnalisée pour une stratégie qui inclut plusieurs actions personnalisées, démarrez et arrêtez le contrôleur de santé après avoir sauvegardé les modifications.
test.sh:
#!/bin/sh
/opt/IBM/WAS/bin/wsadmin.sh -lang jython -f /opt/IBM/WAS/wsadmin_test.py param1 param2 param3
wsadmin_test.py:
for arg in sys.argv:
#do something with args
Dans la console d'administration, cliquez sur . Choisissez le type d'action et définissez les propriétés d'action personnalisées :- Nom :
- Exécutable :
- Arguments exécutables :
- Système d'exploitation :
- Répertoire de travail :