Inicializar un clúster Docker Swarm
En este paso, inicializará un clúster Docker Swarm en su máquina virtual (VM) de LabEx. Un clúster Docker Swarm es un grupo de hosts de Docker que se ejecutan en modo swarm. El modo swarm le permite gestionar un grupo de nodos Docker como un solo sistema virtual.
Antes de inicializar el clúster, veamos la versión actual de Docker instalada en la VM.
docker version
Debería ver una salida similar a esta, lo que indica que la versión de Docker es 20.10.21:
Client: Docker Engine - Community
Version: 20.10.21
API version: 1.41
Go version: go1.18.9
Git commit: baeda1f
Built: Tue Oct 25 18:01:18 2022
OS/Arch: linux/amd64
Context: default
Experimental: true
Server: Docker Engine - Community
Engine:
Version: 20.10.21
API version: 1.41 (minimum version 1.12)
Go version: go1.18.9
Git commit: 363bd3a
Built: Tue Oct 25 17:59:35 2022
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.6.10
GitCommit: b4bd5d2bb63a5d10182b7e90689158e7c7b9b06b
runc:
Version: 1.1.4
GitCommit: v1.1.4-0-g5fd4c4d
docker-init:
Version: 0.19.0
GitCommit: de40ad0
Ahora, inicialicemos el clúster Docker Swarm. Cuando se inicializa un clúster, el nodo actual se convierte en el primer nodo administrador (manager node). Los nodos administradores se encargan de las tareas de gestión del clúster, como mantener el estado del clúster, programar servicios y servir la API del modo swarm.
Utilice el comando docker swarm init
para inicializar el clúster. Especificaremos la dirección de anunciación (advertise address) para garantizar que otros nodos puedan unirse al clúster utilizando la dirección IP de la VM. Reemplace YOUR_VM_IP_ADDRESS
con la dirección IP real de su VM de LabEx. Puede encontrar esta dirección IP en los detalles del entorno de LabEx.
docker swarm init --advertise-addr YOUR_VM_IP_ADDRESS
Después de ejecutar el comando, verá una salida que indica que el clúster se ha inicializado y que proporciona un comando para que otros nodos se unan al clúster como nodos trabajadores (worker nodes). Guarde este comando de unión a mano, ya que lo necesitará en el siguiente paso.
Swarm initialized: current node (xxxxxxxxxxxx) is now a manager.
To add a worker to this swarm, run the following command on the worker node:
docker swarm join --token SWMTKN-1-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx-xxxxxxxxxxxxxxxxxxxxxxxx YOUR_VM_IP_ADDRESS:2377
To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.