In Chapter 1, Welcome to Docker Swarm we created a simple yet well functioning local Docker Swarm cluster using the nodes://
mechanism. This system is not very practical, except for learning the Swarm fundamentals.
In fact, it is just a flat model that does not contemplate any true master-slave architecture, not to mention the high-level services, such as nodes discovery and auto-configuration, resilience, leader elections, and failover (high availability). In practice, it's not suitable for a production environment.
Apart from nodes://
, Swarm v1 officially supports four discovery services; however, one of them, Token, is a trivial non-production one. Basically, with Swarm v1 you need to integrate a discovery service manually, while with Swarm Mode (from Docker 1.12), a discovery service, Etcd, is already integrated. In this chapter we're going to cover:
Discovery services
A test-grade discovery service: Token
Raft theory and Etcd
Zookeeper and Consul...