Setting up the external scheduler interface using IBM MQ on z/OS to communicate with a Job Scheduler server on a distributed operating system

Vous pouvez installer et configurer le connecteur de planificateur externe hautes performances de lots. This connector is the native WSGrid connector that is implemented in a native compiled language and that uses IBM MQ for communication.

Pourquoi et quand exécuter cette tâche

Le connecteur WSGrid natif présente un double avantage :

  1. Il permet d'utiliser les processeurs système z/OS de manière plus efficace, car il élimine le traitement lié au démarrage des machines virtuelles Java™ à chaque utilisation.
  2. Il fait appel au service de messagerie le plus robuste disponible sous z/OS pour garantir un fonctionnement fiable avec un service de messagerie déjà connu et utilisé par la plupart des clients z/OS.

L'ID utilisateur authentifié de l'environnement qui démarre WSGRID est propagé sur le planificateur de travaux de traitement par lots. Le travail traitement par lots obtenu est exécuté à l'aide de cet ID utilisateur. Ce dernier doit disposer des droits WebSphere nécessaires pour soumettre des travaux traitement par lots, autrement dit, les rôles lradmin ou lrsubmitter. Par exemple, si le WSGRID1 du travail JCL est soumis pour exécution à l'aide de l'ID utilisateur TECH1, le travail traitement par lots résultant s'exécute également sous l'ID utilisateur TECH1. User ID TECH1 must be permitted to get and put to and from the IBM MQ input and output queues used by WSGRID.

