Saltar al contenido principal
Version: 1.9.0

Actualizar desde versiones 1.8 a 1.9

Consideraciones

Esta guía lo lleva en el proceso de actualizar una instalación pre-existente de EEI. Tenga en cuenta que:

  • La versión requerida de EEI en ejecución es la v1.8.x (última al generar esta guía, no se probaron versiones previas)
  • Se actualiza toda la solución EEI que se despliega con Docker

Arai-Solicitudes (Opcional)

Advertencia

Es requisito que el motor de base de datos donde se desplegará la base de solicitudes posea implementada la función gen_random_uuid() (disponible a partir de la versión 13)

En esta versión se incorpora un nuevo módulo llamado Arai-Solicitudes (opcional), el cual permite la carga de solicitudes contra SIU-Mapuche. En esta versión es utilizado para la carga de solicitudes desde el Portal del Empleado.

Configuración inicial

Para la incorporación del mismo al despliegue, hace falta definir previamente una serie de configuraciones:

  • Se deben crear 4 secretos que contendrán información sensible

    • solicitudes_db_pass: Password de la conexión con la base de datos.
    • solicitudes_api_pass: Password de la conexión a la API de Solicitudes.
    • solicitudes_conexion_usuarios: Password de la conexión a la API compatible de Arai-Usuarios.
    • solicitudes_conexion_mapuche: Password de la conexión a la API de SIU-Mapuche.
  • La distribución provee el script de bash secrets.sh.dist para ejemplificar como inicializar todos los valores requeridos.

Puede crear estos secrets (en caso de no haberlo generado con el secret.sh.dist de la ultima versión) de la siguiente forma:

printf "postgres123" | docker secret create solicitudes_db_pass -

printf "solicitudes123" | docker secret create solicitudes_api_pass -

printf "huarpe123" | docker secret create solicitudes_conexion_usuarios -

printf "mapuche123" | docker secret create solicitudes_conexion_mapuche -

Así mismo debe configurar la información restante de conexión a las APIs de Arai-Usuarios y SIU-Mapuche, usando las siguientes variables de entorno incluídas en el archivo solicitudes.api.env.

MAPUCHE_API_URL=https://mapuche_url/rest/
MAPUCHE_API_USER=solicitudes
USUARIOS_API_URL=http://usuarios-api:8080/api/v2/
USUARIOS_API_USER=solicitudes

Cambiar dominio

En los archivos de configuración se asume el dominio uunn.local, para cambiarlo por el dominio definitivo puede utilizar el siguiente comando (reemplace universidad.edu.ar por el dominio real)

sed -i 's/uunn.local/universidad.edu.ar/g' \
prod/arai/solicitudes.yml \
prod/arai/solicitudes.api.env

Creación de Base de Datos

Crear la base de datos como recurso externo, recordar que la configuración para la misma se debe incluir en el secreto previo y también en el archivo prod/arai/solicitudes.env

DB_HOST=db-solicitudes
DB_PORT=5432
DB_DBNAME=arai_solicitudes
DB_USERNAME=postgres
DB_PASSWORD_FILE=/run/secrets/solicitudes_db_pass
DB_SCHEMA=solicitudes

Inicializar la base de datos

Este paso se lleva a cabo mediante el despliegue de la siguiente tarea que crea la estructura de la base de datos de Araí-Solicitudes.

docker stack deploy \
--with-registry-auth \
-c prod/arai/util/solicitudes_migrar_base.yml \
solicitudes_db

Puede verificar el estado de ejecución del mismo de la siguiente manera:

docker service logs solicitudes_db_migrar -f

Una vez finalizado con éxito, puede borrar el stack:

docker stack rm solicitudes_db

Desplegar el stack

Una vez realizada la configuración e inicialización de la base de datos, pasamos a desplegar el módulo de la siguiente forma:

docker stack deploy --with-registry-auth -c prod/arai/solicitudes.yml solicitudes

Habilitar acceso API de Solicitudes

Para acceder a la API de Solicitudes desde fuera del cluster se debe descomentar las siguientes líneas en el archivo prod/arai/solicitudes.yml. Tener en cuenta las recomendaciones de seguridad al respecto.

Arai-Documentos

Actualizar variables

En la versión 1.7 de Arai-Docs se agregaron nuevas configuraciones. Los cambios se detallan acá y acá.

Bajar stack docs-api

docker stack rm docs

Actualizar Base de Datos

  1. Realizar el backup de PostgreSQL de manera preventiva

  2. Desplegar el servicio que actualiza la base de datos

docker stack deploy --with-registry-auth --compose-file prod/arai/util/docs_actualizar_base.yml docs_actualizar_base

Se puede observar el avance del proceso de migración en el log del servicio. Finalizada la migración, se puede eliminar dicho despliegue del servicio

docker service logs docs_actualizar_base_update -f
docker stack rm docs_actualizar_base

Nota: esto requiere acceso a la base de datos para modificar su estructura. Alternativamente, puede seguir esta guía para actualizar la base de datos.

Huarpe

Actualizar variables y secrets

En la versión 3.4 de Huarpe se agregaron nuevas configuraciones como variables de entorno y nuevos secrets. Todas se detallan acá.

Todas estas configuraciones, se deben ver reflejados en el archivo huarpe.env.

Actualizar el despliegue

  1. Bajar stack huarpe

    docker stack rm huarpe
  2. Desplegar las nuevas versiones del servicio

    docker stack deploy --with-registry-auth -c prod/arai/huarpe.yml huarpe