networking - subir - dockerfile ejemplos
¿Cómo funcionan las redes y el equilibrador de carga en modo de enjambre de docker? (1)
No estoy seguro de que pueda ser más claro que los documentos, pero tal vez la reformulación ayude.
Primero, el documento que está siguiendo aquí utiliza lo que se llama el swarm mode
de swarm mode
de la ventana acoplable.
¿Qué es el swarm mode
?
Un enjambre es un grupo de motores Docker, o nodos, donde se implementan los servicios. La CLI y la API de Docker Engine incluyen comandos para administrar nodos de enjambre (por ejemplo, agregar o eliminar nodos), y desplegar y organizar servicios en todo el enjambre.
De la documentación SO:
Un enjambre es un número de Docker Engines (o nodos) que despliegan servicios colectivamente. Swarm se utiliza para distribuir el procesamiento en muchas máquinas físicas, virtuales o en la nube.
Por lo tanto, con el modo de enjambre usted tiene un host múltiple (vms y / o físico) que agrupa las máquinas que se comunican entre sí a través de su docker engine
.
Q1. ¿Qué es webnet?
webnet
es el nombre de una red de superposición que se crea cuando se lanza su pila.
Las redes superpuestas gestionan las comunicaciones entre los demonios Docker que participan en el enjambre
En su grupo de máquinas, se crea una red virtual, donde cada servicio tiene una ip asignada a una entrada de DNS interna (que es el nombre del servicio), y permite que la ventana acoplable enrute los paquetes entrantes al contenedor correcto, en todo el enjambre ( racimo).
Q2. Entonces, de forma predeterminada, ¿la red de superposición tiene carga equilibrada en el clúster de ventana acoplable?
Sí, si utiliza la red de superposición, pero también podría eliminar la configuración de las networks
servicio para evitar eso. Luego tendría que publish el puerto del servicio que desea exponer.
Q3. ¿Qué es el equilibrio de carga algo usado?
De esta pregunta SO contestada por el maestro del enjambre bmitch ;):
Actualmente, el algoritmo es de turno rotativo y no he visto ninguna indicación de que sea conectable todavía. Un equilibrador de carga de nivel superior permitiría que los nodos del enjambre se desarmen por mantenimiento, pero el algoritmo round-robin en modo de enjambre anulará cualquier sesión complicada u otras características de enrutamiento.
Q4. En realidad no me queda claro por qué tenemos balanceo de carga en la red de superposición
El propósito del modo / servicios de enjambre de ventana acoplable es permitir la orquestación de servicios replicados , lo que significa que podemos escalar hacia arriba / abajo los contenedores desplegados en el enjambre.
De los documentos otra vez:
El modo de enjambre tiene un componente DNS interno que asigna automáticamente a cada servicio en el enjambre una entrada de DNS. El administrador de enjambres utiliza el equilibrio de carga interno para distribuir las solicitudes entre los servicios dentro del clúster en función del nombre DNS del servicio.
Por lo tanto, puede haber implementado como 10 exactamente el mismo contenedor (digamos nginx con su aplicación html / js), sin tratar con las entradas de DNS de la red privada, la configuración del puerto, etc. enjambre.
¡Espero que esto ayude!
Soy nuevo en Dockers y contenedores. Estaba revisando los tutoriales de Docker y encontré esta información. https://docs.docker.com/get-started/part3/#docker-composeyml
networks:
- webnet
networks:
webnet:
¿Qué es webnet? El documento dice
Indique a los contenedores de la web que compartan el puerto 80 a través de una red de carga equilibrada llamada webnet. (Internamente, los propios contenedores se publicarán en el puerto 80 de la web en un puerto efímero).
Entonces, de forma predeterminada, ¿la red de superposición tiene carga equilibrada en el clúster de ventana acoplable? ¿Qué es el equilibrio de carga algo usado?
En realidad, no me queda claro por qué tenemos equilibrio de carga en la red de superposición.