Procédure

  1. Set up IBM MQ on z/OS
    1. Define a server connection channel on IBM MQ to enable the Job Scheduler to communicate with the queue manager.

      Par exemple, la commande MQSC suivante crée le canal SVRCONN.

      DEFINE CHANNEL(WSGRID.SVRCONN) CHLTYPE(SVRCONN) TRPTYPE(TCP) REPLACE
    2. Define IBM MQ queues.

      Le gestionnaire de file d'attente doit être local. Deux files d'attente sont requises, l'une en entrée et l'autre en sortie. Vous pouvez nommer les files d'attente selon vos conventions de dénomination. A titre d'exemple, le nom WASIQ est utilisé pour les files d'attente d'entrée et le nom WASOQ est utilisé pour les files d'attente de sortie. Les files d'attente doivent être définies en mode partagé.

    3. Créez le module de chargement WSGRID.
      1. Localisez le script de décompression dans le répertoire <was_root>/stack_products/WCG/bin. Le script unpackWSGRID est un script REXX.
      2. Décompressez WSGRID à l'aide du script unpackWSGrid. Pour afficher les options de commande, exécutez le script unpackWSGRID sans sortie : unpackWSGRID <was_home> [<hlq>] [<work_dir>] [<batch>] [<debug>]

        La liste suivante contient les options de commande disponibles.

        <was_home>
        Indique le répertoire de base WebSphere Application Server requis.
        <hlq>
        Indique le qualificatif de haut niveau facultatif des fichiers de sortie. La valeur par défaut est <user id>.
        <work_dir>
        Indique le répertoire de travail facultatif. La valeur par défaut est /tmp.
        <batch>
        Indique le mode d'exécution facultatif de ce script. Les valeurs possibles sont batch ou interactive. La valeur par défaut est interactive.
        <debug>
        Indique le mode de débogage facultatif. Les valeurs possibles sont debug ou nodebug. La valeur par défaut est nodebug.

        L'exemple suivant présente la sortie d'un script unpackWSGrid dans laquelle seule la valeur <was_home> est indiquée.

        Unpack WSGRID with values:
            WAS_HOME=/WebSphere/ND/AppServer
            HLQ =USER26
            WORK_DIR=/tmp
            BATCH =INTERACTIVE
            DEBUG =NODEBUG
            Continue? (Y|N)
            Y
            User response: Y
            Unzip /WebSphere/ND/AppServer/bin/cg.load.xmi.zip
            extracted: cg.load.xmi
            Move cg.load.xmi to /tmp
            Delete old dataset 'USER26.CG.LOAD.XMI'
            Allocate new dataset 'USER26.CG.LOAD.XMI'
            Copy USS file /tmp/cg.load.xmi to dataset 'USER26.CG.LOAD.XMI'
            Delete USS file /tmp/cg.load.xmi
            Delete old dataset 'USER26.CG.LOAD'
            Go to TSO and issue RECEIVE INDSN('USER26.CG.LOAD.XMI') to create
            CG.LOAD
      3. Go to TSO, ISPF, option 6 - Command, and do a receive operation.

        Par exemple :

        RECEIVE INDSN('USER26.CG.LOAD.XMI')

        La sortie obtenue est la suivante :

        Dataset BBUILD.CG.LOAD from BBUILD on PLPSC
        The incoming data set is a 'PROGRAM LIBRARY'
        Enter restore parameters or 'DELETE' or 'END' +

        Cliquez sur Entrée pour terminer. Une sortie semblable à la suivante s'affiche.

        IEB1135I IEBCOPY FMID HDZ11K0 SERVICE LEVEL UA4
        07.00 z/OS   01.07.00 HBB7720  CPU 2097
        IEB1035I USER26   WASDB2V8 WASDB2V8   17:12:15 MON
        COPY INDD=((SYS00006,R)),OUTDD=SYS00005
        IEB1013I COPYING FROM PDSU  INDD=SYS00006 VOL=CPD
        USER26.R0100122
        IEB1014I
        IGW01551I MEMBER WSGRID HAS BEEN LOADED
        IGW01550I 1 OF 1 MEMBERS WERE LOADED
        IEB147I END OF JOB - 0 WAS HIGHEST SEVERITY CODE
        Restore successful to dataset 'USER26.CG.LOAD'
        ***
  2. Configurez le serveur de planificateur de travaux s'exécutant sur un système d'exploitation réparti.
    1. Installez l'application système JobSchedulerMDILP sur le serveur de planificateur de travaux ou sur le cluster de serveurs s'exécutant sur un système d'exploitation réparti.
      1. Depuis le gestionnaire de déploiement, exécutez le script installWSGridMQClientMode.py avec les paramètres d'entrée suivants :

        ./wsadmin.sh -username <username> -password <userpassword> -f ../stack_products/WCG/bin/installWSGridMQClientMode.py

        -install
        {-cluster <clusterName> | -node <nodeName> -server <server>}
        -remove
        {-cluster <clusterName> | -node <nodeName> -server <server>}
        -qmgr
        <queueManagerName>
        -qhost
        <queueManagerHost>
        -qport
        <queueManagerPort>
        -svrconn
        <serverConnectionChannel>
        -inqueue
        <inputQueueName>
        -outqueue
        <outputQueueName>

        Par exemple, pour les clusters :

        ./wsadmin.sh -username <username> -password <password>
        -f <was_home>/stack_products/WCG/bin/installWSGridMQClientMode.py 
        -install -cluster <clusterName> -qmgr <queueManagerName>
        -qhost <queueHostName> -qport <queuePort> -svrconn 
        <serverConnectionChannel> -inqueue <inputQueueName>
        -outqueue <outputQueueName>

        Par exemple, pour les serveurs :

        ./wsadmin.sh -username <username> -password <password>
        -f <was_home>/stack_products/WCG/bin/installWSGridMQClientMode.py 
        -install -node <nodeName> -server <server> -qmgr <queueManagerName> 
        -qhost <queueHostName> -qport <queuePort> -svrconn <serverConnectionChannel> 
        -inqueue <inputQueueName> -outqueue <outputQueueName>
    2. Redémarrez tous les serveurs d'applications de planificateur de travaux pour que les modifications prennent effet.
    Eviter les incidents Eviter les incidents: Si la sécurité est activée, l'ID utilisateur de l'émetteur sur le système z/OS doit être défini comme utilisateur dans le rôle lradmin ou lrsubmitter sur le système réparti.gotcha

Résultats

Vous avez configuré l'interface de planificateur de travaux externe pour communiquer avec un serveur de planificateur de travaux sur un système d'exploitation réparti.

Que faire ensuite

Soumettez un travail à partir de l'interface de planificateur de travaux externe sur traitement par lots.


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