Mesos – distributed kernel, runs on multiple servers, emulates one logical server. Multiple weak servers are cheaper, then one power server.
Consul – discovery service. For example there are one balancer and and two DB, when you add one DB with consul, that DB will “knoсk” to balancer and say “I’m here, I can receive requests.” Designed for infrastructure with more than 50 containers, because minimum number of servers is 3 for fault tolerance.
Zookeeper – discovery service. Minimum number of servers is 3 for fault tolerance.