• 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.

System Automation - Implementación Parte 2/4

En la primera parte creamos todas las librerías necesarias para System Automation. En esta segunda parte, vamos a modificar la PARMLIB y crearemos las Started Task para que se usarán. Esta entrada será un poco más larga que la primera, pero no es complicada.

Añadir librerías como APF-Authorized y LNKLST

Debemos añadir las siguientes librerías al miembro PROGXX correspondiente. En este caso, modificaremos el miembro PROGAL de la PARMLIB.

AUT330.SINGMOD1

AUT330.SINGMOD2

AUT330.SINGMOD3

 

NOTA: En otras implementaciones explico la forma de identificar el miembro PROXX en uso.

 

Actualizar SCHEDXX

 

Buscamos el miembro *.SINGSAMP(INGESCH) y entramos.

 

Tenemos que copiar el contenido y pegarlo en el miembro SCHEDXX que tengamos en uso.

 

Para saber el miembro SCHEDXX en uso, lo buscamos en el miembro IEASYSXX que estemos usando (explicado en otras implementaciones).

 

Al pegar los datos del ejemplo INGESCH, debemos fijarnos en que no tengamos ninguna definición repetida. Si la tenemos, pegamos únicamente lo que falte.

 

Actualizar MPFLSTXX

 

Este miembro contiene la información de los mensajes que queremos que salgan por consola, que sean controlados por System Automation, etc. Aunque estos mensajes se pueden definir más adelante cambiando las políticas de System Automation, si copiamos el miembro INGEMPF de la librería AUTXXX.SINGSAMP, tendremos los mismos mensajes que la tabla INGMSGA.

 

Pegamos los datos en el miembro MPFLSTXX que tengamos en uso. Para saberlo, tendremos que mirar en la definición de las consolas que tengamos. Para saber la definición de consola que estamos usando, volvemos a mirar el miembro, IEASYSXX. Vemos que es el fichero CONSOL00.

 

Vemos que la definición MPFLSTXX en uso es MPFLST00.

 

Añadimos, al final, los mensajes copiados del ejemplo AUTXXX.SINGSAMP(INGEMPF).

 

Importante poner el mensaje AOF603D como SUP(NO), ya que es el mensaje de arranque de System Automation y es mejor permitir que salga en la consola, aunque sea respondido automáticamente por System Automation pasados 2 minutos.

 

Actualizar LPALSTXX

 

Debemos añadir la librería AUTXXX.SINGMOD3 a la concatenación de librerías LPALST. Para saber la configuración en uso, volvemos a mirar el miembro IEASYSXX. Vemos que usamos el fichero LPALST42.

 

Añadimos la librería AUTXXX.SINGMOD3, y el volumen en el que está, al final.

 

Actualizar IEFSSNXX

 

Para actualizarlo debemos comparar el ejemplo AUTXXX.SINGSAMP(INGESSN) con el miembro IEFSSNXX que tengamos en uso. Para saberlo, miramos de nuevo el miembro IEASYSXX, en este caso, usamos la configuración de IEAFSSNDB.

 

Entramos al ejemplo AUTXXX.SINGSAMP(INGESSN).

El parámetro JESX, sirve para especificar si JES2 o JES3 arrancará antes que System Automation durante el IPL. Con NOSTART no arrancará antes.

El segundo parámetro (SYSV) sirve para definir el nombre del subsistema. Por ese nombre deberán empezar el nombre de las started task. Como SYSV, para mí, no identifica correctamente las tareas de System Automation, yo le pondré el nombre “AUTO”

 

Ahora vamos a la configuración que tenemos en IEFSSNXX.

Podemos observar que ya tenemos definido el subsistema JES2 con las opciones PRIMARY y NOSTART, por lo tanto, no lo vamos a volver a poner.

 

Ahora falta definir el nombre del subsistema que tendrá System Automation. Podemos usar una sintaxis posicional, como en el ejemplo INGESSN, o la sintaxis propia de IEFSSNXX. Yo elijo la segunda opción.

Añadimos al final:

SUBSYS SUBNAME(AUTO)                   /*  SYSTEM AUTOMATION */ 

 

MODIFICANDO PROCLIB

 

