Saltar al contenido principal

Instalar utilidad web y desplegar sistema z/OS

Vamos a instalar la utilidad web y en desplegar un sistema z/OS a partir de una imagen. La web sirve para administrar nuestros sistemas emulados de forma sencilla.

Además, también proporciona acceso por REST APIs para poder crear nuestros propios procesos y automatizar la administración.

La herramienta web puede estar instalada en el mismo sistema que el servidor de licencias, pero, en este caso, lo haré separado.
El motivo es que prefiero no trastear con el servidor de licencias, porque esta versión es un trial y “si lo rompo”, me tocará molestar a terceras personas para que me generen una nueva licencia.

Instalar utilidad Web

aviso

Aunque los pantallazos se muestrn con el sistema operativo Ubuntu en español, para que todo funcione correctamente, Ubuntu debe estar en inglés.

Los pasos de instalación son iguales que cuando instalamos el servidor de licencias.

Copiamos el paquete de instalación a esta máquina. En mi caso, se llama ZDT_Install_EE_V12.0.5.0.tgz

Abrimos un terminal y vamos a la ruta en la que lo hemos copiado. Cambiamos los permisos a 775:

chmod 755 ZDT_Install_EE_V12.0.5.0.tgz

Descomprimimos el fichero con el comando:

tar -xzvf ZDT_Install_EE_V12.0.5.0.tgz

Ejecutamos el programa para hacer la instalación:

./ZDT_Install_EE_V12.0.5.0.x86_64

Emuframe image

Elegir instalar la opción 1.

Emuframe image

Elegimos la opción 1 - Install. Emuframe image

Después de pulsar intro (un rato…), si estamos de acuerdo con la licencia, aceptamos.

Además, nos dirá que va a crear un usuario llamado zdt para ejecutar la herramienta web.
También nos pedirá la ruta donde instalarlo y si queremos usar el puerto por defecto, 9443. En mi caso, lo dejo todo por defecto.

Emuframe image

Ahora nos indicará si queremos cambiar la password del usuario para acceder a la herramienta web.
Por defecto, el usuario es zdtadmin y la contraseña password, sin comillas.

Voy a cambiar la contraseña.

Emuframe image

Una vez termine la instalación, tendremos que arrancar el servidor, usaremos el comando:

/opt/ibm/zDT/bin/startServer.sh

Emuframe image

Una vez arrancado, indicará la ruta de acceso.

Emuframe image

En mi caso, uso la IP del sistema para acceder al servidor: https://192.168.1.32:9443/ZDTMC/login.html

Veremos la pantalla de acceso. Usaremos el usuario zdtadmin y la password que pusimos anteriormente.

Emuframe image

Aparecerá un mensaje que nos da instrucciones en caso de tener que migrar nuestra instalación anterior a esta. En mi caso, es una instalación nueva.

Emuframe image

Veremos las distintas opciones disponibles. No voy a explicar lo que hacen todas, ya que vienen explicadas en el manual de usuario.

Si vamos a hacer todo el “recorrido” para hacer el despliegue de la imagen ADCD en un sistema nuevo.

Emuframe image

Almacenamiento de imágenes

Voy a empezar por la opción Almacenamiento de imágenes. Esta opción sirve para conectar con el repositorio de imágenes (discos de los sistemas que queramos) mediante FTP (puerto 21, por defecto) o SSH (puerto 22, por defecto).

Desconozco si el almacén de imágenes puede estar en el mismo servidor que la herramienta web.
En mi caso, instalaré FileZilla Server (servidor FTP) en otro PC para hacer el almacén de imágenes (el motivo es que en ese PC tengo más espacio disponible).

Una vez instalado FileZilla Server en Windows (no pongo pantallazos, es una instalación muy sencilla), voy a crear un usuario para ZD&T. Lo llamaré “ibmsys1”.

Emuframe image

Ahora voy a crear una serie de directorios y almacenaré la versión ADCD que tengo (ADCD z/OS 2.4 Noviembre 2019).

