/ / ¿Por qué elegir el rol de trabajador para los nodos en grupos de enjambres de docker? - docker, docker-swarm, docker-swarm-mode, docker-engine

¿Por qué elegir el rol de trabajador para los nodos en grupos de enjambres de docker? - docker, docker-swarm, docker-swarm-mode, docker-engine

Digamos que tenemos una configuración de prueba de 10 nodos, 4 administradores y 6 trabajadores.

Cuando el gerente líder falla, los otros 3 gerentes elegirán a otro gerente como líder.

Cuando este líder también falla, solo nos quedan 2 gerentes fuera de 4. Los otros gerentes dicen entonces

Respuesta de error del daemon: error de rpc: código = Desconocido desc = El enjambre no tiene un líder. Es posible que haya muy pocos gerentes en línea. Asegúrese de que más de la mitad de los gerentes estén en línea.

Porque tenemos no más de la mitad de los gerentes que quedan, no podrán elegir un nuevo líder aunque queden 2 gerentes del grupo.

Mi pregunta es

  1. el sentido de esta regla, porque el clúster no tiene un líder y ya no es manejable siempre que no se agreguen gerentes adicionales al clúster, aunque hay 2 gerentes disponibles.
  2. ¿Por qué debería elegir el rol worker para nodos en¿todos? ¿Qué ventaja hay para tener nodos como trabajadores? Los administradores también actúan como trabajadores por defecto solo con la desventaja de que no pueden asumir el control cuando los nodos del administrador fallan.

Respuestas

1 para la respuesta № 1
  1. Docker recomienda usar un sistema con número impar.de los nodos gestores. Por lo tanto, su configuración inicial de 4 manager es tan buena como tener 3 nodos de administrador. Se recomienda que comience con 5 nodos, ya que está perdiendo 2 nodos. Además, ¿no hay algún problema grave que deba abordarse en la forma en que lo está utilizando? (Perder tantos nodos no es una buena señal)

Si el enjambre pierde el quórum de gerentes, elEnjambre no puede realizar tareas de gestión. Si tu enjambre tiene múltiples gerentes, siempre tienes más de dos. Para mantener el quórum, la mayoría de los gerentes deben estar disponibles. Se recomienda un número impar de administradores, ya que el siguiente número par no hace que el quórum sea más fácil de mantener. Por ejemplo, si tiene 3 o 4 administradores, aún puede perder solo 1 administrador y mantener el quórum. Si tienes 5 o 6 gerentes, solo puedes perder dos.

  1. Tener nodos dedicados de trabajo asegura queno podrán participar en el estado distribuido de Raft, tomar decisiones de programación o servir la API HTTP en modo de enjambre. Por lo tanto, el poder de cómputo completo de estos nodos está dedicado específicamente a ejecutar los contenedores.

Debido a que los nodos administradores usan el algoritmo de consenso de Raft para replicar los datos de una manera consistente, son sensibles a la falta de recursos.

Las citas son tomadas de la documentación oficial de docker. enlazar