mesos-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Aaron Carey <>
Subject RE: Zookeeper integration for Mesos-DNS
Date Mon, 23 Mar 2015 16:46:01 GMT
lovely, thanks!

From: craig w []
Sent: 23 March 2015 15:35
Subject: Re: Zookeeper integration for Mesos-DNS

Keep in mind DNS will give you the ipaddress of the host, so "rabbitmq.marathon.mesos" will
resolve to some IP address. Do get port information you have to query mesos-dns for its SRV

On Mon, Mar 23, 2015 at 11:29 AM, Ken Sipe <<>>
roger that

On Mar 23, 2015, at 9:22 AM, Aaron Carey <<>>

Thanks Ken,

So basically we just need to add mesos-dns to our /etc/resolv.conf on every machine and hey
presto auto-service discovery (using DNS)? (Here I mean service discovery to be: hey where
is rabbitmq? DNS says: or whatever)


From: Ken Sipe [<>]
Sent: 23 March 2015 14:29
Subject: Re: Zookeeper integration for Mesos-DNS


Mesos-DNS is a DNS name server + a monitor of mesos-masters.  It listens to the mesos-master.
 If a service is launched by mesos then mesos-dns conjures a service name (app_id + framework_id
+.mesos) and associates it to the IP and PORT of the service.  Since Mesos-DNS is a name service,
it needs to be in your list of name services for service discovery.  From a service discovery
stand point there is no need to be in the cluster and there is no need to have a dependency
on Mesos.

Mesos-DNS is not a proxy.  It doesn’t provide any special services to clients or services
inside the cluster.   more detail below.

On Mar 23, 2015, at 7:52 AM, Aaron Carey <<>>

As I understood it, it provides a service for containers within the cluster to automatically
find each other as it handles their dns calls?

The way this is stated this doesn’t seem true.    Mesos-DNS is a DNS name server.    From
a service discovery stand point, It doesn’t do anything different than a standard DNS naming

However clients outside the cluster will not use the mesos-dns service by default, so won't
have knowledge of anything running inside the cluster?

This is all dependent on how /etc/resolv.conf is setup.  If mesos-dns is in the list… then
this is not true.

Is there an easy way to set this up to (for example) add records to AWS Route 53 when services
get started in the cluster, so other clients can see them?

This is outside of Mesos-DNS

Good Luck!!


From: Ken Sipe [<>]
Sent: 23 March 2015 13:31
Subject: Re: Zookeeper integration for Mesos-DNS


It depends on what you mean however, Mesos-DNS works outside the cluster IMO. It is a bridge
for things in the cluster (services launched by mesos)... But at that point it is DNS.  Any
client in or out of the cluster that can query DNS that leverage the service.

Sent from my iPhone

On Mar 23, 2015, at 4:25 AM, Aaron Carey <<>>


I don't suppose there is anything like Mesos-DNS but for services/users outside the mesos
cluster? So having a service which updates a DNS provider with task port/ips running inside
the cluster so that external users are able to find those services? Am I correct in thinking
Mesos-DNS only works inside the cluster?

Currently we're using consul for this, but I'd be interested if there was some sort of magical
plug and play solution?


From: Christos Kozyrakis [<>]
Sent: 21 March 2015 00:18
Subject: Zookeeper integration for Mesos-DNS

Hi everybody,

we have updated Mesos-DNS to integrate directly with Zookeeper. Instead of providing Mesos-DNS
with a list of masters, you point it to the Zookeeper instances. Meson-DNS will watch Zookeeper
to detect the current leading master. So, while the list of Zookeeper instances is configured
in a static manner, Mesos masters can be added or removed freely without restarting Mesos-DNS.

The integration with Zookeeper forced to switch from -v and -vv as the flags to control verbosity
to -v=0 (default), -v=1 (verbose), and -v=2 (very verbose).

To reduce complications because of dependencies to other packages, we have also started using

Please take a look at the branch
and provide us with any feedback on the code or the documentation.




View raw message