Towards a decentralized discovery service

The limitation of a Swarm v1 architecture is that it uses a centralized and external discovery service. This approach makes every agent to talk to the external discovery service and the discovery service servers may see their load growing exponentially. From our experiments, for a 500-node cluster, we recommend to form an HA discovery service with at least three machines with medium-high specification, say 8 cores with 8 GB of RAM.

To properly address this problem, the discovery service used by SwarmKit and by Swarm Mode has been designed with decentralization in mind. Swarm mode uses the same discovery service codebase, Etcd, on all nodes, with no single point of failure.

Get Native Docker Clustering with Swarm now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.