Configuration des processus à l'aide de scripts

L'outil wsadmin permet de configurer les processus au sein de la configuration de votre serveur d'applications. Vous pouvez améliorer le fonctionnement d'un serveur d'applications en définissant des informations de ligne de commande pour démarrer ou initialiser les processus du serveur d'applications. Les paramètres de définition des processus définissent les propriétés d'exécution, comme le programme à exécuter, les arguments d'exécution du programme et le répertoire de travail.

Pourquoi et quand exécuter cette tâche

Vous avez deux solutions pour mener à bien cette tâche. Grâce à la procédure détaillée dans cette tâche, vous allez modifier la configuration de la définition des processus à l'aide de la commande setProcessDefinition de l'objet AdminTask ou de l'objet AdminConfig. Mais, pour configurer les attributs de définition des processus, vous pouvez aussi utiliser le script Jython configureProcessDefinition de la bibliothèque de scripts AdminServerManagement. Lorsque l'outil wsadmin démarre, il charge automatiquement le script. Pour configurer les paramètres de définition des processus à l'aide du script configureProcessDefinition, respectez la syntaxe suivante :
AdminServerManagement.configureProcessDefintion(nom_noeud, nom_serveur, autre_liste_param)
Pour plus d'informations et pour obtenir des définitions d'arguments, voir la documentation relative à la bibliothèque de scripts AdminServerMananagment.

