• principal_3

    Desde 2015, enseñando sobre el sistema operativo z/OS de IBM en esta web. z/OS se utiliza en máquinas llamadas Mainframe.

  • principal_1

    Para realizar el contenido, utilizo el producto de IBM llamado z/Development and Test Environtment Personal Edition. Este software permite emular un Mainframe y así poder utilizar z/OS para aprender.

  • principal_2

    Es utilizado por grandes empresas (bancos, aseguradoras...). Aquí aprenderás a instalar y configurar productos relacionados con z/OS.

  • principal_4

    ADCD es una distribución de z/OS que contiene productos de IBM como IMS, DB2, CICS, ZOWE, TWS, NetView, System Automation, etc.

Conectando dos zOS por XCF (Sysplex) - Tercera Parte - Final

Terminamos la entrada anterior haciendo una copia del sistema que hemos estado modificando desde que empezamos a configurar el Sysplex. Ahora vamos a arrancar el segundo sistema, el que será ZOS2. Para este arranque podemos usar el LOADPARM “CS”, porque vamos a configurarlo, pero cuando vaya a formar parte del anillo, este sistema lo tendremos que arrancar con un parámetro con arranque WARM, por lo tanto, tenemos que usar uno distinto de CS. Yo voy a elegir arrancar con el parámetro DB, que arranca con WARM y además arranca DB2 y CICS.

Vamos a la librería SYS1.IPLPARM y editamos el miembro LOADDB (os recuerdo que no está catalogada, hay que poner el volumen).

 

Ponemos “PLEXHERC” como nombre de Sysplex. Nos fijamos que el sufijo de los miembros de la librería PARMLIB es DB.

 

Editamos el miembro IEASYSDB de la librería ADCD.Z110.PARMLIB. Ponemos:

COUPLE=01,

GRS=JOIN,

GRSRNL=EXCLUDE, (este hay que añadirlo)

PLEXCFG=MULTISYSTEM,  

 

Editamos el miembro BPXPRMDB.

 

Modificamos ROOT     FILESYSTEM('HFS.&SYSPLEX..ROOT')  por ROOT     FILESYSTEM('HFS.ADCD.ROOT') 

 

Ahora editamos el miembro JES2PARM, tenemos que cambiar el nombre del “OWNNODE” a ZOS2.

 

Vamos a la librería ADCD.Z110.VTAMLST y editamos el miembro ATCSTR00. Ponemos ZOS2 en el parámetro NETID.

 

Editamos el miembro COUPLE01 de la librería ADCD.Z110.PARMLIB.

 

Cambiamos el número del dispositivo de PATHOUT a 0E41 y de PATHIN a 0E40.

 

Ahora editamos el miembro IEASYM00.

 

En SYSNAME ponemos ZOS2, por ejemplo. Y en SYSCLONE ponemos Z2.

 

Ya podemos parar el sistema ZOS2.

Ahora vamos a ir al archivo de configuración de Hércules del primer sistema (ZOS1). Añadimos los siguientes parámetros, si no los tenemos (todos son necesarios):

ARCHLVL   ENABLE bit44 

SHRDPORT  3990

LPARNAME  ZOS1

LPARNUM   01 

 

El parámetro SHRDPORT sirve para compartir discos con Hércules. Gracias a esto podemos usar un mismo disco por dos Hércules a la vez. Además de servir para crear el Sysplex, gracias a esto, también se puede tener un spool compartido por varios sistemas, etc. Los otros sistemas se conectarán a estos discos por el puerto 3990.

Podéis encontrar más información sobre discos compartidos en este blog:

http://mainframecorner.com/?p=1561

Ahora vamos al final del fichero y añadimos lo siguiente:

# CTC Adapters 

0E40    CTCE        31880    localhost             31882

0E41    CTCE        31884    localhost             31886

 

Esto sirve para hacer la conexión CTC con el Hércules. Con este tipo de conexiones podemos conectar dos zOS por XCF, por nodos NJE, etc. Si los dos Hércules están en el mismo PC, podremos usar “localhost”, pero los números de puerto deben ser distintos. En este caso, el dispositivo 0E40 escucha en el puerto 31880 y se conecta con otro dispositivo que escuche en el puerto 31882.