En mi caso la ruta será “E:\zdt_ftp\adcd\november2019\volumes”. La carpeta “zdt_ftp” será la ruta raíz a la que se accederá por FTP. El nombre del resto de directorios los he puesto siguiendo el manual.

Dentro de la carpeta que contiene la versión ADCD (“november2019”, en mi caso), debemos guardar el fichero ADCDTOOLS.XML que descargamos junto al producto.
La utilidad web utiliza este fichero para obtener información de los volúmenes.

Emuframe image

En la carpeta volumes tendré los discos del sistema.

NOTA

En mi caso, tuve un error porque puse los volúmenes “A4RES1” y “SARES1” desencriptados y el resto de volúmenes los puse descomprimidos.
Es obligatorio poner los volúmenes ZPD (“A4RES1.ZPD” y “SARES1.ZPD”) y el resto comprimidos (“.gz”).

Emuframe image

Ahora asignaré la carpeta zdt_ftp al usuario de FTP ibmsys1.

Emuframe image

Además, yo tuve que permitir la conexión entrante de la aplicación “FileZilla Server” en el Firewall de Windows.

Si permitía la conexión solo al puerto 21, al intentar obtener los datos de las imágenes fallaba, porque al entrar en “Passive Mode” utiliza puertos al azar (aunque se pueden definir puertos personalizados).

Emuframe image

Emuframe image

Ahora en la herramienta web de ZD&T, vamos a la opción Almacenamiento de imágenes.

Emuframe image

Marcamos la opción Protocolo de transferencia de archivos (FTP) y rellenamos los datos.

Guardamos y probamos la conexión. Debería aparecer el mensaje ¡La conexión es correcta!.

Emuframe image

Volvemos a la pantalla principal y entramos en la opción ADCD de la derecha.
También, podríamos entrar directamente en la opción que aparece en la izquierda, pero la opción de la derecha explica cómo distribuir los discos para que funcione correctamente (lo que hicimos más arriba con las carpetas de Windows: E:\zdt_ftp\adcd\november2019).

Emuframe image

Crear imagen z/OS

Comprobamos que hemos hecho bien los pasos y pulsamos en IMAGEN de ADCD.

Emuframe image

Aquí elegiremos la versión ADCD de la que crearemos la imagen. Me ha sorprendido que permite seleccionar componentes que queramos para incluirlos o no.

Como yo quiero que este sistema ocupe poco (por temas de espacio), elegiré solo el sistema z/OS y z/OSMF. Después, pulsaremos el botón Crear imagen.

Emuframe image

Emuframe image

Aparecerá un mensaje confirmando la creación.

Emuframe image

Conectar con servidor de licencias

Entramos en Licencias de emulador para definir el servidor de licencias.

Emuframe image

Ponemos la IP del servidor de licencias (si lo tenemos instalado en el mismo sistema que la utilidad web, se puede poner 127.0.0.1).

Emuframe image

Definir sistema de destino

El siguiente paso es definir el sistema de destino, es decir, el sistema en el que se instalará el emulador y la imagen creada, pero antes debemos instalar un servidor SSH en la máquina de destino.

En mi caso, me he creado un nuevo sistema como en el mismo Ubuntu, pero…

¡MUY IMPORTANTE!

El idioma del sistema Ubuntu debe ser INGLÉS.

Si el sistema no está en inglés, al desplegar las imágenes en el sistema de destino, tendremos errores del tipo:

[10/08/20 23:36:36:239 CEST] 0009bae0 W Unexpected exception.
[10/08/20 23:48:52:225 CEST] 0009bd63 E is not a supported CPU architecture.
[10/08/20 23:48:52:537 CEST] 0009bd63 com.ibm.zdt.rest.v1.services.BaseJPAService E [ZDT-LOG-SEVERE] deployLinuxValidation exception: For input string: ""

Esto ocurre porque la aplicación lanza comandos y espera la respuesta del mensaje en inglés.

Emuframe image

Después, he instalado el servidor SSH usando el comando:

apt-get install openssh-server

Emuframe image

Una vez instalado, podemos comprobar que accedemos usando la utilidad PUTTY.