Procédure

  1. Démarrez l'outil de scriptage wsadmin.
  2. Pour modifier la configuration de la définition de vos processus, utilisez la commande setProcessDefinition de l'objet AdminTask ou de l'objet AdminConfig.
    • Configurez la définition des processus à l'aide de la commande setProcessDefinition de l'objet AdminTask, conformément à l'exemple suivant :
      • A l'aide de Jacl :
        $AdminTask setProcessDefinition {-interactive}
      • En langage Jython :
        AdminTask.setProcessDefinition (['-interactive'])
    • Configurez la définition des processus à l'aide de l'option AdminConfig, conformément à la procédure suivante :
      1. Identifiez le serveur, puis attribuez-le à la variable s1. Exemple :
        • A l'aide de Jacl :
          set s1 [$AdminConfig getid /Cell:mycell/Node:mynode/Server:server1/]
        • En langage Jython :
          s1 = AdminConfig.getid('/Cell:mycell/Node:mynode/Server:server1/')
          print s1
        Tableau 1. Description de la commande AdminConfig getid . Les commandes précédentes comprennent les éléments suivants :
        Elément Description
        set Commande Jacl
        s1 nom de variable ;
        $ Opérateur Jacl pour remplacer le nom d'une variable par la valeur correspondante
        AdminConfig Objet représentant la configuration WebSphere Application Server
        getid Commande AdminConfig
        Cell Type de l'objet
        mycell Nom de l'objet qui sera modifié
        Node Type de l'objet
        mynode Nom de l'objet qui sera modifié
        Server Type de l'objet
        server1 Nom de l'objet qui sera modifié
        print Commande Jython
        Exemple de sortie :
        server1(cells/mycell/nodes/mynode/servers/server1|server.xml#Server_1)
      2. Identifiez la définition des processus du serveur approprié, puis attribuez-la à la variable processDef. Exemple :
        • A l'aide de Jacl :[AIX Solaris HP-UX Linux Windows][IBM i]
          set processDef [$AdminConfig list JavaProcessDef $s1]
          set processDef [$AdminConfig showAttribute $s1 processDefinitions]
          [z/OS]
          set processDefs [$AdminConfig list JavaProcessDef $s1]
          set controllerProcessDef [lindex $processDefs 1]
          set servantProcessDef [lindex $processDefs 1]
        • En langage Jython :[AIX Solaris HP-UX Linux Windows][IBM i]
          processDef = AdminConfig.list('JavaProcessDef', s1)
          print processDef
          processDef = AdminConfig.showAttribute(s1, 'processDefinitions')
          [z/OS]
          processDefs = AdminConfig.list('JavaProcessDef', s1)
          # extrait le séparateur de ligne
          import java
          lineSeparator = java.lang.System.getProperty('line.separator')
          arrayPDs = processDefs.split(lineSeparator)
          controllerProcessDef = arrayPDs[0]
          servantProcessDef = arrayPDs[1]
          print controllerProcessDef
          print servantProcessDef
        Exemple de sortie : [AIX Solaris HP-UX Linux Windows][IBM i]
        (cells/mycell/nodes/mynode/servers/server1|server.xml#JavaProcessDef_1)
        [z/OS]
        (cells/mycell/nodes/mynode/servers/server1:server.xml#JavaProcessDef_1)
        (cells/mycell/nodes/mynode/servers/server1:server.xml#JavaProcessDef_2)
      3. Modifiez les attributs de configuration de la définition des processus.

        [AIX Solaris HP-UX Linux Windows][IBM i]Modifiez le répertoire de travail conformément à l'exemple ci-après :[z/OS]Sur les systèmes z/OS, voici comment modifier la définition des processus de la région serviteur. Vous pouvez modifier la définition des processus de la région du contrôleur en remplaçant controllerProcessDef par servantProcessDef.

        • A l'aide de Jacl :[AIX Solaris HP-UX Linux Windows]
          $AdminConfig modify $processDef {{workingDirectory c:/temp/user1}}
          [z/OS]
          $AdminConfig modify $servantProcessDef {{workingDirectory /temp/user1}}
          [IBM i]
          $AdminConfig modify $processDef {{workingDirectory /home/myProfile/temp/user1}}
        • En langage Jython :[AIX Solaris HP-UX Linux Windows]
          AdminConfig.modify(processDef, [['workingDirectory', 'c:/temp/user1']])
          [z/OS]
          AdminConfig.modify(servantProcessDef, [['workingDirectory', '/temp/user1']])
          [IBM i]
          AdminConfig.modify(processDef, [['workingDirectory', '/home/myProfile/temp/user1']])
        Modifiez le nom du fichier stderr conformément à l'exemple ci-après :
        • A l'aide de Jacl :[AIX Solaris HP-UX Linux Windows][IBM i]
          set errFile [list stderrFilename \${LOG_ROOT}/server1/new_stderr.log]
          set attr [list $errFile]
          $AdminConfig modify $processDef [subst {{ioRedirect {$attr}}}]
          [z/OS]
          set errFile [list stderrFilename \${LOG_ROOT}/server1/new_stderr.log]
          set attr [list $errFile]
          $AdminConfig modify $servantProcessDef [subst {{ioRedirect {$attr}}}]
        • En langage Jython :[AIX Solaris HP-UX Linux Windows][IBM i]
          errFile = ['stderrFilename', '\${LOG_ROOT}/server1/new_stderr.log']
          attr = [errFile]
          AdminConfig.modify(processDef, [['ioRedirect', [attr]]])
          [z/OS]
          errFile = ['stderrFilename', '${LOG_ROOT}/server1/new_stderr.log']
          attr = [errFile]
          AdminConfig.modify(servantProcessDef, [['ioRedirect', attr]])
        Modifiez le niveau de priorité des processus conformément à l'exemple ci-après :
        • A l'aide de Jacl :
          $AdminConfig modify $processDef {{execution {{processPriority 15}}}}
        • En langage Jython :
          AdminConfig.modify(processDef, [['execution', [['processPriority', 15]]]])
        L'exemple suivant modifie le nombre maximum de fois que le produit tente de démarrer un serveur d'applications en réponse à une demande de démarrage. Si le serveur ne peut pas démarrer le nombre de fois défini, un message d'erreur est généré pour indiquer que le serveur n'a pas pu être démarré.
        • A l'aide de Jacl :
          $AdminConfig modify $processDef {{monitoringPolicy {{maximumStartupAttempts 1}}}}
        • En langage Jython :
          AdminConfig.modify(processDef, [['monitoringPolicy', [['maximumStartupAttempts',  1]]]])
  3. Sauvegardez les modifications de configuration.
    Entrez l'exemple de commande suivante pour sauvegarder les modifications de configuration :
    AdminConfig.save()
  4. Dans un environnement de déploiement en réseau uniquement, synchronisez le noeud.
    Utilisez les scripts syncActiveNode ou syncNode de la bibliothèque de scripts AdminNodeManagement pour propager les modifications de configuration sur un ou plusieurs noeudsµµ.
    • Utilisez le script syncActiveNodes pour propager les modifications sur chacun des noeuds dans la cellule, comme dans l'exemple suivant :
      AdminNodeManagement.syncActiveNodes()
    • Utilisez le script syncNode pour propager les modifications sur un noeud spécifique, comme dans l'exemple suivant :
      AdminNodeManagement.syncNode("myNode")

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=txml_processes
Nom du fichier : txml_processes.html