Make the MongoDB docs better! We value your opinion. Share your feedback for a chance to win $100.
Click here >
Docs Menu
Docs Home
/ /
Actualice 4.4 a 5.0

Actualizar un conjunto de réplicas a 5.0

Se debe familiarizar con el contenido de este documento, incluyendo una revisión exhaustiva de los requisitos previos, antes de actualizar a MongoDB 5.0.

Los siguientes pasos describen el procedimiento para actualizar un mongod ese es un set de réplicas desde la versión 4.4 hasta la 5.0.

Si se necesita orientación sobre cómo actualizar a 5.0, los servicios profesionales de MongoDB ofrecen soporte para la actualización de versiones principales para ayudar a garantizar una transición sin problemas y sin interrupciones en la aplicación MongoDB.

Al actualizar, considere lo siguiente:

Para actualizar una implementación existente de MongoDB a la versión 5.0, es necesario ejecutar una versión 4.4.

Para actualizar desde una versión anterior a la serie 4.4, debe actualizar sucesivamente las versiones principales hasta que haya actualizado a la serie 4.4. Por ejemplo, si está ejecutando una serie 4.2, primero debe actualizar a 4.4 antes de poder actualizar a 5.0.

Antes de actualizar MongoDB, se debe comprobar que se está usando un driver compatible con MongoDB 5.0. Se debe consultar la documentación del driver para el driver específico que se está usando y verificar la compatibilidad con MongoDB 5.0.

Las implementaciones actualizadas que se ejecutan en controladores incompatibles podrían experimentar un comportamiento inesperado o indefinido.

Advertencia

Si tus drivers utilizan opcodes heredados que quedaron obsoletos en la versión 3.6, actualiza tus drivers a una versión que utilice opcodes admitidos. Los controladores que usen códigos de operación heredados ya no son compatibles.

Antes de comenzar la actualización, consulte el documento Cambios de compatibilidad en MongoDB 5.0 para garantizar que sus aplicaciones e implementaciones sean compatibles con MongoDB 5.0. Resuelve las incompatibilidades en tu implementación antes de comenzar la actualización.

Antes de actualizar MongoDB, siempre se debe probar la aplicación en un entorno de pruebas antes de implementar la actualización en el entorno de producción.

Una vez que se actualiza a 5.0, si necesitas realizar una degradación, te recomendamos revertir a la última versión de corrección de 4.4.

Antes de actualizar su set de réplicas, revise las consideraciones de rendimiento 5.0 para cualquier posible impacto en el rendimiento al actualizar a 5.0.

Asegúrese de que la configuración de TTL sea válida. Antes de actualizar, remové o corregí todos los índices TTL que tengan expireAfterSeconds configurados en NaN. En MongoDB 5.0 y versiones posteriores, configurar expireAfterSeconds en NaN tiene el mismo efecto que configurar expireAfterSeconds en 0. Para más detalles, consulte TTL expireAfterSeconds Comportamiento cuando se establece en NaN.

Todos los miembros del set de réplicas deben ejecutar la versión 4.4. Para actualizar un set de réplicas desde una versión- 4.2o anterior, primero actualiza todos los nodos del set de réplicas a la última serie- 4.4 liberar y luego seguir el procedimiento para actualizar de MongoDB 4.4 a 5.0.

Antes de actualizar un nodo del conjunto de réplicas, confirme que el nodo haya sido apagado correctamente.

El set de réplicas 4.4 debe tener featureCompatibilityVersion establecido en "4.4".

Para garantizar que todos los nodos del set de réplicas tengan featureCompatibilityVersion establecido en "4.4", conéctate a cada nodo del set de réplicas y verifica el featureCompatibilityVersion:

db.adminCommand( { getParameter: 1, featureCompatibilityVersion: 1 } )

Todos los nodos deben devolver un resultado que incluya "featureCompatibilityVersion" : { "version" : "4.4" }.

Para configurar o actualizar featureCompatibilityVersion, ejecuta el siguiente comando en el primario. La mayoría de los nodos que contienen datos deben estar disponible:

