Service Discovery with Mesos-DNS
mesosphere.com
mesosphere.com
DNS is an obvious way to support many service discovery needs. There were two motivations for implementing Mesos-DNS instead of using another DNS system. First, we needed a DNS system that closely integrates with Mesos. Instead of having every user or framework describe tasks twice (once to Mesos for execution and once to a DNS system), it easier and cleaner to automatically pass task information from Mesos to DNS. Second, we wanted a simple solution. Mesos and its frameworks already implement fault tolerance and life cycle management. We did not want to force Mesos users to deploy another set of consensus mechanisms, persistent storage, or a replicated logs just for DNS.
One more interesting detail. SkyDNS, Consul, and Mesos-DNS use the great go-DNS library by Miek Gieben (github.com/miekg/dns). So, their core DNS capabilities are the same. They differ in what they offer for fault-tolerance, life cycle management, load balancing, etc. Mesos-DNS defers all this functionality to Mesos and its framework (KISS).
In both cases the combination (SkyDNS + Etcd or Consul) looks far less complicated than Mesos, so I don't really see what you think you gain. If you already have other reasons to want to run Mesos, sure.
* Doesn't tie you to Mesos, as it can move to another "datacenter OS" along with your software.
* Allows you to mix software-on-Mesos with software that's not.
Apache Mesos, the core of Mesosphere's infrastructure, has been in use by companies like Twitter for years to manage clusters with 10s of thousands of servers. http://mesos.apache.org/
But it's usually used with mDNS on a local network.