Saltar al contenido principal
Version: Next

Actualizar desde versiones 1.2 a 1.3

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.2.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-Usuarios

Se generó una versión menor para corrección de errores. Solo es necesario correr el deploy para que detecte los cambios.

2. Desplegar las nuevas versiones

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

Sudocu

Antes de actualizar

IMPORTANTE: En las actualizaciones es posible que se incluyan nuevos parámetros en los archivos de configuración del api-server y los distintos modulos de SUDOCU. Por lo tanto, es necesario en cada actualización comparar los archivos de configuración desplegados localmente con el archivo config-default.json ubicado en la raíz de cada módulo, y agregar los parámetros que no se encuentren en el archivo local.

Antes de actualizar es necesario realizar un backup de la base de datos.

pg_dump -h DB_HOST -U DB_USER -p DB_PORT sudocu > sudocu.$(date -I).sql

Borrar el stack actual:

docker stack rm sudocu

Nota: esto elimina tanto los servicios del stack como los configs (que levantan los archivos .json de configuración). Si necesita, puede actualizarlos en este punto.

Actualizar base PostgreSQL

Finalmente, ejecutamos el proceso de migración de la base de datos.

docker run --rm \
--env SUDOCU_DB_HOST=ip-host-db-sudocu \
--env SUDOCU_DB_NAME=sudocu \
--env SUDOCU_DB_PORT=5432 \
--env SUDOCU_DB_USER=postgres \
--env SUDOCU_DB_PASSWORD=postgres \
ungs/sudocu-db-instalador:1.3.2

Nota: Tener en cuenta que SUDOCU_DB_HOST debe apuntar al host donde corre el PostgreSQL que contiene dicha base.

Desplegar la nueva versión

Realizar nuevo deploy:

docker stack deploy --with-registry-auth --compose-file sudocu.yml sudocu

Configuracion hora Stamper (opcional)

Previamente, el contenedor docker del stamper no tenía configurada la hora por defecto en UTC y esto afectaba el horario de la estampa de los PDF. A partir de esta versión, eso se encuentra solucionado.

Si se desplegó la versión previa del Stamper, para aplicar los cambios simplemente debe redeployear el stack ejecutando:

docker config create docs_stamper_entrypoint docs_stamper_entrypoint.sh

Finalmente, para aplicar los cambios, debe redeployear el stack con docker stack rm docs y posterior a esto, docker stack deploy --with-registry-auth -c docs.yml docs

Loki (opcional)

La versión 1.3 propone una actualización del servicio de Loki desde la version 1.6.0 a 2.3.0. Entre algunos de los cambios previstos, se contempla un nuevo archivo de configuración creado dentro del stack donde se encuentra el servicio. Dicho archivo permite no solo la customizacion de ciertos parámetros relacionados con loki, sino también la configuración pertinente al guardado de los logs dentro de grafana.

Es importante aclarar que, si usted ya tiene desplegado la versión de loki 1.6.0, al actualizar a la versión 2.3.0 se perderá el registro histórico de los logs dentro de grafana (es decir, no podrá ver los registros anteriores a la version 2.3.0 dentro de grafana, pero podrá seguir accediendo a los archivos donde quedan guardados dichos logs de manera manual, ya que éstos no son eliminados). Si lo desea, puede configurar loki de tal manera que los logs de ambas versiones sigan mostrandose en grafana, simplemente haciendo una modificación concreta en el archivo de configuración de loki mencionado previamente.

En dicho archivo, dirijase al apartado donde se encuentra el schema_config

schema_config:
configs:
- from: 2018-04-15
store: boltdb
object_store: filesystem
schema: v11
index:
prefix: index_
period: 168h
- from: 2020-10-24
store: boltdb-shipper
object_store: filesystem
schema: v11
index:
prefix: index_
period: 24h

Notará dos fechas específicas en la configuración, una perteneciente al store boltdb (cuya fecha por defecto es 2018-04-15) y otra al boltdb-shipper (cuya fecha por defecto es 2020-10-24). boltdb es el index type utilizado en la versión 1.6.0 para procesar los logs de loki dentro de grafana, y boltdb-shipper es el que comenzó a utilizarse desde la versión 2.0 de loki. Para conservar los logs antiguos y los nuevos en grafana, deberá modificar la fecha de boltdb a la fecha más antigua desde que desplegó loki 1.6.0, y deberá modificar la fecha de boltdb-shipper a la fecha desde que desplegó loki 2.3.0

Por ejemplo: Si venía utilizando loki 1.6.0 desde el 29 de Noviembre del 2021, y decide desplegar la versión de loki 2.3.0 el 29 de Marzo del 2022, deberá modificar el archivo y dejarlo de la siguiente manera

schema_config:
configs:
- from: 2021-11-29
store: boltdb
object_store: filesystem
schema: v11
index:
prefix: index_
period: 168h
- from: 2022-03-29
store: boltdb-shipper
object_store: filesystem
schema: v11
index:
prefix: index_
period: 24h

Nota: también puede dejar la fecha de boltdb por defecto, en caso de que no recuerde desde cuándo utiliza loki 1.6.0

Una vez actualizado ésto, para que surta efecto los cambios en el archivo de configuración deberá volver a desplegar el stack del servicio de la siguiente manera:

docker stack rm loki

y luego

docker stack deploy --with-registry-auth -c loki.yml loki