Está en la página 1de 4

Instalación de DockerSwarm

Docker Swarm es un cluster y orquestador de contendores dockers

Pre Requisitos.

• Requiere Docker Engine CE


• Prmisos sudo

Para efectos del tutoorial se asume que se tendra un nodo master y dos nodos workers, las
tres maquinas requieren Docker Engine CE

Para instalar Docker engine CE, debe ejecutar los siguientes comandos.

sudo apt-get update


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

Para probar la instalación puede instalar una imagen de ejemplo

sudo docker run hello-world

Las maquinas que sean parte del cluster debene ser visibles en entre ellas por red y deben
tener los siguientes puertos abiertos.

Hosts Direction Port Purpose

managers, in TCP 443 Port for the UCP web UI and API
workers (configurable)

managers in TCP 2376 Port for the Docker Swarm manager.


(configurable) Used for backwards compatibility

managers, in TCP 2377 Port for communication between swarm


workers (configurable) nodes

1
managers, in, out TCP, UDP 4789 Port for overlay networking
workers

managers, in, out TCP, UDP 7946 Port for gossip-based clustering
workers

managers, in TCP 12376 Port for a TLS proxy that provides


workers access to UCP, Docker Engine, and
Docker Swarm

Para abrir un puerto debe ejecutar el siguiente comando.

sudo iptables -A INPUT -p tcp -i eth0 --dport 12376 -j ACCEPT

Cambiando el puerto y el protocolo de transporte.

Creando Docker Swarm

Conectese por ssh a la maqiuna que contendra el Nodo Manager, asegurese de conectarse
con el usuario root

Y ejecute el siguiente comando.

docker swarm init --advertise-addr <MANAGER-IP>

El output de este comando debe verse de la siguiente manera.


docker swarm init --advertise-addr 192.168.99.100
Swarm initialized: current node (dxn1zf6l61qsb1josjja83ngz) is now a
manager.

To add a worker to this swarm, run the following command:

docker swarm join \


--token SWMTKN-1-49nj1cmql0jkz5s954yi3oex3nedyz0fb0xx14ie39trti4wxv-
8vxv8rssmk743ojnwacrr2e7c \
192.168.99.100:2377

To add a manager to this swarm, run 'docker swarm join-token manager' and
follow the instructions.

2
Es Importante la linea, copiela en un lugar que pueda tenerla a mano.
docker swarm join \
--token SWMTKN-1-49nj1cmql0jkz5s954yi3oex3nedyz0fb0xx14ie39trti4wxv-
8vxv8rssmk743ojnwacrr2e7c \

Nos dice que token debemos usar para unir nodos al swarm

Si el nodo esta correctamente iniciado debe ver lo siguiente con el comando docker node ls

docker node ls

ID HOSTNAME STATUS AVAILABILITY MANAGER


STATUS
dxn1zf6l61qsb1josjja83ngz * manager1 Ready Active Leader

Luego cierre la conexión ssh y conectese al primer nodo que desea agregar y ejecute el
comando que nos genero el la inicializacion del nodo anterior y que se le pidió que respaldara.
docker swarm join \
--token SWMTKN-1-49nj1cmql0jkz5s954yi3oex3nedyz0fb0xx14ie39trti4wxv-
8vxv8rssmk743ojnwacrr2e7c \
192.168.99.100:2377

Luego debe ver el siguiente output


This node joined a swarm as a worker.

Repita para el segundo nodo, saliendo de la conexión ssh y entrando a la nueva maquina
que desea agregar.

Luego de haber agregado los nodos que desea, conectese al nodo master y ejecute lo
siguiente.

docker node ls

3
Si todo salio bien este debe ser su output.
ID HOSTNAME STATUS AVAILABILITY MANAGER
STATUS
03g1y59jwfg7cf99w4lt0f662 worker2 Ready Active
9j68exjopxe7wfl6yuxml7a7j worker1 Ready Active
dxn1zf6l61qsb1josjja83ngz * manager1 Ready Active Leader

Instalando Portainer

Portainer es una herramienta de administración y monitoreo de ambientes docker

Para instalarlo conectese por ssh al nodo manager de nuestro docker swarm

Y ejecute

docker volume create portainer_data


docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -
v portainer_data:/data portainer/portainer

Puede revisar la instalación con un comando docker services ls

Si abre un browser y va al siguiente links http://IP_NodoManager:9000 debe ver la siguiente


pantalla.

Agregue una contraseña para el administrador y su instalación estará lista

También podría gustarte