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)
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 archivoprod/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
-
Realizar el backup de PostgreSQL de manera preventiva
-
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
-
Bajar stack huarpe
docker stack rm huarpe
-
Desplegar las nuevas versiones del servicio
docker stack deploy --with-registry-auth -c prod/arai/huarpe.yml huarpe