Saltar al contenido principal
Mantener Midaz actualizado significa que trabajas con las funciones, los parches de seguridad y las mejoras más recientes. Las actualizaciones periódicas también mantienen a Midaz compatible con otros componentes y ayudan a evitar problemas causados por dependencias obsoletas.
Las imágenes dedicadas de migration-runner (midaz-ledger-migrations, midaz-tracer-migrations) aplican las migraciones de esquema. Las aplicaciones no migran al iniciar. El chart oficial de Helm ejecuta estas imágenes por ti. Consulta Migraciones de base de datos para más detalles.

Actualización de un despliegue


Para instalar, actualizar o desinstalar un despliegue de Midaz, consulta el README del chart de Midaz. Contiene el procedimiento y las notas de actualización de cada versión del chart. Para pasar una integración de los contratos de la API v1 a los contratos v2, consulta Migra de la API v1 a la API v2. Antes de actualizar, revisa estas reglas del producto:
  • Con DEPLOYMENT_MODE=saas o MULTI_TENANT_ENABLED=true, el Ledger no arranca sin autenticación. Consulta Seguridad.
  • Mantén sin cambios LCRYPTO_HASH_SECRET_KEY y LCRYPTO_ENCRYPT_SECRET_KEY. Midaz no puede leer los datos de holders e instrumentos que cifró con los valores anteriores.
  • Actualiza Midaz antes de sus plugins. Consulta Compatibilidad de Midaz y plugins.
  • Para actualizar a v4.2.0 o posterior, actualiza Tracer antes del Ledger. Mientras un Ledger en v4.2.0 o posterior esté en ejecución, no hagas rollback de Tracer a una versión anterior a v4.2.0. Mientras un Ledger en v4.3.0 o posterior esté en ejecución, no hagas rollback de Tracer a una versión anterior a v4.3.0.
  • A partir de v4.2.0, el Ledger se comunica con Tracer solo por gRPC. Cuando TRACER_BASE_URL está definida, el Ledger no arranca con TRACER_TRANSPORT=rest. Si definiste TRACER_TRANSPORT=rest, elimina TRACER_TRANSPORT antes de actualizar. Después, define TRACER_BASE_URL con la dirección gRPC de Tracer (TRACER_GRPC_PORT, :4021 de forma predeterminada). Consulta Variables de entorno de Midaz.
  • Ejecuta v4.2.0 o posterior en todas las instancias del Ledger antes de definir deferrable en una comisión. Después de definirlo, no hagas rollback del Ledger a una versión anterior. Consulta Deuda de comisión.
  • A partir de v4.3.0, el Ledger publica mensajes de auditoría de transacciones solo cuando AUDIT_LOG_ENABLED=true. Consulta Auditabilidad.
  • A partir de v4.3.0, /readyz verifica RabbitMQ a través de su API de administración en RABBITMQ_HEALTH_CHECK_URL, con las credenciales de RABBITMQ_DEFAULT_USER. Una verificación fallida hace que /readyz responda 503. Dale a ese usuario acceso a la API de administración.
  • Actualiza todas las instancias del Ledger a v4.3.0 antes de que los clientes envíen scheme en una transacción o vinculen optionalOperationRoutes en una ruta contable. Un Ledger anterior rechaza scheme y trata toda ruta de operación vinculada como obligatoria.
  • Actualiza un Ledger de v4.2.x a v4.3.0 con un cutover drenado, nunca con rolling update: corta el tráfico al Ledger, deja que las instancias v4.2.x terminen su trabajo en cola y de recuperación, detén todas las instancias v4.2.x y solo entonces inicia v4.3.0. Una instancia v4.2.x sigue tomando trabajo de recuperación incluso sin tráfico y rechaza el trabajo que v4.3.0 registra, así que ninguna puede ejecutarse junto a v4.3.0. El Ledger rechaza escrituras durante el cutover. Las notas de actualización de la versión 9.8.0 del chart traen los pasos.
  • Después de que un Ledger ejecute v4.3.0, no hagas rollback a v4.2.x, ni siquiera después de drenar. Un Ledger v4.2.x puede aplicar el dinero de una transacción de v4.3.0 y dejar su registro y su metadata incompletos.
  • A partir de v4.4.0, el Ledger y Tracer no arrancan cuando una variable de entorno tiene un valor que no pueden leer. El error nombra la variable. Un booleano acepta solo true o false, un número debe ser entero y una duración necesita una unidad, como 12s. Revisa tus valores antes de actualizar. Consulta Variables de entorno de Midaz.
  • La migración de onboarding de v4.4.0 se detiene si un ledger tiene dos cuentas con el mismo alias o dos activos con el mismo código. Las cuentas y los activos eliminados no cuentan. La migración lista los duplicados, y Midaz no los fusiona ni los elimina. Si la migración se detiene, contacta a Lerian antes de ejecutar de nuevo la actualización. Mientras la migración se ejecuta, las escrituras de cuentas y de activos esperan.
  • Actualiza todas las instancias del Ledger a v4.4.0 antes de asignar un plan de tarifas. Un Ledger anterior no lee planes de tarifas.