Emuframe image

En mi caso, voy a utilizar un usuario root de la máquina de destino para distribuir los discos en la máquina de destino.
Es necesario crear el usuario ibmsys1 como no-root en la máquina de destino. Además, hay que crear el grupo zpdt y asignar el usuario ibmsys1 a este grupo.

Crear el grupo “zpdt”.

addgroup zpdt

Crear usuario “ibmsys1”. Además, le asignamos al grupo “zpdt”. Este comando crea automáticamente el directorio “/home/ibmsys1”.

useradd -m -g zpdt -s /bin/bash ibmsys1
passwd ibmsys1

Emuframe image

Como usaré el usuario ibmsys1 para hacer el despliegue, debemos darle permisos “sudo” sin password. Hay dos opciones:

  • La rápida, pero menos segura:
  ibmsys1 ALL = (root) NOPASSWD: ALL
  • La correcta es dar permisos a los scripts que usará:
  ibmsys1 ALL=(root) NOPASSWD: /bin/chown root /home/ibmsys1/zdt/zdtInstall/zdt_modify_files_byRoot.sh, /home/ibmsys1/zdt/zdtInstall/zdt_modify_files_byRoot.sh, /home/ibmsys1/zdt/zdtInstall/zdt_install_dependencies_byRoot.sh, /home/ibmsys1/zdt/zdtInstall/zdt_config_user_byRoot.sh, /home/ibmsys1/zdt/zdtInstall/zdt_install_product_byRoot.sh, /home/ibmsys1/zdt/zdtInstall/zdt_config_network_byRoot.sh, /home/ibmsys1/zdt/zdtInstall/zdt_cleanup_byRoot.sh, /bin/chown ibmsys1 /home/ibmsys1/zdt/zdtInstall/zdt_env.sh,/home/ibmsys1/zdt/zdtInstall/zdt_env.sh, /bin/chown ibmsys1 /home/ibmsys1/zdt/zdtInstall/zdt_start.sh, /home/ibmsys1/zdt/zdtInstall/zdt_start.sh, /bin/chown ibmsys1 /home/ibmsys1/zdt/zdtInstall/zdt_ipl.sh,/home/ibmsys1/zdt/zdtInstall/zdt_ipl.sh
NOTA

No debe haber saltos de línea. Sustituid “/home/ibmsys1” por vuestro directorio de despliegue.

IMPORTANTE Los seis últimos comandos son obligatorios para poder parar y arrancar el sistema de forma automática.

Debemos incluir esto en /etc/sudoers. Comando:

visudo

Emuframe image

Debemos incluirlo toda la sentencia en la misma línea. Guardamos (Control+O) y salimos (Control+X).

Emuframe image

Volvemos a la página principal de la utilidad web y pinchamos en Entornos de destino.

Emuframe image

Clic en Añadir entorno de destino.

Emuframe image

El tipo de entorno será Linux.

Emuframe image

Ponemos una etiqueta al servidor, la IP y el puerto de SSH (por defecto, 22). Marcamos Ajustar valores avanzados.

Emuframe image

En Sintaxis del mandato de gestión de privilegios elegimos sudo. El resto de opciones las dejo por defecto.

Emuframe image

En la última pantalla, solicitará la IP del z/OS emulado. Poned una que se ajuste con vuestra configuración. En mi caso, voy a dejar la que aparece por defecto y ya la cambiaré más adelante porque si ponemos una IP incorrecta podemos tener problemas con el despliegue de la imagen.

aviso

Durante el despliegue, se cambiará la configuración IP del sistema, si ponemos una configuración errónea, no conectaremos con el servidor de licencias y el sistema z/OS no arrancará.
El despliegue se quedará parado sin posibilidad de hacer nada, habrá que reiniciar el servidor de la utilidad web y, posiblemente, la instancia (en mi caso, hasta reinstalar la instancia).

Emuframe image

Se añadirá correctamente.

Emuframe image

Desplegar sistema z/OS

Volvemos a la pantalla inicial y entramos en Supervisar y Gestionar.

