ZooKeeper is another widely used and high-performance coordination service for distributed applications. Apache ZooKeeper was originally a subproject of Hadoop but is now a top-level project. It is a highly consistent, scalable, and reliable key-value store that can be used as a discovery service for a Docker Swarm v1 cluster. As mentioned previously, ZooKeeper uses Paxos, rather than Raft.
Similar to Etcd, when ZooKeeper forms a nodes cluster with a quorum, it has one leader and the remaining nodes are followers. Internally, ZooKeeper uses its own ZAB, ZooKeeper Broadcasting Protocol, to maintain consistency and integrity.