Si queremos conectarnos con otro equipo cuya IP del sistema operativo (NO DEL z/OS) es 192.168.1.11, pondríamos:

 # CTC Adapters

0E40    CTCE        31880    192.168.1.11      31882

0E41    CTCE        31884    192.168.1.11      31886

 

Como son dos máquinas distintas, podemos usar los mismos puertos:

# CTC Adapters

0E40    CTCE        31880    192.168.1.11      31880

0E41    CTCE        31884    192.168.1.11      31884

 

Ya hemos modificado el primer archivo de configuración, ahora vamos a por el archivo de configuración de ZOS2. Primero cambiamos el puerto del parámetro CNSLPORT a 3271 para que nos podamos conectar con los terminales a través del puerto 3271 en vez del 3270, que es el que usara el sistema ZOS1.

Añadimos los parámetros anteriores (todos son necesarios):

ARCHLVL   ENABLE bit44 

SHRDPORT  3990

LPARNAME  ZOS2

LPARNUM   21

 

Ahora vamos a modificar los discos. Los dispositivos 0A9B y 0A9C son los discos SHR001 y SHR002. Como queremos usar los mismos que va a usar el sistema ZOS1, debemos quitar la dirección del disco y poner “localhost” y, por defecto, irá a buscar los discos en el puerto 3990.

0A9B    3390    localhost

0A9C    3390    localhost

 

Si el Hércules que sirve los discos está en otro PC cuya IP del sistema operativo (NO DEL z/OS) es 192.168.1.10, podremos poner:

0A9B    3390    192.168.1.10

0A9C    3390    192.168.1.10

O también:

0A9B    3390    192.168.1.10:3990

0A9C    3390    192.168.1.10:3990

 

Por último pondremos los CTCs:

# CTC Adapters

0E40    CTCE        31882    localhost             31880

0E41    CTCE        31886    localhost             31884

 

En este caso, el dispositivo 0E40 escuchará en el puerto 31882 y se conectará con el otro Hércules que escucha en el puerto 31880. Y el dispositivo 0E40 escuchará en el puerto 31882 y se conectará con el puerto 31884 del otro Hércules-

Si queremos conectarnos con otro equipo cuya IP del sistema operativo (NO DEL z/OS) es 192.168.1.10, pondríamos:

# CTC Adapters

0E40    CTCE        31880    192.168.1.10      31882

0E41    CTCE        31884    192.168.1.10      31886

 

Como son dos máquinas distintas, podemos usar los mismos puertos:

# CTC Adapters

0E40    CTCE        31880    192.168.1.10      31880

0E41    CTCE        31884    192.168.1.10      31884

 

Ya hemos terminado todas las configuraciones, por lo tanto, vamos a proceder a arrancar los sistemas.

Primero vamos a arrancar el sistema ZOS1 que es el que tiene el parámetro “GRS=START” y además es el que hace de servidor de discos. Usaremos el mismo parámetro de arranque para que hayamos hecho toda la configuración de la PARMLIB (CS).

IMPORTANTE: Si usamos la interfaz gráfica HERCGUI, mostrará un error indicando que el archivo de configuración no es válido, tenemos que darle a IGNORAR, ya que para el Hércules si es correcto.

Cuando arranquemos, saldrán los mensajes “SYSTEM ZOS1 IS NOW ACTIVE IN SYSPLEX PLEXHERC” y “GRS COMPLEX STARTED”.

NOTA: Es posible que en arranque muestre un reply para inicializar el sysplex, responderemos “00,I”.

 

Una vez haya terminado de cargar. Abrimos otro Hércules para cargar el sistema ZOS2. Tenemos que hacer “POWER ON” en el Hércules del sistema ZOS2, pero todavía NO hay que hacer el LOAD.

NOTA: Tenemos que tener dos instalaciones de Hercules (en carpetas distintas), si usamos el mismo, abriendo la aplicación dos veces, es muy posible que no funcione. 

En el Hércules de ZOS2 veremos mensajes similares a estos:

09:10:42.932 00000CAC HHC00414I 0:0A9A CKD file cckd/sares1.cckd: cyls 3339 heads 15 tracks 50085 trklen 56832

09:10:42.935 00000CAC HHC00721I 0:0A9B Shared: connected to file localhost

