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

ZOWE 1.9.0 - Instalación SMP/E - Parte 2/2

ZOWE 1.9.0 - Instalación SMP/E - Parte 2/2

En esta segunda parte terminaremos la configuración de ZOWE 1.9.0 y veremos un poco el producto para conocerlo. Además, comentaré algunos errores que he encontrado durante el proceso debido al emulador.

Aprovecho para recordar que hay un “trial” de 3 días de ZOWE en la web de IBM que es interesante (además, podéis probar a hacer esta entrada en ese sistema. Hay que tener alguna cosa en cuenta, pero es posible y funciona bien)-

https://www-01.ibm.com/events/wwe/ast/mtm/zowe.nsf/enrollall?openform

 

Vamos a la última parte de la configuración antes de arrancar el producto.

Seguiremos los pasos indicados en:

https://docs.zowe.org/v1-9-x/user-guide/configure-xmem-server.html

La primera parte habla de copiar los módulos de la imagen a una librería de usuario. Supongo que esa parte es necesaria cuando se sigue el otro procedimiento de instalación. En este caso, yo los dejaré donde están.

061 watermark

 

Ahora copiamos los miembros ZWESISTC y ZWESASTC de la librería **.SZWESAMP a nuestra PROCLIB.

062 watermark

 

Editamos ambas tareas para indicar la librería de módulos y parmlib correctas. En mi caso, ZOWE.V190.SZWEAUTH y ADCD.Z23B.PARMLIB.

063 watermark

 

064 watermark

 

Vamos al miembro ZWESISCH de la librería **.SZWESAMP y copiamos el contenido el miembro SCHEDxx correspondiente de nuestra PARMLIB.

065 watermark

 

066 watermark

 

Activamos la configuración de forma dinámica con el comando:

/SET SCH=xx

067 watermark

 

Ahora añadimos la librería de módulos a APF.

SETPROG APF,ADD,DSNAME=ZOWE.V190.SZWEAUTH,VOLUME=PRD004

Para sistemas con SMS:

SETPROG APF,ADD,DSNAME=ZWES.SISLOAD,SMS

068 watermark

 

Aparecerá la confirmación.

069 watermark

 

Además, lo añadimos en el miembro PROGxx de PARMLIB correspondiente.

 

El manual indica lo siguiente:

Step 5: Configure an IVSF cryptographic services environment

To generate symmetric keys, the user ZWESVUSR who runs ZWESVSTC requires READ access to CSFRNGL in the CSFSERV class.                       

En mi caso, en RACF ya lo tenía definido como UNIVERSAL ACCESS READ, por lo tanto, entiendo que debería ser suficiente.

070 watermark

 

Por último, copiamos el fichero de parámetros ZWESIP00 de **. SZWESAMP a nuestra PARMLIB (la que pusimos al editar las STCs).

071 watermark

 

¡Uno de los momentos más esperados! Arrancar “cross memory server”.

/S ZWESISTC,REUSASID=YES

 

También es posible arrancarlo con el parámetro COLD (si estamos haciendo un cambio de versión o la primera vez, por ejemplo):

/S ZWESISTC,PARM=’COLD’

072 watermark

 

Aparentemente, ha arrancado.

073 watermark

 

074 watermark

 

Ahora vamos a preparar la STC de ZOWE.

Copiamos el miembro ZWESVSTC de la librería **.SZWESAMP a nuestra PROCLIB.

075 watermark

 

En mi caso, voy a editar la tarea para indicar la ruta de la instancia (podríamos indicarla con el comando de arranque también).

076 watermark

 

Arrancamos la tarea con el comando:

/S ZWESVSTC

Si queremos indicar la instancia podemos usar el comando:

/S ZWESVSTC,INSTANCE='$ZOWE_INSTANCE_DIR'

077 watermark

 

Arrancará correctamente pero tardará unos 30 minutos más o menos (en mi caso, al ser un entorno emulado). Podemos comprobar las tareas ZWE* en la opción DA.

Durante ese tiempo, estará consumiendo el 100% de CPU y casi no se podrá trabajar con el sistema. Después bajará el consumo, pero seguirá con el arranque.

Simplemente dejamos que haga sus procesos y pasado ese tiempo, todo será estable. Para confirmar que ha arrancado todo, en un sistema emulado que normalmente no debería tener carga, se puede comprobar que el uso de CPU es mínimo (1% o 2%, por ejemplo).

