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

Configure un nodo autogestionado del set de réplicas sin derecho a voto

Los miembros sin derecho a voto permiten agregar miembros adicionales para distribuir la lectura más allá de los 7 miembros con derecho a voto máximos.

Para configurar un nodo como sin derecho a voto, utiliza el replSetReconfig comandar o sus mongosh método asistente rs.reconfig() para establecer sus valores members[n].votes y members[n].priority en 0. Los miembros del set de réplicas sin derecho a voto deben tener una priority de 0.

Nota

La reconfiguración de réplicas puede agregar o remover no más de un miembro del set de réplicas votante a la vez. Para modificar los votos de varios nodos, emite una serie de operaciones replSetReconfig o rs.reconfig() para modificar un nodo a la vez. Consulta La reconfiguración puede agregar o remover no más de un nodo votante a la vez para obtener más información.

El siguiente procedimiento configura un único miembro secundario del set de réplicas para que sea sin derecho a voto. Para convertir al miembro primario en uno sin derecho a voto, primero se debe desactivar correctamente el primario usando replSetStepDown o su asistente de shell rs.stepDown() antes de ejecutar este procedimiento.

1) Conectarse al primario del conjunto de réplicas

Conecta mongosh al set de réplicas primario:

mongosh --host "<hostname>:<port>"

Reemplaza el <hostname> y el <port> con el nombre de host y el puerto del nodo primario del set de réplicas. Incluya cualquier otro parámetro requerido para su implementación.

2) Recuperar la configuración de la réplica

Ejecute el método rs.conf() en la shell y asigne el resultado a una variable cfg:

cfg = rs.conf();

El documento devuelto contiene un members arreglo, donde cada elemento del arreglo contiene la configuración de un solo miembro del juego de réplicas.

3) Configurar al nodo como no votante

Para que el nodo del réplicaSet cambie a ser sin votos, configura su votes y priority en 0.

cfg.members[n].votes = 0;
cfg.members[n].priority = 0;

Reemplace n por la posición del índice del arreglo del nodo que desea modificar. El members arreglo es indexada en cero, donde el primer elemento en el arreglo tiene una posición de índice de 0.

La posición del índice de un nodo en el members arreglo es distinta de la members[n]._id de un nodo específico. No use el _id para referenciar la posición del índice del arreglo de cualquier nodo en members.

4) Reconfigura el set de réplicas con la nueva configuración

Utilice el método rs.reconfig() para reconfigurar el set de réplica con el documento actualizado de configuración del set de réplica.

rs.reconfig(cfg);

Advertencia

  • El método de shell rs.reconfig() puede forzar el traspaso del primario actual, lo que provoca una elección. Cuando el primario renuncia, el mongod cierra todas las conexiones de los clientes. Aunque esto generalmente toma entre 10 y 20 segundos, intente hacer estos cambios durante los periodos de mantenimiento programados.

  • Evitar reconfigurar sets de réplicas que contengan miembros de diferentes versiones de MongoDB, ya que las reglas de validación pueden diferir entre versiones de MongoDB.

Volver

Configura un miembro de set de réplicas retrasado

En esta página