Joindre un nœud travailleur (worker node) au swarm
Dans l'étape précédente, nous avons initialisé un Docker Swarm et la sortie a fourni une commande pour joindre un nœud travailleur. Dans un scénario réel, vous exécuteriez cette commande sur une machine distincte que vous souhaitez ajouter en tant que travailleur à votre swarm. Cependant, comme nous utilisons une seule machine virtuelle LabEx, nous allons simuler l'ajout d'un nœud travailleur en utilisant la commande de jointure sur la même machine.
Tout d'abord, récupérons la commande de jointure pour un nœud travailleur. Vous pouvez obtenir le jeton (token) de jointure et la commande en exécutant docker swarm join-token worker
sur le nœud gestionnaire (qui est notre machine virtuelle actuelle).
docker swarm join-token worker
La sortie sera similaire à ceci :
To add a worker to this swarm, run the following command on the worker node:
docker swarm join --token SWMTKN-1-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 172.17.0.2:2377
Copiez la commande complète docker swarm join --token ...
de la sortie. Cette commande contient le jeton unique ainsi que l'adresse IP et le port du gestionnaire de swarm.
Maintenant, exécutez la commande copiée pour joindre le nœud actuel au swarm en tant que travailleur.
docker swarm join --token SWMTKN-1-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 172.17.0.2:2377
Remplacez le jeton et l'adresse IP par les valeurs que vous avez obtenues à partir de la commande docker swarm join-token worker
.
Vous devriez voir une sortie indiquant que le nœud a rejoint le swarm en tant que travailleur :
This node joined a swarm as a worker.
Pour vérifier que le nœud a rejoint le swarm, vous pouvez lister les nœuds du swarm du point de vue du gestionnaire. Comme notre machine virtuelle unique agit à la fois en tant que gestionnaire et que travailleur, nous pouvons utiliser la commande docker node ls
.
docker node ls
La sortie affichera les nœuds du swarm. Vous devriez voir deux entrées pour le même identifiant de nœud (node ID), l'une avec le statut "Ready" et le rôle "Manager", et l'autre avec le statut "Ready" et le rôle "Worker".
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS ENGINE VERSION
xxxxxxxxxxxx * labex-vm Ready Active Leader 20.10.21
xxxxxxxxxxxx labex-vm Ready Active 20.10.21
Cela confirme que le nœud a rejoint le swarm avec succès en tant que travailleur.