STC - NetView Subsystem Interface. 

Para crear esta started task, tendremos que ir a las librerías de NetView y copiar el miembro  de la librería de ejemplos a la PROCLIB del sistema. En mi caso, la librería de ejemplos de NetView se llama NET540A.CNMSAMP.

 

Lo copiamos en la PROCLIB deseada con el nombre AUTOSSI. Debe empezar por las cuatro letras que pusimos en el nombre del miembro IEFSSNXX, en este caso, AUTO*.

 

Ahora vamos a editarlo para adaptarlo. Pondremos el nombre de la tarea y el nombre del primer calificador de las librerías de NetView. En mi caso, “NET540A”.

 

Es necesario poner la librería NETXXX.CNMLINK en las librerías APF-Authorized ya que contiene los módulos necesarios para NetView.

Para ello, modificaremos el miembro PROGXX de la PARMLIB que editamos anteriormente.

 

También la añadimos a la concatenación LNKLST.

 

STC – NetView Application

 

Para crear esta tarea copiaremos el ejemplo INGENVSA de la librería AUTXXX.SINGSAMP a la PROCLIB correspondiente con el nombre AUTONVSA.

 

Entramos en el miembro que acabamos de copiar y lo modificamos. Cambiamos el nombre interno de la tarea por AUTONVSA y ajustamos los parámetros DOMAIN, Q1, SQ1, SQ2, VQ1 y VQ2 según las librerías de nuestro sistema y lo datos que pusimos en la parte en la que creamos los datasets, al principio del tutorial.

NOTA: Si queremos integrarlo con TWS (OPC), NO quitaremos el comentario de la línea EQQ porque vamos a poner el nombre de las librerías directamente. Si quitamos el comentario, la tarea dará error al arrancar.

 

Si queremos hacer la implementación con TWS, debemos seguir bajando y quitar el comentario a los dataset que hacen referencia a TWS, como se ve en la imagen.

La DD EQQMLOG será la librería MLOG que creamos al implementar TWS.

La DD EQQMLIB es la librería de mensajes SEQQMSG0 que viene con TWS.

 

STC – Automation Manager

 

Para crear esta tarea copiaremos el ejemplo INGEAMSA de la librería AUTXXX.SINGSAMP a la PROCLIB correspondiente con el nombre AUTOAMSA.

 

Entramos en el miembro que acabamos de copiar y lo modificamos. Debemos poner el nombre de la tarea y el resto de parámetros que hacen referencia a librerías para ajustarlo a lo que tenemos. En el tipo de arranque, la primera vez deberá ser cold. Después podrá ser warm.

 

STC - Otras tareas.

 

HSAPIPLC

Esta tarea se encarga de recoger las estadísticas del IPL y lo guarda en el fichero AUTO.IPLDATA que hemos creado. La copiamos desde la librería de ejemplos a la PROCLIB correspondiente. Mantenemos el mismo nombre.

 

Editamos lo que acabamos de copiar para poner los parámetros SQ2 y VQ2.

 

Más adelante pondremos este procedimiento como una aplicación con la opción de arranque “START ON IPL ONLY”. En vez de esto, podemos añadirlo al fichero COMMNDXX de la PARMLIB que estemos usando poniendo el comando:

COM=’S HSAPIPLC,SUB=MSTR’

 De esa forma también arrancará sólo una vez.

 

También copiaremos los ejemplos INGPHOM, INGPIPLC e INGPIXCU a la PROCLIB correspondiente.

 

IMPORTANTE: estos tres miembros no se deben cambiar de nombre.

 

STC – I/O Operations.

 

Para crear esta tarea tendremos que copiar el ejemplo INGEIO de la librería AUTXXX.SINGSAMP a la PROCLIB correspondiente con el nombre AUTOIO.

 

Lo editamos para ajustarlo a nuestro sistema, como vemos en la imagen. Al tener la librería AUTXXX.SINGMOD1 añadida a la concatenación LNKLST del miembro PROGXX de la PARMLIB, podemos comentar la DD STEPLIB.

 

Hasta aquí la segunda parte. En la siguiente parte, definiremos algunos parámetos de configuración.

 

 

Publish modules to the "offcanvs" position.