Nota
Esta funcionalidad no está disponible para clústeres gratuitos ni flexibles. Para obtener más información sobre qué funcionalidades no están disponibles, consulta Límites del clúster gratuito de Atlas.
Atlas lleva a cabo Elecciones de conjuntos de réplicas al realizar cambios de configuración, como actualizaciones de parches, eventos de escalado y fallos. Sus aplicaciones deberían gestionar las elecciones de conjuntos de réplicas sin interrupciones. Para aprender a crear una aplicación resiliente, consulte "Crear una aplicación resiliente con MongoDB Atlas".
Puedes habilitar escrituras reintentables añadiendo retryWrites=true a tu cadena de conexión URI de Atlas. Para obtener más información, consulta Escrituras reintentables.
Puedes utilizar la interfaz de usuario de Atlas y API para probar el fallo del set de réplicas primario en tu clúster Atlas y observar cómo tu aplicación gestiona un failover del set de réplicas.
Acceso requerido
Para iniciar una prueba de conmutación por error, debe tener
Organization Owner, Project Owner, Project Cluster Manager o Project Stream Processing Owner acceso al proyecto.
Requisitos previos
Antes de probar la falla del principal del set de réplicas, debes cumplir con las siguientes condiciones:
Todos los cambios pendientes en su clúster deben completarse.
Todos los miembros del clúster deben estar en un estado saludable con datos de supervisión actualizados.
Cada conjunto de réplicas o fragmento debe tener un nodo principal.
Cualquier nodo del clúster debe tener un atraso de la replicación inferior a 10 segundos.
Todos los miembros del clúster deben tener al menos el 5% de espacio disponible en disco.
Todos los registros de operaciones (oplogs) de los nodos principales deben tener suficiente espacio para tres horas de operación.
Prueba del proceso de conmutación por error principal
Importante
Asegúrese de que su clúster Atlas esté en buen estado antes de probar la conmutación por error primaria. De lo contrario, Atlas podría rechazar tu solicitud.
Cuando se envía una solicitud para probar la conmutación por error principal, Atlas simula un evento de conmutación por error. Durante este proceso:
Atlas apaga el primario.actual
Los miembros del set de réplicas celebran una elección para decidir cuál de los secundarios se convertirá en el nuevo primario.
Atlas reincorpora el servidor principal original al conjunto de réplicas como secundario. Cuando el servidor principal antiguo se reincorpora al conjunto de réplicas, se sincroniza con el nuevo para recuperar las escrituras realizadas durante su inactividad.
Las siguientes instrucciones describen el comportamiento de Atlas durante los cambios y al probar la conmutación por error en los clústeres fragmentados:
Si el primario original aceptó operaciones de escritura que no se habían replicado correctamente en los secundarios cuando el primario fue degradado, el primario revierte esas operaciones de escritura cuando se reincorpora al set de réplicas y comienza a sincronizar. Para obtener más información, consulte Reversiones durante el traspaso de set de réplicas. Póngase en contacto con Soporte de MongoDB para obtener ayuda con la resolución de retrocesos.
Solo se reinician los procesos
mongosque estén en las mismas instancias que los primarios de los sets de réplicas en el clúster.Las réplicas primarias de los conjuntos de réplicas en el clúster fragmentado se reinician en paralelo.
Para iniciar una prueba de failover para el clúster especificado en tu Proyecto mediante la CLI de Atlas, ejecuta el siguiente comando:
atlas clusters failover <clusterName> [options]
Para aprender más sobre la sintaxis del comando y los parámetros, consulta la documentación de la Atlas CLI para conmutación por error de clústeres de Atlas.
Puedes usar el Test Failover API endpoint para simular un evento de failover. Para obtener más información sobre el proceso de failover, consulte Proceso de failover de prueba.
Para realizar una prueba de conmutación por error primaria utilizando la Interfaz de Usuario de Atlas:
En Atlas, ve a Clusters página para tu proyecto.
Si aún no se muestra, seleccione la organización que contiene su proyecto deseado en el menú Organizations de la barra de navegación.
Si aún no aparece, selecciona el proyecto deseado en el menú Projects de la barra de navegación.
En la barra lateral, haz clic en Clusters en la sección Database.
La página de clústeres se muestra.
Para el clúster en el que deseas realizar pruebas de conmutación por error, haz clic en el botón ....
Haga clic en Test Resilience.
En la ventana modal Test Resilience, haz clic en la pestaña Primary Failover. Atlas muestra los pasos que se requieren para simular un evento de failover. Para obtener más información, consulta Proceso de prueba de failover.
Haga clic en Restart Primary para iniciar la prueba. Atlas muestra los resultados de su simulación de conmutación por error en el cuadro modal Test Resilience.
Verificar la conmutación por error
Para verificar que la conmutación por error fue exitosa:
En Atlas, ve a la página Clusters de tu proyecto.
Si aún no se muestra, seleccione la organización que contiene su proyecto deseado en el menú Organizations de la barra de navegación.
Si aún no aparece, selecciona el proyecto deseado en el menú Projects de la barra de navegación.
En la barra lateral, haz clic en Clusters en la sección Database.
La página de clústeres se muestra.
Solucionar problemas de conmutación por error
Si tu aplicación no gestiona el failover de manera adecuada, asegúrate de lo siguiente:
Estás utilizando el Formato de conexión SRV.
Estás utilizando la versión más reciente del controlador.
Ha implementado la lógica de reintento adecuada en su aplicación.