LINUX

Cómo configurar la agrupación en clústeres nativa Swarm para Docker

Hola a todos, hoy aprenderemos sobre Swarm y cómo podemos crear clústeres nativos usando Docker con Swarm. Enjambre de Docker es un programa de agrupación en clúster nativo para Docker que convierte un grupo de hosts Docker en un solo host virtual. Swarm sirve la API estándar de Docker, por lo que cualquier herramienta que pueda comunicarse con un demonio de Docker puede usar Swarm para escalar de forma transparente a varios hosts. Swarm sigue el principio de «baterías incluidas pero extraíbles» como otros proyectos de Docker. Se envía con un backend de programación simple listo para usar y, a medida que se asienta el desarrollo inicial, se desarrollará una API para habilitar backends conectables. El objetivo es brindar una experiencia fluida y lista para usar para casos de uso simples y permitir el intercambio en backends más potentes, como Mesos, para implementaciones de producción a gran escala. Swarm es extremadamente fácil de configurar y comenzar.

Entonces, aquí hay algunas características de Swarm 0.2 listas para usar.

1. Swarm 0.2.0 es compatible en un 85% con el motor Docker.
2. Es compatible con la gestión de recursos.
3. Tiene la función de programación avanzada con restricciones y afinidades.
4. Es compatible con varios Discovery Backends (hubs, cónsul, etcd, zookeeper)
5. Utiliza el método de cifrado TLS para seguridad y autenticación.

Entonces, aquí hay algunos pasos muy simples y fáciles sobre cómo podemos usar Swarm.

1. Requisitos previos para ejecutar Swarm

Debemos instalar Docker 1.4.0 o posterior en todos los nodos. Si bien no es necesario que la IP de cada nodo sea pública, el administrador de Swarm debe poder acceder a cada nodo a través de la red.

Nota: Swarm se encuentra actualmente en versión beta, por lo que es probable que las cosas cambien. No recomendamos que lo use en producción todavía.

2. Creación de un grupo de enjambres

Ahora, crearemos un clúster de enjambre ejecutando el siguiente comando. Cada nodo ejecutará un agente de nodo de enjambre. El agente registra el daemon de Docker al que se hace referencia, lo supervisa y actualiza el backend de descubrimiento con el estado del nodo. El siguiente comando devuelve un token que es una identificación de clúster única, se utilizará al iniciar Swarm Agent en los nodos.

docker run swarm create

Creación de un grupo de enjambres

3. Iniciar el Docker Daemon en cada nodo

Necesitaremos iniciar sesión en cada nodo que usaremos para crear clústeres e iniciar el Docker Daemon en él usando el indicador -H. Garantiza que la API remota de Docker en el nodo esté disponible a través de TCP para Swarm Manager. Para iniciar el demonio de la ventana acoplable, necesitaremos ejecutar el siguiente comando dentro de los nodos.

# docker -H tcp://0.0.0.0:2375 -d

Inicio del demonio de Docker

4. Agregar los nodos

Después de habilitar Docker Daemon, necesitaremos agregar Swarm Nodes al servicio de descubrimiento. Debemos asegurarnos de que la IP del nodo sea accesible desde Swarm Manager. Para hacerlo, necesitaremos ejecutar el siguiente comando.

# docker run -d swarm join --addr=<node_ip>:2375 token://<cluster_id>

Agregar nodos al clúster

Nota: Aquí, necesitaremos reemplazar y con la dirección IP del Nodo y el ID de clúster que obtuvimos del paso 2.

5. Inicio de Swarm Manager

Ahora, ya tenemos los nodos conectados al clúster. Ahora, iniciaremos el administrador de enjambres, necesitaremos ejecutar el siguiente comando en el nodo.

# docker run -d -p <swarm_port>:2375 swarm manage token://<cluster_id>

Iniciando Swarm Manager

6. Comprobación de la configuración

Una vez que el administrador se está ejecutando, podemos verificar la configuración ejecutando el siguiente comando.

# docker -H tcp://<manager_ip:manager_port> info

Acceso a grupos de enjambres

Nota: Necesitaremos reemplazar con la dirección IP y el puerto del host que ejecuta el administrador de enjambres.

7. Uso de la CLI de la ventana acoplable para acceder a los nodos

Después de que todo se hace perfectamente como se explicó anteriormente, esta parte es la parte más importante del Docker Swarm. Podemos usar la CLI de Docker para acceder a los nodos y ejecutar contenedores en ellos.

# docker -H tcp://<manager_ip:manager_port> info
# docker -H tcp://<manager_ip:manager_port> run ...

8. Listado de nodos en el clúster

Podemos obtener una lista de todos los nodos en ejecución usando el lista de enjambres mando.

# docker run --rm swarm list token://<cluster_id>

Listado de nodos de enjambre

Conclusión

Swarm es realmente una característica asombrosa de la ventana acoplable que se puede usar para crear y administrar clústeres. Es bastante fácil de configurar y usar. Es más hermoso cuando usamos restricciones y afinidades encima. La programación avanzada es una característica impresionante que aplica filtros para excluir nodos con puertos, etiquetas, estado y utiliza estrategias para elegir el mejor nodo. Por lo tanto, si tiene alguna pregunta, comentario o retroalimentación, escriba en el cuadro de comentarios a continuación y háganos saber qué cosas deben agregarse o mejorarse. ¡Gracias! Disfrutar 🙂

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar