Curso Docker
Comandos Docker Swarm para Gestionar el Clúster
En un clúster de Docker Swarm, hay varios nodos que pueden ser managers (líderes que coordinan el clúster) o workers (nodos que ejecutan los contenedores). Los comandos de gestión de nodos permiten controlar estos nodos dentro del clúster, desde listar todos los nodos hasta actualizar sus roles.
1. docker node ls: Listar los nodos en el clúster de Docker Swarm
Este comando muestra todos los nodos que forman parte del clúster de Docker Swarm, tanto los nodos managers como los workers. Es útil para obtener una visión general de los nodos que están activos en el clúster y ver su estado.
Ejemplo:
1docker node ls
Salida esperada:
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS
abc123 node1 Ready Active Leader
def456 node2 Ready Active Reachable
ghi789 node3 Ready Active Worker
- Leader: Es el nodo principal que coordina el clúster.
- Reachable: Son managers secundarios que pueden asumir el rol de líder si el líder actual falla.
- Worker: Nodos que no son managers y solo ejecutan tareas.
2. docker node update <nombre_nodo>: Actualizar un nodo (etiquetas, disponibilidad)
Este comando se utiliza para actualizar las propiedades de un nodo, como su disponibilidad (si está listo para recibir tareas o no) o agregar etiquetas personalizadas para identificar los nodos.
Ejemplo 1: Cambiar la disponibilidad de un nodo a inactivo (no recibirá nuevas tareas):
1docker node update --availability drain node3
Esto cambia el estado de node3 para que no acepte nuevas tareas. Las tareas en ejecución seguirán corriendo, pero no se asignarán nuevas.
Ejemplo 2: Agregar una etiqueta personalizada a un nodo:
1docker node update --label-add tipo=almacenamiento node3
Esto agrega la etiqueta tipo=almacenamiento al nodo node3, que podría ser útil para asignar tareas específicas a nodos con características particulares.
3. docker node rm <nombre_nodo>: Eliminar un nodo del clúster
Este comando elimina un nodo del clúster. Generalmente se utiliza cuando un nodo deja de ser necesario o está siendo retirado del servicio.
Ejemplo:
1docker node rm node3
Esto elimina el nodo node3 del clúster. Si el nodo está ejecutando tareas, primero debes asegurarte de que esas tareas sean reasignadas o terminadas antes de eliminar el nodo.
4. docker node promote <nombre_nodo>: Promover un nodo a líder del clúster
Este comando promueve un nodo worker a un manager, lo que significa que ahora puede tomar decisiones sobre el clúster, como gestionar la distribución de tareas y coordinar otros nodos.
Ejemplo:
1docker node promote node3
Esto convierte el nodo node3 de un nodo worker a un nodo manager, permitiéndole gestionar tareas en el clúster.
5. docker node demote <nombre_nodo>: Degradar un nodo de líder a trabajador
Si un nodo manager ya no necesita gestionar el clúster, puedes degradarlo a un nodo worker usando este comando. El nodo seguirá ejecutando tareas, pero ya no tendrá permisos para tomar decisiones sobre la orquestación.
Ejemplo:
1docker node demote node2
Esto degrada el nodo node2 de manager a worker, quitándole la capacidad de coordinar el clúster.
Resumen de los Comandos para Gestionar el Clúster
docker node ls: Lista todos los nodos del clúster, mostrando su estado y rol (manager o worker).docker node update: Actualiza las propiedades de un nodo, como su disponibilidad o etiquetas personalizadas.docker node rm: Elimina un nodo del clúster.docker node promote: Promueve un nodo worker a manager para que gestione el clúster.docker node demote: Degrada un nodo manager a worker, quitándole la capacidad de gestionar el clúster.
Estos comandos son útiles para gestionar y mantener el funcionamiento de un clúster de Docker Swarm, asegurando que los nodos se asignen adecuadamente a las tareas necesarias.
- Loading...
Muestra todos los nodos que forman parte del clúster de Docker Swarm, tanto los nodos managers como los workers.
Loading...