Saltar al contenido principal

Lista de verificación previa a la actualización

1
Respalda los releases de Helm existentes:
2
Decisión requerida: Elige tu estrategia de despliegue (servicio Ledger o Onboarding/Transaction legacy).
3
Si migras al servicio Ledger, prepara nuevos secretos con prefijos específicos por módulo.
4
Programa una ventana de mantenimiento.

Cambios importantes en v5.x

Nuevo servicio Ledger disponible

A partir de la versión 5.0, el servicio Ledger está disponible (ledger.enabled: false por defecto). Cuando está habilitado, este servicio combina la funcionalidad de los módulos onboarding y transaction en un solo despliegue.
Los servicios separados onboarding y transaction se convertirán en legacy en una futura versión. El servicio unificado Ledger será obligatorio. Recomendamos encarecidamente planificar tu migración al servicio Ledger.
Valores predeterminados: Impacto al habilitar Ledger:
  • Los despliegues midaz-onboarding y midaz-transaction serán eliminados.
  • Se creará un nuevo despliegue midaz-ledger.
  • Los ingresses redirigirán automáticamente al servicio Ledger (compatibilidad DNS mantenida).
  • Cambios en la estructura de variables de entorno y secretos (prefijos específicos por módulo).

Actualización de versión de la aplicación

Midaz ha sido actualizado a v3.5.3.
Consulta el changelog de la aplicación para la lista completa de cambios.

Opciones de migración

Opción 1: mantener Onboarding y Transaction (migración gradual)

Agrega lo siguiente a tu override de values para mantener el comportamiento actual:
Esto te permite actualizar la versión del chart sin cambiar tu infraestructura.

Opción 2: ejecutar todos los servicios simultáneamente (pruebas/período de migración)

Usa el flag oculto migration.allowAllServices para ejecutar los tres servicios durante la migración:
Este modo está destinado solo para pruebas y migración. No lo uses en producción a largo plazo.

Opción 3: migrar a Ledger (recomendado)

Acepta la nueva arquitectura y migra al servicio unificado Ledger:
1
Antes de actualizar: Asegúrate de que tus bases de datos estén listas (mismas bases de datos, nuevos nombres de variables de entorno).
2
Actualiza secretos: Crea nuevos secretos con prefijos específicos por módulo (ver Referencia de configuración).
3
Actualiza: Ejecuta helm upgrade con la nueva versión del chart.
4
Verifica: Comprueba que el servicio Ledger esté saludable y los ingresses funcionen.

Nuevas características en v5.x

Servicio Ledger unificado

Un nuevo servicio Ledger que combina los módulos onboarding y transaction en un solo despliegue. Características clave:
  • Endpoint HTTP único (puerto 3000 por defecto)
  • Configuraciones de base de datos separadas para cada módulo
  • Conexiones compartidas de Redis y RabbitMQ
  • Nuevo Balance Sync Worker para procesamiento en segundo plano
Nuevas variables de entorno:
Estas variables de entorno han sido renombradas en versiones posteriores. Los nombres actuales de las variables son: BALANCE_SYNC_BATCH_SIZE, BALANCE_SYNC_FLUSH_TIMEOUT_MS y BALANCE_SYNC_POLL_INTERVAL_MS. Consulta la Referencia de Configuración para los valores predeterminados actuales.

Redirección de Ingress a Ledger

Cuando Ledger está habilitado, los ingresses existentes redirigen automáticamente el tráfico al servicio Ledger, manteniendo compatibilidad DNS.

Integración del servicio CRM

El servicio CRM ahora está disponible como componente integrado, moviéndose de midaz-plugins al namespace midaz.
Para más detalles, consulta la Documentación de CRM.
Migración desde plugin-crm:
1
Despliega el nuevo CRM en el namespace midaz:
2
Migra tus datos del antiguo MongoDB al nuevo (si usas bases de datos separadas).
3
Actualiza tu ingress/DNS para apuntar al nuevo servicio CRM.
4
Elimina el antiguo release plugin-crm del namespace midaz-plugins.

Comando de actualización

Procedimiento de reversión

Problemas comunes

El servicio Ledger falla al iniciar
  • Verifica que todas las variables de entorno y secretos específicos por módulo estén configurados con los nuevos prefijos (DB_ONBOARDING_*, DB_TRANSACTION_*, etc.).
Ingress no enruta a Ledger
  • Asegúrate de que ledger.enabled: true y migration.allowAllServices no esté configurado como true.
Secretos faltantes después de habilitar Ledger
  • Crea nuevos secretos con prefijos por módulo:
    • DB_ONBOARDING_PASSWORD en lugar de DB_PASSWORD
    • DB_TRANSACTION_PASSWORD en lugar de DB_PASSWORD
    • MONGO_ONBOARDING_PASSWORD en lugar de MONGO_PASSWORD
    • MONGO_TRANSACTION_PASSWORD en lugar de MONGO_PASSWORD