Este documento explica la configuración del nodo CICSRequest en el lado del z/OS es decir la parte que usara el Broker, para revisar como se configura este nodo en el WMB Toolkit es decir la parte que se usara en el diseño de los flujos revisar la documentación adicional de este nodo.
El presente documento a sido probado en WMB v6.1, para una versión diferente se debe revisar las equivalencias.
WMB for z/OS - Configuracion del nodo CICSRequest en z/OS
1. Configuración del nodo CICSRequest en z/OS
Configuración del nodo CICSRequest en z/OS
Historia de las revisiones
Fecha Revisión Descripción Autor
2011-06-18 1.0 Documento final Oscar Vásquez Flores
I. Contexto
Este documento explica la configuración del nodo CICSRequest en el lado del z/OS es
decir la parte que usara el Broker, para revisar como se configura este nodo en el WMB
Toolkit es decir la parte que se usara en el diseño de los flujos revisar la documentación
adicional de este nodo.
El presente documento a sido probado en WMB v6.1, para una versión diferente se debe
revisar las equivalencias.
II. Diagrama de componentes
<<node>> MVS1
EXCI <<trn>> TRX
<<app>> DFHMIRS
<<app>>
CICSRequest Node
EXEC CICS LINK
<<app>> CICS Program
<<mflow>>
CONNECTION
<<broker>>
SESSIONS
TRANSACTION
<<USS>> <<cics>>
CICS: Es alguna región donde se ejecutara el programa CICS a invocar.
CICS Program: Es el programa CICS a invocar, el único requisito que debe cumplir es
de poder invocarse por COMMAREA o DPL.
CICS Request Node: Es la librería que implementa las interfaces de WMB y usa el API
de EXCI para invocar a un programa CICS.
CONNECTION, SESSIONS: Son recursos del CICS que se deben de crear para hacer
que funciona EXCI.
DFHMIRS: Es un programa CICS dummy que es usado por EXCI como puente para
invocar al CICS Program.
mflow: Es el flujo de WMB que hace uso del nodo CICSRequest.
TRX y TRANSACTION: Es la transacción y recurso de CICS que se define para asociarla
a la invocación del CICS Program.
USS: Es el Unix System Service o también conocido como OMVS, es un subsistema del
z/OS, en la práctica es un tipo de sistema operativo UNIX dentro del sistema operativo
z/OS.
Oscar Vásquez Flores(http://eoscarvf.blogspot.com - eoscarvf@gmail.com)
2. Configuración del nodo CICSRequest en z/OS
III. Pasos
1. El Nodo CICSRequest para WMB for z/OS v6.1 es un Support Pack de código IA12, se
puede bajar de:
http://www-01.ibm.com/support/docview.wss?rs=171&uid=swg24006950&loc=en_US&cs=utf-
8&lang=en&wv=1
Bajar el archivo ia12.tar y el ia12.zip(contiene documentación adicional )
2. Subir el ia12.tar dentro de algún directorio HFS del USS, por ejemplo a /u/eoscarvf/,
debe subir en modo binario, usar FTP por ejemplo.
3. Ingresar a la línea de comandos del USS, por ejemplo desde una sesión de TSO se
puede hacer con “TSO OMVS”, también se puede ingresar por Telnet de forma directa al
USS.
Desempaquetar el archivo .tar:
tar -xof /u/eoscarvf/ia12.tar quedara así:
/u/eoscarvf/ia12/lil/imbcics.lil
/u/eoscarvf/ia12/messages/*
4. El usuario con el que esta corriendo el Broker debe tener permisos de Lectura y
Ejecutar sobre los directorios/archivos anteriores, por ejemplo se pueden asignar los
siguientes permisos:
$ pwd
/u/eoscarvf/
$ chmod -R 755 *
5. Colocar al directorio /u/eoscarvf/ia12/lil como parte del parámetro LILPATH del
Broker. También se puede colocar el archivo imbcics.lil como parte de algún directorio
que ya sea parte del LILPATH. Nunca usar los directorios donde esta instalado el WMB,
debido a que pueden cambiar por la instalación de algún Fix.
LILPATH se configura con el comando mqsichangebroke, se puede usar su
equivalente JCL BIPCHBK o desde la consola de comandos (SDSF->) del z/OS con el
sinónimo cb.
Ejemplo desde la consola de comandos:
El comando mqsichangebroker requiere hacer un STOP al Broker:
/f Q200BRK, pc
Cambiamos el LILPATH:
/f Q200BRK, cb l=’{Paths ya existentes} : /u/eoscarvf/ia12/lil’
Aun no dar START del bróker.
6. Actualizar el archivo BIPBPROF para las variables de ambiente que se indican, el
archivo BIPBPROF esta localizado en {COMPONENTDATASET} en el FS del MVS, por
ejemplo: BIP.BROKER.Q200BRK
Luego se debe ejecutar el JOB BIPGEN para que las variables de ambiente sean
registradas en el archivo final ENVFILE, localizado en {HOME} en el HFS por ejemplo
/u/home, este es el directorio home de todos los usuarios del USS.
BIPGEN esta localizado en el mismo {COMPONENTDATASET}.
Variables de ambiente:
NLSPATH= {Paths ya existentes} : /u/eoscarvf/ia12/messages/%L/%N
MQSI_CONSOLE_NLSPATH= {Paths ya existentes} : /u/eoscarvf/ia12/messages/En_US
NODE_CICSREQUEST_IRC_USER_NAME=TESTEX01
Oscar Vásquez Flores(http://eoscarvf.blogspot.com - eoscarvf@gmail.com)
3. Configuración del nodo CICSRequest en z/OS
NLSPATH y MQSI_CONSOLE_NLSPATH son variables que ya existen y se usan para
los catálogos de mensajes en la consola del z/OS. Este nodo trae mensajes adicionales.
NODE_CICSREQUEST_IRC_USER_NAME es una variable nueva, se puede crear a
continuación de las variables anteriores pero es importe poner un comentario del uso
que se le dará, su valor es el mismo del atributo NETNAME del recurso CICS
CONNECTION, revisar el siguiente paso.
En caso no se especifique el valor en NODE_CICSREQUEST_IRC_USER_NAME se
tomara el nombre del usuario que esta ejecutando al Broker, por lo tanto NETNAME
debe tener ese valor.
7. En cada CICS al que tendrá acceso el nodo CICSRequest se deben crear los recursos
CONNECTION y SESSIONS, para esto se puede utilizar la transacción CEDA o el
programa DFHCSDUP para la creación en batch, por ejemplo con CEDA:
CONNECTION
CEDA DEFINE CONNECTION(EX01)
GROUP(GMBTEST1)
DESCRIPTION(CONNECTION EXCI PARA WMB)
NETNAME(TESTEX01)
ACCESSMETHOD(IRC)
PROTOCOL(EXCI)
CONNTYPE(SPECIFIC)
SESSIONS
CEDA DEFINE SESSIONS(EX01)
GROUP(GMBTEST1)
DESCRIPTION(SESSIONS EXCI PARA WMB)
CONNECTION(EX01)
PROTOCOL(EXCI)
Todos los CICS a los cuales accede un Broker deben tener el recurso CONNECTION con
el mismo valor del atributo NETNAME. Esto debido a lo reviso en el paso 6.
Como se sabe un imagen de z/OS puede tener varios Broker corriendo.
Para más detalles respecto a los recursos CICS creados ver la sección de Anexos.
Oscar Vásquez Flores(http://eoscarvf.blogspot.com - eoscarvf@gmail.com)
4. Configuración del nodo CICSRequest en z/OS
IV. Consideraciones
Usualmente se nombra al nodo dentro del flujo de WMB con el mismo nombre de
programa que invocara.
Se especifica el dato del CICS ApplID, no se puede usar el CICS generic resourse
name, debido a que esto es valida en comunicación con VTAM y el protocolo EXCI no
soporta VTAM.
Es necesario el CICS Program Name a invocar.
En el caso del CICS Userid se puede colocar cualquier dato debido a que este será
reemplazado por el valor de la variable NODE_CICSREQUEST_IRC_USER_NAME
descrita en pasos anteriores.
Si no se coloca nada en el campo CICS Mirror transaction name el programa CICS se
ejecutara bajo la transacción por defecto CSMI, para temas de monitoreo y calidad de
servicio es mejor especificar una transacción por cada programa a invocar desde un
flujo de WMB.
Oscar Vásquez Flores(http://eoscarvf.blogspot.com - eoscarvf@gmail.com)
5. Configuración del nodo CICSRequest en z/OS
Para el ejemplo es necesario definir la transacción MB01, con CEDA:
CEDA DEFINE TRANSACTION(MB01)
GROUP(GMBTEST1)
DESCRIPTION(TRX PARA WMB Y PROGRAMA BXRPTP01)
PROGRAM(DFHMIRS)
TWASIZE(0)
PROFILE(DFHCICSA)
Esta transacción debe estar asociada al programa DFHMIRS el cual es usado por EXCI
como inicio, desde este se hace LINK al programa final.
Oscar Vásquez Flores(http://eoscarvf.blogspot.com - eoscarvf@gmail.com)
6. Configuración del nodo CICSRequest en z/OS
V. Anexos
Creación de un SESSIONS
Sessions ==> EX01
Group ==> GRPMBRK1
DEscription ==> Sesion EXCI para WMB
SESSION IDENTIFIERS
Connection ==> EX01
SESSName ==>
NETnameq ==>
MOdename ==>
SESSION PROPERTIES
Protocol ==> Exci Appc | Lu61 | Exci
MAximum ==> 000 , 000 0-999
RECEIVEPfx ==> B1
RECEIVECount ==> 004 1-999
SENDPfx ==>
SENDCount ==> 1-999
SENDSize ==> 04096 1-30720
RECEIVESize ==> 04096 1-30720
SESSPriority ==> 000 0-255
Transaction :
OPERATOR DEFAULTS
OPERId ==>
OPERPriority ==> 000 0-255
OPERRsl ==> 0 0-24,...
OPERSecurity ==> 1 1-64,...
PRESET SECURITY
USERId ==>
OPERATIONAL PROPERTIES
Autoconnect ==> No No | Yes | All
INservice : Yes No | Yes
Buildchain ==> Yes Yes | No
USERArealen ==> 000 0-255
IOarealen ==> 04096 , 04096 0-32767
RELreq ==> No No | Yes
DIscreq ==> No No | Yes
NEPclass ==> 000 0-255
RECOVERY
RECOVOption ==> Sysdefault Sysdefault|Clearconv|Releasesess|Uncondrel|None
RECOVNotify : None None | Message | Transaction
Los elementos resaltados son los únicos que se deben ingresar, los demás se deben
dejar por defecto.
Oscar Vásquez Flores(http://eoscarvf.blogspot.com - eoscarvf@gmail.com)
7. Configuración del nodo CICSRequest en z/OS
Creación de un CONNECTION
CONnection ==> EX01
Group ==> GRPMBRK1
DEscription ==> Conexion EXCI para WMB
CONNECTION IDENTIFIERS
Netname ==> TESTEX01
INDsys ==>
REMOTE ATTRIBUTES
REMOTESYSTem ==>
REMOTEName ==>
REMOTESYSNet ==>
CONNECTION PROPERTIES
ACcessmethod ==> IRc Vtam | IRc | INdirect | Xm
PRotocol ==> Exci Appc | Lu61 | Exci
Conntype ==> Specific Generic | Specific
SInglesess ==> No No | Yes
DAtastream ==> User User | 3270 | SCs | STrfield | Lms
RECordformat ==> U U | Vb
Queuelimit ==> No No | 0-9999
Maxqtime ==> No No | 0-9999
OPERATIONAL PROPERTIES
AUtoconnect ==> No No | Yes | All
INService ==> Yes Yes | No
SECURITY
SEcurityname ==>
ATtachsec ==> Local Local | Identify | Verify | Persistent| Mixidpe
BINDPassword : PASSWORD NOT SPECIFIED
BINDSecurity ==> No No | Yes
Usedfltuser ==> No No | Yes
RECOVERY
PSrecovery ==> Sysdefault | None
Xlnaction ==> Keep Keep | Force
Los elementos resaltados son los únicos que se deben ingresar los demás se deben dejar
por defecto.
Descripción de los mas importantes:
Netname:
ACcessmethod:
IRC:
Communication between the local CICS region and the region defined by this connection
definition is through the interregion communication (IRC) program DFHIRP, using the
SVC (as opposed to cross-memory (XM)) mode of DFHIRP.
Note:
This use of the term IRC is more specific than its general use.
You can use IRC for multiregion operation (MRO) for regions that are in the same MVS
image or in different MVS images within a sysplex
PRotocol:
EXCI: The external CICS interface. Specify this to indicate that this connection is for
Oscar Vásquez Flores(http://eoscarvf.blogspot.com - eoscarvf@gmail.com)
8. Configuración del nodo CICSRequest en z/OS
use by a non-CICS client program using the external CICS interface.
Conntype:
SPECIFIC
The connection is for communication from a non-CICS client program to the CICS region,
and is specific. A specific connection is an MRO link with one or more sessions dedicated
to a single user in a client program. For a specific connection, NETNAME is mandatory.
Oscar Vásquez Flores(http://eoscarvf.blogspot.com - eoscarvf@gmail.com)