db.adminCommand( { setFeatureCompatibilityVersion: "4.4" } )

Para obtener más información, consulta setFeatureCompatibilityVersion.

Asegúrate de que ningún miembro del conjunto de réplicas esté en el estado ROLLBACK o RECOVERING.

Si has instalado MongoDB desde los repositorios de apt, yum, dnf o zypper de MongoDB, debes actualizar a la versión 5.0 utilizando tu administrador de paquetes.

Sigue las instrucciones de instalación apropiadas para la versión 5.0 en tu sistema Linux. Esto implicará agregar un repositorio para la nueva versión y luego realizar el proceso de actualización propiamente dicho.

Si no se ha instalado MongoDB usando un administrador de paquetes, se pueden descargar manualmente los binarios de MongoDB desde el Centro de Descargas de MongoDB.

Consulta instrucciones de instalación para la versión 5.0 para obtener más información.

Advertencia

Si actualizas una instancia existente de MongoDB a MongoDB 5.0.15, es posible que esa instancia no se inicie si fork: true está configurado en el archivo mongod.conf.

El problema de actualización afecta a todas las instancias de MongoDB que utilizan los paquetes de instalación .deb o .rpm. Las instalaciones que utilizan la versión en tarball (.tgz) o de otros tipos de paquetes no se ven afectadas. Para obtener más información, consulte SERVIDOR-74345.

Para remover la configuración de fork: true, ejecute estos comandos desde una terminal del sistema:

systemctl stop mongod.service
sed -i.bak '/fork: true/d' /etc/mongod.conf
systemctl start mongod.service

El segundo comando systemctl inicia la instancia actualizada después de que se elimine la configuración.

Puedes actualizar de MongoDB 4.4 a 5.0 utilizando una actualización "en vivo" para minimizar el tiempo de inactividad actualizando los nodos individualmente mientras los demás nodos están disponibles.

1

Actualiza los secundarios del set de réplicas uno a la vez:

  1. Apaga la instancia mongod y sustituye el binario 4.4 por el binario 5.0.

  2. Reinicia el nodo.

2

Conecta mongosh al primario y usa rs.stepDown() para degradar el primario y forzar una elección de un nuevo primario.

3

Cuando rs.status() muestre que el primario ha dejado su puesto y otro nodo ha asumido el estado PRIMARY, actualiza el primario que ha dejado su puesto:

  1. Apague el primario reducido y sustituya el binario mongod por el binario 5.0.

  2. Reinicia el nodo.

4

En este punto, puede ejecutar los binarios 5.0 sin las funcionalidades de 5.0 que son incompatibles con 4.4.

Para habilitar estas 5.0 funcionalidades, establezca la compatibilidad de características entre versiones (FCV) en 5.0.

Tip

Activar estas características incompatibles con versiones anteriores puede complicar el proceso de degradación, ya que se debe remover cualquier característica incompatible con versiones anteriores que persista antes de realizar la degradación.

Se recomienda que, tras la actualización, se permita que la implementación se ejecute sin habilitar estas características durante un periodo de prueba para asegurar que la probabilidad de reversión sea mínima. Cuando se esté seguro de que la probabilidad de degradación es mínima, se pueden activar estas características.

Tip

Asegúrese de que no haya sincronización inicial en curso. Ejecutar el comando setFeatureCompatibilityVersion mientras una sincronización inicial está en curso provocará que la sincronización inicial se reinicie.

En el primario, ejecuta el comando setFeatureCompatibilityVersion en la base de datos admin:

db.adminCommand( { setFeatureCompatibilityVersion: "5.0" } )

La configuración de featureCompatibilityVersion (compatibilidad de características entre versiones): "5.0" realiza implícitamente un replSetReconfig para agregar el campo term al documento de configuración y se bloquea hasta que la nueva configuración se propaga a la mayoría de los nodos del set de réplicas.

Este comando debe realizar escrituras en una colección interna del sistema. Si por cualquier motivo el comando no se completa correctamente, puedes intentarlo de nuevo con seguridad en el primario, ya que la operación es idempotente.

Volver

Autónomo

En esta página