Swarm nodes
A swarm is a collection of nodes. We can classify a node as a physical computer or virtual machine (VM). Physical computers these days are often referred to as bare metal. People say we're running on bare metal to distinguish from running on a VM.
When we install Docker on such a node, we call this node a Docker host. The following figure illustrates a bit better what a node and what a Docker host is:
Bare metal and VM type Docker Swarm nodes
To become a member of a Docker Swarm, a node must also be a Docker host. A node in a Docker Swarm can have one of two roles. It can be a manager or it can be a worker. Manager nodes do what their name implies; they manage the swarm. The worker nodes in turn execute application workload.
Technically, a manager node can also be a worker node and thus run application workload, although that is not recommended, especially if the swarm is a production system running mission critical applications.
Swarm managers
Each Docker Swarm needs to have at least...