Despliega tu enjambre de contenedores con Docker en Ubuntu 22.04

Docker es mi motor de implementación de contenedores preferido. Con él, puedo desplegar rápidamente contenedores en una red que son fácilmente accesibles. Pero, ¿qué sucede cuando quiero escalar esas aplicaciones? Hacerlo en un solo servidor Docker sería un desafío. Para ello, despliegas múltiples instancias de Docker y las agrupas en un conjunto, eso, mis amigos, se llama Docker Swarm.

Despliega tu enjambre de contenedores con Docker en Ubuntu 22.04 - Desarrollo | Imagen 1 Newsmatic

Permíteme mostrarte cómo desplegar un Docker Swarm en mi distribución de servidor estándar de facto, Ubuntu. Hay varias partes móviles involucradas, así que manos a la obra.

Índice de Contenido
  1. Lo que necesitarás para desplegar un Docker Swarm
  2. Cómo instalar la última versión de Docker
  3. Cómo cambiar el nombre de host en tus servidores
  4. Cómo mapear el archivo de hosts
  5. Cómo inicializar el Swarm

Lo que necesitarás para desplegar un Docker Swarm

Voy a demostrarlo con un clúster de tres nodos (uno controlador y dos nodos). Para eso, necesitarás tres instancias de Ubuntu Server 22.04. También necesitarás un usuario con privilegios sudo.

Cómo instalar la última versión de Docker

Querrás hacer esto en cada nodo de tu Swarm.

Primero, agrega la llave GPG de Docker con el comando:

Cómo instalar y ejecutar una aplicación Node.js en Ubuntu 22.04

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

Luego, agrega el repositorio oficial de Docker:

echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

A continuación, instalaremos algunas dependencias con el comando:

sudo apt-get install apt-transport-https ca-certificates curl gnupg lsb-release -y

Finalmente, podemos instalar la última versión del engine de Docker:

Cómo habilitar el arranque PXE en VirtualBox

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io -y

Para finalizar, agrega tu usuario al grupo "docker" con el comando:

sudo usermod -aG docker $USER

Cierra sesión y vuelve a iniciarla para que los cambios surtan efecto.

Cómo cambiar el nombre de host en tus servidores

Cambiemos los nombres de host de tus servidores Docker Swarm. Esto se hará en todos los nodos. Los configuraremos como docker1, docker2 y docker3, pero puedes nombrarlos como prefieras.

Para establecer el nombre de host, el comando es:

Cómo desplegar microk8s en Ubuntu Server: Guía paso a paso

sudo hostnamectl set-hostname HOSTNAME

Donde HOSTNAME es el nombre del host para la máquina.

Cómo mapear el archivo de hosts

Esto también se hace en cada nodo. Abre el archivo de hosts con el comando:

sudo nano /etc/hosts

Al final del archivo, mapea cada host de la siguiente manera (cambiando las entradas para que coincidan con tus nombres de host y direcciones IP):

192.168.1.60 docker1
192.168.1.61 docker2
192.168.1.62 docker3

Conviértete en un desarrollador web Full Stack y aprovecha la economía gig

Guarda y cierra el archivo.

Cómo inicializar el Swarm

Ve al nodo controlador (docker1) e inicia el Swarm con el comando, asegurándote de editar la dirección IP según tus necesidades:

docker swarm init --advertise-addr 192.168.1.60

Luego deberías ver un comando de unión que se ve algo así:

docker swarm join --token SWMTKN-1-05rgkgq9hgvas7wfglzrumxymzxw3downs1afcbdr9kc7hq4cm-8ku8kxjsq57l1xnkl5lzjppro 192.168.1.60:2377

Ejecuta ese comando en cada uno de tus nodos. Una vez que se hayan unido, puedes verificar el Swarm en el nodo controlador con el comando:

Aprende a desarrollar aplicaciones multiplataforma con Flutter y Solidity en el 2022

docker node ls

Deberías ver algo como esto en la salida:

tpsl7enzswhkeef3dh8uswkxp * docker1 Ready Active Leader 20.10.17
xnye548afhe1hc832kulh5sui docker2 Ready Active 20.10.17
cammaze2fcfcomjpdo0fwz105 docker3 Ready Active 20.10.17

Felicidades, tu Docker Swarm está listo para tus implementaciones. Puedes seguir agregando nuevos nodos según sea necesario para obtener una capacidad de escalado y recuperación ante fallos aún mayor.

Guía de principiantes para adoptar la cultura DevOps en empresas de tecnología

En Newsmatic nos especializamos en tecnología de vanguardia, contamos con los artículos mas novedosos sobre Desarrollo, allí encontraras muchos artículos similares a Despliega tu enjambre de contenedores con Docker en Ubuntu 22.04 , tenemos lo ultimo en tecnología 2023.

Artículos Relacionados

Subir

Utilizamos cookies para mejorar su experiencia de navegación, mostrarle anuncios o contenidos personalizados y analizar nuestro tráfico. Al hacer clic en “Aceptar todo” usted da su consentimiento a nuestro uso de las cookies.