09:10:42.936 00000CAC HHC00708I 0:0A9B Shared: file localhost cyls 3339 heads 15 tracks 50085 trklen 56832

09:10:42.937 00000CAC HHC00721I 0:0A9C Shared: connected to file localhost

09:10:42.937 00000CAC HHC00708I 0:0A9C Shared: file localhost cyls 3339 heads 15 tracks 50085 trklen 56832

09:10:42.938 00000CAC HHC05063I 0:0E40 CTCE: Awaiting inbound connection :31883 <- 127.0.0.1:31880

09:10:42.938 00000CAC HHC05063I 0:0E41 CTCE: Awaiting inbound connection :31887 <- 127.0.0.1:31884

09:10:42.938 00000CAC HHC01541I HDL: dyngui.dll initiated

 

Ahora vamos a la consola de ZOS1 y vamos a poner online los dispositivos 0E40 y 0E41. Usaremos estos comandos:

V 0E40,ONLINE

V 0E41,ONLINE

 

Ahora si, hacemos el LOAD del segundo sistema. En este caso, yo voy a cargarlo con el LOADPARM 0A95DB..

Pasados unos segundos comprobamos que aparece el mensaje “SYSTEM ZOS2 IS NOW ACTIVE IN SYSPLEX PLEXHERC” y también “SYSTEM ZOS1 ASSISTING IN GRS JOIN PROCCESSING”.

Si no conecta, deberemos revisar los mensaje que hayan podido salir en Hércules. También podemos comprobar el estado de los nodos en ZOS1 con los comandos:

D XCF,PATHIN,DEV=ALL

D XCF,PATHOUT,DEV=ALL

 

Como no hemos modificado el miembro CONSOL00 de la PARMLIB, los mensajes de la consola de ZOS2 saldrán por la consola de ZOS1 y la consola de ZOS2 se quedará como aparece arriba (con las letras azules). No pasa nada.

 

Con el comando “d grs” vemos que tenemos ambos sistemas activos.

 

El mensaje DFHPA1909 ocurre por no haber arrancado nunca antes con un LOADPARM COLD en el que arrancase también el CICS. Con arrancar una vez, sin sysplex, con el parámetro DC, quedará solucionado. En futuras ocasiones pondremos arrancar con DB.

Vamos a “rutear” un comando a ZOS2, es decir, vamos a dar un comando desde el sistema ZOS1 al sistema ZOS2, por ejemplo el siguiente:

ro NOMBRE_SISTEMA,comando (ro se refiere a route)

ro ZOS2,d a,l

 

Vemos que las tareas con del sistema ZOS2. Si queremos ver las tareas de ZOS1, damos un “d a,l” normal.

 

Vemos que las tareas arrancadas de ZOS1 son distintas a las de ZOS2. Vamos a parar ZOS2 con el comando “ro ZOS2,s shutall”. Vamos parando el sistema como si se tratase de uno normal, teniendo en cuenta que, como solo tenemos una consola, tenemos que "rutear" los comandos al sistema ZOS2.

 

Ahora vamos a sacar ZOS2 del anillo. Es muy importante hacerlo porque, en un entorno real, si no lo sacas del anillo, es más que probable que haya que hacer IPL a los sistemas que comparten el anillo. Además, si intentas hacer el arranque y sale la reply que indica que va a inicializar el sysplex, si respondes “00,I”, el resto de sistemas del anillo se caerán. Mejor sacarlos del anillo SIEMPRE. Usaremos el comando:

v xcf,ZOS2,offline

 

Siempre generará un reply para confirmar la acción, respondemos lo siguiente:

08,SYSNAME=ZOS2

 

Generará otro último reply, responderemos 09,DOWN. En un entorno normal, primero se haría reset clear a la partición, después se respondería a esta reply y después se haría de nuevo el load de la partición para que arranque de nuevo. Como nosotros vamos a parar todo, respondemos DOWN.

 

El sistema estará completamente fuera del anillo.


 

Ya podremos parar ZOS1 también. Ya hemos terminado la configuración para tener dos zOS independientes en Sysplex y, aparentemente, funciona bien. Dentro de poco seguiré probando cosas en este tipo de configuración.

Publish modules to the "offcanvs" position.