Creazione di Swarm

Occorre decidere il nodo manager. Per noi sarà gandalf (IP: 192.168.10.2).

Inizializzazione dello Swarm

Su gandalf:

docker swarm init --advertise-addr 192.168.10.2

Un output possibile è:

Swarm initialized: current node (m06bd3ak4olhz6uwfyou0bevf) is now a manager.

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

    docker swarm join --token SWMTKN-1-1fw3gizof8asovcxnfxe7c1ry8e356psk4jxlntp5hcggmz3pl-1r3gejplppoijm78gcb80j5ms 192.168.10.2:2377

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

Verificare.

docker info
.......
Swarm: active
  NodeID: m06bd3ak4olhz6uwfyou0bevf
  Is Manager: true
  ClusterID: sqsz2f7f0gaens0ipqohgji4e
  Managers: 1
  Nodes: 1
.......

Lista dei nodi:

docker node ls
ID                            HOSTNAME            STATUS              AVAILABILITY        MANAGER STATUS      ENGINE VERSION
m06bd3ak4olhz6uwfyou0bevf *   gandalf             Ready               Active              Leader              19.03.8

Per rivedere il comando da usare sui workers che vogliono unirsi allo swarm, dare sul manager (gandalf):

docker swarm join-token worker
To add a worker to this swarm, run the following command:

    docker swarm join --token SWMTKN-1-1fw3gizof8asovcxnfxe7c1ry8e356psk4jxlntp5hcggmz3pl-1r3gejplppoijm78gcb80j5ms 192.168.10.2:2377

Connettere nodi worker allo Swarm

Su gollum prima, poi su grendel, dare il comando:

docker swarm join --token SWMTKN-1-1fw3gizof8asovcxnfxe7c1ry8e356psk4jxlntp5hcggmz3pl-1r3gejplppoijm78gcb80j5ms 192.168.10.2:2377

Il risultato dovrebbe essere:

This node joined a swarm as a worker.

Sul manager (gandalf) verificare la lista dei nodi:

docker node ls
ID                            HOSTNAME            STATUS              AVAILABILITY        MANAGER STATUS      ENGINE VERSION
m06bd3ak4olhz6uwfyou0bevf *   gandalf             Ready               Active              Leader              19.03.8
ydj4e8ffjgxmwe6i683iyu4ea     gollum              Ready               Active                                  19.03.8
u4kpazamccxy186bn9kttr1nu     grendel             Ready               Active                                  19.03.8