[AIX Solaris HP-UX Linux Windows][z/OS]

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

Créez un fichier exécutable Java™ ou non Java à exécuter lorsque la condition de santé n'est pas exécutée. Vous pouvez utiliser des variables d'environnement dans le fichier exécutable pour afficher la cellule, le noeud et le serveur affecté par l'action de santé, par exemple :
#!/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]Pour activer la fonction d'action personnalisée :
  1. 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=* 
    //*-------------------------------------------- 
  2. 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 Environnement > Variables WebSphere > <VOTRE_NOEUD>. Sélectionnez la variable WAS_SERVER_ONLY_shell_command_proc_name. Remplacez la valeur par le nouveau nom de procédure, puis 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.

  3. 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
  4. 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.

Si vous utilisez une action personnalisée pour appeler un script wsadmin, créez un script personnalisé sur le noeud géré cible qui contient l'appel wsadmin. Par exemple, créez un script personnalisé test.sh qui utilise un script Python pour atteindre son objectif :
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 Stratégies opérationnelles > Action personnalisée > Nouveau. 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 :

Procédure

  1. Sélectionnez un type d'action Java ou non Java. Dans la console d'administration, cliquez sur Stratégies opérationnelles > Action personnalisée > Nouveau. Sélectionnez le type d'action à créer.
  2. Définissez les propriétés d'action personnalisée.
    Pour les actions de santé qui exécutent des fichiers exécutables Java et non Java :
    • Indiquez un nom pour l'action, le chemin complet et le nom du fichier exécutable et les arguments à transmettre au fichier exécutable.
    • Si nécessaire, indiquez les variables pour le nom d'utilisateur et le mot de passe et indiquez les valeurs réelles à transmettre pour le nom d'utilisateur et le mot de passe lors de l'exécution du fichier exécutable.
    • Indiquez les systèmes d'exploitation sur lesquels les fichiers exécutables peuvent être lancés.
    • Indiquez un chemin complet d'un répertoire de travail, c'est-à-dire l'emplacement où le fichier exécutable doit être lancé.
    Pour les actions de santé exécutant des fichiers exécutables Java, vous devez aussi indiquer les propriétés suivantes :
    • Indiquez l'emplacement du répertoire exécutable Java.
    • Spécifiez le type de cible : une classe Java ou un fichier JAR (Java ARchive) exécutable.
    • Indiquez la variable d'environnement qui contient le nom de fichier d'ID de processus (PID). Le nom du fichier d'ID de processus est stocké dans une variable WebSphere. Conservez le nom de la variable pour pouvoir la créer à une étape ultérieure.
    Par exemple, si vous avez un fichier exécutable pour collecter des journaux appelés logCollector.sh, vous entrez les valeurs suivantes pour l'action personnalisée :
    • Nom : LogCollect
    • Exécutable : /opt/mws/bin/logCollector.sh
    • Arguments exécutables : -arg1 excludeCores -arg2 compress
    • Système d'exploitation : UNIX
    • Répertoire de travail : /opt/mws/bin/
  3. Sauvegardez l'action personnalisée.
  4. Si l'action de santé exécute un fichier exécutable Java, créez la variable d'environnement de nom de fichier PID. Le nom de fichier PID indique l'emplacement du fichier PID dans lequel l'opération de serveur est exécutée. Pour définir la variable du nom de fichier PID, cliquez sur Serveurs > Tous les serveurs > serveur_middleware > Variables > Nouveau ou Environnement > Variables WebSphere > Nouveau. Entrez le même nom de variable que celui indiqué dans la fenêtre des actions de santé, et pour la valeur, entrez le chemin complet ou le chemin qualifié par variable de l'emplacement du fichier PID.

Résultats

Vous avez créé une action personnalisée que vous pouvez ajouter aux plans d'action de vos stratégies de santé.

Que faire ensuite

Créez une stratégie de santé. Dans la console d'administration, cliquez sur Stratégies opérationnelles > Stratégies de santé > Nouveau.

Icône indiquant le type de rubrique Rubrique de tâche



Icône d'horodatage Dernière mise à jour: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twve_odhealthaction
Nom du fichier : twve_odhealthaction.html