Lo que más suele tardar parece que es el “API Discover”.

Todos estos procesos que usan java (z/OSMF, ZOWE, etc.) suelen tardar bastante en ejecutar en entornos emulados.

078 watermark

 

Arrancado esta tarea podemos encontrar errores del tipo:

Error 0: Could not contact z/OS MF on 'https://S0W1.DAL-EBIS.IHOST.COM:00443/zosmf/info' - Error: connect ETIMEDOUT xxx.xxx.xxx.xxx:443

Error 1: ZOWE_EXPLORER_HOST                           

Esto ocurre porque debemos configurar correctamente el nombre del host en z/OS (si no lo teníamos hecho anteriormente).

079 watermark

 

Para arreglarlo, simplemente buscamos la tarea RESOLVER para saber los parámetros que usamos.

NOTA: Es posible que el sistema en el que estamos no tenga tarea RESOLVER en PROCLIB, pero si esté arrancado (se puede arrancar con el arranque de OMVS). Se puede revisar los parámetros con un comando que veremos más abajo.

080 watermark

 

Nos fijamos en el parámetro GLOBALIPNODES. Debemos editar ese fichero.

081 watermark

 

También podemos usar el comando: F RESOLVER,DISPLAY

082 watermark

 

Simplemente hay que poner la IP del sistema en nombre correspondiente.

083 watermark

 

Refrescamos la configuración del RESOLVER con el comando:

F RESOLVER,REFRESH

084 watermark

 

Si hacemos el comando: TSO PING S0W1.DAL-EBIS.IHOST.COM debería responder correctamente y al arrancar de nuevo ZOWE debería hacerlo sin errores.

085 watermark

 

Si usamos la IP y el puerto 8544 (parámetro ZOWE_ZLUX_SERVER_HTTPS_PORT del fichero instance.env), deberíamos acceder a la web.

NOTA: Primero entramos usando la IP para ver los errores que nos podemos encontrar.

https://192.168.1.14:8544

086 watermark

 

Si intentamos abrir JES Explorer, dirá que no puede encontrar el servidor s0w1.dal-ebis.ihost.com

Esto ocurre porque no puede resolver ese nombre, por lo tanto, tenemos que definirlo en el fichero “host” del sistema cliente para indicar la IP correspondiente.

087 watermark

 

En Windows se encuentra en la ruta “C:\Windows\System32\drivers\etc” y en Ubuntu (por ejemplo) hay que editar “/etc/host”.

088 watermark

089 watermark

 

Ahora si entramos usando la dirección https://s0w1.dal-ebis.ihost.com:8544 veremos el error (usando Firefox y Chrome):

Código de error: SSL_ERROR_NO_CYPHER_OVERLAP

Esto ocurre por el tipo de cifrado. Afecta a los navegadores Firefox y Chrome. Con Microsoft Edge, aparentemente, funciona bien, pero no todo) y por este motivo no podré profundizar demasiado con este producto.

En mi caso, no he conseguido arreglarlo porque parece más bien un problema del emulador de Mainframe que uso yo (también puede ser un error en mi configuración, pero si intentamos acceder a API Catalog, el software se cae. Creo que es problema del tipo de CIPHER.).

En estos enlaces indican cómo arreglarlo para el emulador de ZD&T (o ZPDT).

https://github.com/zowe/zlux/issues/144

https://github.com/zowe/api-layer/issues/565

 

090 watermark

 

De forma opcional, podemos añadir los certificados en el navegador. Lo pongo por curiosidad, pero, en principio, no es necesario.

En pasos anteriores, generamos unos certificados autofirmados en la ruta “/global/zowe/keystore”.

Lo vamos a descargar por FTP para instalarlos en el sistema.

ftp xxx.xxx.xxx.xxx

cd '/global/zowe/keystore/local_ca'

get localca.cer

091 watermark

 

Una vez descargado, hacemos doble clic y pinchamos en “Instalar certificado…”. Haciendo esto, lo reconocerá en Google Chrome y Microsoft Edge, pero no en Firefox (lo veremos después).

092 watermark

 

Podemos instalarlo para el usuario o para el equipo.

093 watermark

 

Pinchamos en Examinar para indicar dónde guardarlo.

094 watermark

 

Debemos añadirlo en “Trusted Root Certification Authorities”.

095 watermark

 

Una vez hecho, pulsamos Aceptar, Siguiente y Finalizar.

096 watermark

 

Para importarlo en Firefox, vamos a Opciones -> “Privacidad & Seguridad”. Al final de la página veremos el botón “Ver certificados”.

097 watermark

 

Pulsamos en “Importar” y añadimos el mismo certificado.

098 watermark

 

Marcamos en “Confiar en esta CA para identificar sitios web”.

099 watermark

 

Ya tendremos el certificado.

100 watermark

 

Al acceder la web, aparecerá como “Conexión segura”.

101 watermark

 

Por último, “daremos una vuelta rápida” por esta web para no alargar mucho más la entrada. Para tener todas las opciones disponibles, ya que debido al emulador y el cifrado tuve muchos errores, usaré Microsoft Edge.

La interfaz será similar a la de un sistema operativo (barra de tareas, menú de aplicaciones, ventanas, notificaciones) y tendremos distintas aplicaciones que vienen con el producto.

102 watermark

 

Podemos la aplicación que emula un terminal 3270.

103 watermark

 

Si abrimos otra aplicación como JES Explorer, veremos que es similar a SDSF para poder ver las salidas de los jobs y ejecutarlos.

Nos pedirá el usuario.  

104 watermark

 

Podremos usar varios filtros para ver las salidas que queramos.

105 watermark

 

Si hacemos clic en la salida de algún job, podremos ver directamente una parte de la salida.

Si hacemos clic con el botón derecho, tendremos las opciones: Open (para ver la salida completa), Purge Job (eliminar la salida) y Get JCL (ver el job y poder submitirlo).

106 watermark

 

Al ver una salida, hay algunas palabras clave que da una ayuda.

En el caso de la palabra “TIME”, la ayuda no es muy adecuada… porque según donde aparezca esa palabra, hace referencia a una cosa o a otra.

107 watermark

 

Ejemplo de una parte de la salida.

108 watermark

 

Ejemplo del job ejecutado (igual que dar SJ). A la derecha aparecerá el botón “submit” para ejecutarlo.

109 watermark

 

Si abrimos la utilidad “MVS Explorer”, encontraremos algo similar a buscar por la opción 3.4 de ISPF.

Tendremos el listado de miembros que contiene un dataset (color azul).

Podremos indicar el tipo de fichero que estamos tratando para que remarque las palabras clave (color rojo).

Además, tiene una opción para abrir el miembro en una nueva ventana (color verde).

110 watermark

 

Si hacemos clic derecho sobre uno de los miembros, veremos otras opciones disponibles, como ejecutar un job.

111 watermark

 

Ahora abriremos “API Catalog” (esta parte de la entrada la completé en otro sistema, ya que con mi emulador tenía problemas por los cifrados y no podía mostrarlo).

Si nos diese el error de la imagen, no dejará aceptar el sitio como seguro. Una forma de poder hacerlo es abriendo una nueva pestaña del navegador y poniendo la ruta de la web, pero cambiando el puerto 8544 por el 7554. De esta forma podremos aceptar la web como segura y se abrirá el API Catalog.

https://tu_direccion:7554/

Podemos ver otra definición de puertos en “/usr/lpp/zowe_instance/instance.env”.

090a watermark

 

Una vez aceptado “el riesgo”, podremos logarnos (con el IBMUSER, se puede acceder).

112 watermark

 

 

Aparecerán aquellas API que tenemos disponibles.

114 watermark

 

Si entramos en alguna de las APIs, veremos la forma de usarlas.

115 watermark

 

Podemos hacer una prueba básica de que funciona cogiendo lo que indica en “Base URL” y ponerlo en un navegador, por ejemplo:

https://tu_direccion:7554/api/v1/jobs

En este caso, devuelve datos, por lo tanto, funciona correctamente. Debería funcionar igual de bien en una aplicación que hagamos.

116 watermark

 

Además, esta petición también permite los parámetros: prefix, owner y status.

117 watermark

 

Voy a probar el parámetro PREFIX. Por ejemplo:

https://tu_direccion:7554/api/v1/jobs?prefix=zowe*

¡Importante el asterisco del final!

Vemos que también devuelve los datos correspondientes.

118 watermark

 

 

Espero que os haya gustado y hayáis aprendido. En la siguiente entrada, haremos una subida de versión de este producto a la versión 1.12.0.

 

Publish modules to the "offcanvs" position.