Saltar al contenido principal
Version: 2.0.0

Actualizacion de 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 última version de v1.8.x
  • Se actualiza toda la solución EEI que se despliega con Kubernetes

Changelog

Actualizacion de repositorios

k8s-deployment: para actualizar su repositorio con los commits más recientes de k8s-deployment, es necesario realizar un pull del repositorio upstream.

git pull upstream main

siu-k8s: para poder reflejar los nuevos cambios de cada version en su entorno es necesario actualizar de su repositorio el submodulo.

Para esto, estando parado en el directorio padre, debe utilizar el siguiente comando:

git submodule update --remote

Actualizacion Mayor

1.8.x a 1.9.0​

Resumen de actualización​

Se actualizará:

  • Huarpe a v.3.4.0
  • Arai-Documentos a v.1.7.0
  • Sudocu a v.1.4.23
  • Proveedores a v.2.0.3

Y en adición, se suma la siguiente aplicación al ecosistema:

  • Arai-Solicitudes: servicio para la gestión integrada de licencias y trámites varios.

Paso 1: Actualización de ConfigMaps y Secrets​

Sudocu​

  • Agregue en overlay/apps/sudocu/config/config-api-server.json los siguientes bloques si aún no están presentes:
"gestion": {
"inbox_jobs_viewer": {
"mostrar_total_usuario_creacion": false,
"mostrar_total_usuario_autorizacion": false,
"mostrar_total_general": false
},
"mostrar_id_documento_listado": false

luego de:

"fecha_manual_contenedor_tramite": true,

Agregue lo siguiente:

"mostrar_contenido_documento_adjunto_principal": false,
"_limite_herramienta_mapa": "Limita la cantidad de eventos del documento que debe tener para ser visible desde la herramienta mapa",
"limite_herramienta_mapa": 20,
"_limite_incorporados": "Limita la cantidad de incorporados que se mostrarán en el formulario de edición de documento y la herramienta de vista de documento",
"limite_incorporados": 10,

además, luego de :

"http-proxy": {
"service": {
"target": "",
"auth": "user:password"
}

Agregue lo siguiente:

},
"queue": {
"express": {
"concurrency": 1
}
}

Proveedores​

  • Actualice overlay/apps/proveedores/config/portal.env con:
API_PILAGA_USR=pilaga
API_PILAGA_URL=http://uunn.local/pilaga/rest/v1/
API_PILAGA_PASS_FILE=/run/secrets/API_PILAGA_PASS
  • Y agregue en overlay/secrets/proveedores-secrets.env:
API_PILAGA_PASS=<password-api-pilaga>

Huarpe​

  • En overlay/apps/huarpe/3.4.0/huarpe.env:
BUNDLE_DOCUMENTOS_TOPE_PAGINADO=100
BUNDLE_DOCUMENTOS_PERMITIR_RECHAZAR=1
BUNDLE_SOLICITUDES_ACTIVO=1

API_DOCS_VERSION=1.7

API_SOLICITUDES_USR=solicitudes
API_SOLICITUDES_URL=http://solicitudes-api.template-universidad:8080/api/v1/
API_SOLICITUDES_PASS_FILE=/run/secrets/solicitudes_api_pass
  • Y en overlay/secrets/huarpe-secrets.env:
SOLICITUDES_API_USERS=<password-solicitudes>

Paso 2: Escalar despliegues a 0 (cuando aplique)​

Sudocu​

kubectl scale deployment sudocu-api-server sudocu-api-worker sudocu-cache sudocu-gestion sudocu-login sudocu-mpc sudocu-mpd sudocu-pdf --replicas=0 -n <namespace>

Documentos​

kubectl scale deployment docs-api docs-worker --replicas=0 -n <namespace>

Paso 3: Actualización de bases de datos​

Sudocu​

Modifique overlay/jobs/sudocu/update/kustomization.yaml:

resources:
- ../../../../siu-k8s/base-eei/1.9.0/sudocu/jobs/update

Ejecute:

kustomize build --load-restrictor LoadRestrictionsNone overlay/jobs/sudocu/update | kubectl apply -f -

Documentos​

Modifique overlay/jobs/documentos/update/kustomization.yaml:

resources:
- ../../../../siu-k8s/base-eei/1.9.0/documentos/jobs/update

Ejecute:

kustomize build --load-restrictor LoadRestrictionsNone overlay/jobs/documentos/update | kubectl apply -f -

Paso 4: Actualización de aplicaciones​

Sudocu​

Modifique overlay/apps/sudocu/kustomization.yaml:

resources:
- ../../../siu-k8s/base-eei/1.9.0/sudocu
kustomize build --load-restrictor LoadRestrictionsNone overlay/apps/sudocu/ | kubectl apply -f -

Proveedores​

Modifique overlay/apps/proveedores/kustomization.yaml:

resources:
- ../../../siu-k8s/base-eei/1.9.0/proveedores
kustomize build --load-restrictor LoadRestrictionsNone overlay/apps/proveedores/ | kubectl apply -f -

Documentos​

Modifique overlay/apps/documentos/kustomization.yaml:

resources:
- ../../../siu-k8s/base-eei/1.9.0/documentos
kustomize build --load-restrictor LoadRestrictionsNone overlay/apps/documentos/ | kubectl apply -f -

Huarpe​

Modifique overlay/apps/huarpe/kustomization.yaml:

resources:
- ../../../siu-k8s/base-eei/1.9.0/huarpe
kustomize build --load-restrictor LoadRestrictionsNone overlay/apps/huarpe/ | kubectl apply -f -

Paso 5: Escalar nuevamente los despliegues​

Sudocu​

kubectl scale deployment sudocu-api-server sudocu-api-worker sudocu-cache sudocu-gestion sudocu-login sudocu-mpc sudocu-mpd sudocu-pdf --replicas=1 -n <namespace>

Documentos​

kubectl scale deployment docs-api docs-worker --replicas=1 -n <namespace>

Paso 6: Despliegue de nueva aplicación - Arai-Solicitudes​

Agregar aplicación a su overlay​

Genere un nuevo overlay a modo de borrador ejecutando el nuevo-overlay.sh (al crearlo recuerde pasar el parametro del dominio y del namespace correctos). Dentro de éste, busque los directorios dentro de overlay-borrador/apps/solicitudes, overlay-borrador/jobs/solicitudes y overlay-borrador/secrets/solicitudes-secrets.env, copie dichos directorios y peguelo en su overlay original para poder integrarlo en sus despliegues.

Antes de desplegar, asegúrese de que el ConfigMap y los Secrets estén definidos correctamente:

  • uunn-overlay/apps/solicitudes/config/
  • uunn-overlay/secrets/solicitudes-secrets.env

Crear base de datos​

kustomize build --load-restrictor LoadRestrictionsNone jobs/solicitudes/init | kubectl apply -f -

Desplegar aplicación​

kustomize build --load-restrictor LoadRestrictionsNone apps/solicitudes | kubectl apply -f -

Finalización​

Verifique el estado de los pods y confirme el funcionamiento de cada aplicación para dar por finalizada la actualización. Puede utilizar su herramienta favorita o el siguiente comando:

kubectl get pods -n <namespace>