Overview
El priority La configuración de los miembros del conjunto de réplicas afecta tanto el tiempo como el resultado de Elecciones primarias. Los miembros con mayor prioridad tienen más probabilidades de convocar elecciones y de ganar. Use esta configuración para garantizar que algunos miembros tengan más probabilidades de participar en las primarias y que otros nunca puedan hacerlo.
El valor de la configuración del miembro priority determina su en las elecciones. Cuanto mayor sea el número, mayor será la priority prioridad.
Considerations
Para modificar las prioridades, actualice la matriz en el objeto de configuración de la réplica. El índice de members la 0 matriz comienza con.No confunda este valor de índice con el valor del members[n]._id campo del miembro del conjunto de réplicas en la matriz.
El valor de priority puede ser cualquier número de punto flotante (es decir, decimal) entre 0 1000y. El valor predeterminado del priority campo 1 es.
Para impedir que un miembro se presente como candidato principal, asígnele una prioridad 0 de. Los miembros ocultos y retrasados tienen una prioridad de priority 0establecida en.
Los árbitros tienen prioridad 0.
Ajuste la configuración de prioridad durante una ventana de mantenimiento programada. Reconfigurar la prioridad puede obligar al servidor principal actual a retirarse, lo que da lugar a una elección. Antes de una elección, el servidor principal cierra todas las conexiones de cliente abiertas.
Prioridad y votos
members[n].priority y tienen la siguiente members[n].votes relación:
Los nodos sin derecho a voto (es decir,
voteses0) deben tenerpriorityde 0.Los nodos con
prioritymayor que 0 no pueden tenervotesvotos.
Por lo tanto,priority votes aumentar 1 la prioridad de un miembro sin derecho a voto requiere establecer en y aumenta el número de miembros con derecho a voto del conjunto de réplicas. Antes de aumentar la prioridad de un miembro sin derecho a voto, considere lo siguiente:
Los conjuntos de réplicas de MongoDB no pueden tener más de 7 miembros con derecho a voto. Si el conjunto de réplicas ya tiene 7 miembros con derecho a voto, no se puede modificar la prioridad de los miembros restantes para que sea mayor
0que.La reconfiguración de réplicas puede agregar o remover no más de un nodo con derecho a voto a la vez. Para cambiar múltiples nodos sin derecho a voto para que tengan una prioridad mayor que
0, ejecuta una serie de operacionesreplSetReconfigo ders.reconfig()para modificar un nodo a la vez. Consulta Reconfiguration Can Add or remover No More than One Voting nodo at a Time para obtener más información.
Procedimiento
Advertencia
El
rs.reconfig()método de shell puede forzar la desconexión del servidor principal actual, lo que provoca una elección. Cuando la desconexión del servidor principal se produce, elmongodmétodo cierra todas las conexiones de cliente. Aunque esto suele tardar 10entre y20 segundos, intente realizar 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.
Cambiar el valor de prioridad de cada miembro.
Cambie el valor de cada miembro,members[n].priority tal como está configurado en la members matriz.
cfg.members[0].priority = 0.5 cfg.members[1].priority = 2 cfg.members[2].priority = 2
Esta secuencia de operaciones modifica el valor de cfg para establecer la prioridad de los primeros tres miembros definidos en la members matriz.
Asigne al set de réplicas la nueva configuración.
Utilice para aplicar la nueva rs.reconfig() configuración.
rs.reconfig(cfg)
Esta operación actualiza la configuración del conjunto de réplicas utilizando la configuración definida por el valor de cfg.