Docker Swarm es una herramienta de orquestación de contenedores que permite a los usuarios gestionar clústeres de servicios de Docker. Este sistema es especialmente útil para la implementación de aplicaciones a gran escala, proporcionando una plataforma robusta para asegurar la alta disponibilidad y la escalabilidad de las aplicaciones. En este artículo, detallaremos los pasos necesarios para configurar Docker Swarm en un servidor con Ubuntu 22.04, asegurando que incluso los recién llegados puedan seguir el proceso sin dificultades.
Requisitos Previos
Antes de comenzar la instalación de Docker Swarm, es necesario tener Docker instalado en tu sistema Ubuntu 22.04. Si aún no has instalado Docker, sigue estos pasos:
Instalar Docker
- Actualiza tu lista de paquetes:
sudo apt update
- Instala los paquetes necesarios para permitir que apt utilice un repositorio sobre HTTPS:
sudo apt install apt-transport-https ca-certificates curl software-properties-common
- Agrega la clave GPG del repositorio oficial de Docker:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
- Agrega el repositorio de Docker a las fuentes de APT:
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
- Actualiza tu lista de paquetes e instala Docker CE:
sudo apt update
sudo apt install docker-ce
- Verifica que Docker esté instalado correctamente:
sudo systemctl status docker
Configurar Docker Swarm
Una vez que Docker esté instalado, puedes proceder a configurar Docker Swarm.
Inicializar el Swarm
El primer paso para configurar Docker Swarm es inicializarlo en el nodo que actuará como líder (manager) del Swarm:
sudo docker swarm init --advertise-addr <tu-direccion-ip>
Este comando configura el nodo actual como el manager del Swarm y usa la dirección IP especificada para la comunicación entre los nodos del Swarm.
Unir Nodos al Swarm
Para añadir más nodos al Swarm (ya sea como managers adicionales o como workers), necesitas el token que se generó al inicializar el Swarm. Puedes recuperar este token con el siguiente comando en el nodo manager:
sudo docker swarm join-token worker
Luego, en cada uno de los nodos que deseas unir al Swarm como workers, ejecuta el comando que se muestra en la salida del comando anterior, que se verá algo así:
sudo docker swarm join --token <tu-token> <direccion-ip-manager>:2377
Verificar el Estado del Swarm
Para verificar que los nodos están unidos y funcionando correctamente en el Swarm, puedes utilizar el siguiente comando en el nodo manager:
sudo docker node ls
Este comando mostrará una lista de todos los nodos en el Swarm y su estado.
Uso de Docker Swarm
Con Docker Swarm activo, puedes comenzar a desplegar tus aplicaciones en contenedores. Usa docker service create
para desplegar aplicaciones, y docker service scale
para escalar servicios.
Ejemplo de Despliegue de un Servicio
sudo docker service create --replicas 3 -p 80:80 --name web nginx
Este comando crea un servicio llamado “web” utilizando la imagen de nginx, expone el puerto 80 y crea 3 réplicas del contenedor.
Para aquellos que buscan un rendimiento optimizado y una gestión simplificada, los servicios de Cloud VPS de Shape.host son ideales para desplegar soluciones como Docker Swarm. Con Shape.host, obtienes acceso a infraestructura de alto rendimiento que puede soportar la demanda de aplicaciones y servicios distribuidos, asegurando la escalabilidad y disponibilidad que tu infraestructura de contenedores necesita.