Emuframe image

En la parte de las imágenes nos podemos fijar que la imagen que creamos tiene los dos componentes que elegimos y ocupa unos 151 GB.

En entornos de destino es importante fijarse en la instancia que hemos añadido. Debe aparecer con el check verde. Si apareciese un aspa roja, significa que no es posible conectar con el servidor de destino (quizá por el SSH o el puerto 22 bloqueado) y no se podrá desplegar la imagen.

Emuframe image

Si durante un despliegue encontramos errores, podemos descargar el log (mensajes y consola) desde la opción de la imagen.

Emuframe image

Emuframe image

Volvemos a la página principal y entramos en Desplegar.

Emuframe image

Elegimos la imagen y servidor de destino que queramos (si tenemos varios). Clic en Desplegar imagen.

Emuframe image

Solicitará la forma de inicio de sesión.
Podemos elegir entre credenciales y certificado. En mi caso, credenciales. Como directorio de despliegue pondré “/home/ibmsys1”.

Emuframe image

La contraseña para el usuario IBMUSER que usaré es “sys1”.

Emuframe image

Usaré la siguiente configuración. Usad los parámetros que se ajusten a vuestro entorno.

Emuframe image

Emuframe image

Emuframe image

Aparecerá un mensaje indicando que el proceso se ha iniciado. Podemos comprobarlo pulsando en Supervisar.

Emuframe image

Si hacemos clic en el porcentaje, veremos el detalle.

Emuframe image

Emuframe image

También podremos descargar el log.

Emuframe image

NOTA

En mi caso, la primera vez terminó en error porque puse los volúmenes “A4RES1” y “SARES1” desencriptados y el resto de volúmenes los puse descomprimidos. Es obligatorio poner los volúmenes ZPD (“A4RES1.ZPD” y “SARES1.ZPD”) y el resto comprimidos (“.gz”). Una vez corregido, hacemos clic en Reanudar despliegue.

info

Después de desplegar los volúmenes tuve otro problema. El sistema perdía la conexión con el servidor de licencias.
Esto ocurría porque configuré una IP incorrecta (diferente a la del pantallazo) cuando definí el sistema de destino.

Emuframe image

NOTA

Este log se puede encontrar en el sistema de destino. Ruta: /home/ibmsys1/zdt/log
En zdt_start.sh.log veremos los mensajes de consola y del emulador.

Emuframe image

Reinstalé el sistema y volví a desplegar la imagen. En esta ocasión, todo terminó correctamente. El sistema arrancará automáticamente.

Emuframe image

Ahora ya podemos conectarnos al sistema.

  • La IP será la del sistema de destino y el puerto 3270.
    • El primer terminal que conectemos será consola (LU 700).
    • Con el segundo (LU 701) ya podremos conectar a TSO.

Emuframe image

Parada del sistema

Podemos parar el sistema de forma automática con la opción que se ve en la imagen.

Emuframe image

En mi caso, no pude ejecutarlo.

Emuframe image

Mirando el log, el error es porque no puede ejecutar los comandos:

Emuframe image

Falta por añadir unos comandos en /etc/sudoers del sistema de destino:

/bin/chown ibmsys1 /home/ibmsys1/zdt/zdtInstall/zdt_env.sh,/home/ibmsys1/zdt/zdtInstall/zdt_env.sh

Emuframe image

Ahora parará correctamente.

Volver a arrancar el sistema

Cuando queramos, podemos iniciar el sistema de nuevo.

Emuframe image

Para iniciar el sistema automáticamente, debemos añadir los siguientes comandos en /etc/sudoers:

/bin/chown ibmsys1 /home/ibmsys1/zdt/zdtInstall/zdt_start.sh,/home/ibmsys1/zdt/zdtInstall/zdt_start.sh, /bin/chown ibmsys1 /home/ibmsys1/zdt/zdtInstall/zdt_ipl.sh,/home/ibmsys1/zdt/zdtInstall/zdt_ipl.sh

Ahora el sistema arrancará correctamente.

Emuframe image