Also have another service discovery tool. https://www.consul.io/ https://github.com/CiscoCloud/mesos-consul
On Tue, Jun 30, 2015 at 10:51 AM, zhou weitao <[email protected]> wrote: > > > 2015-06-30 6:23 GMT+08:00 Andras Kerekes <[email protected]>: > >> Hi, >> >> >> >> Is there a preferred way to do service discovery in Mesos via mesos-dns >> running on CoreOS? I’m trying to implement a simple app which consists of >> two docker containers and one of them (A) depends on the other (B). What >> I’d like to do is to tell container A to use a fix dns name >> (containerB.marathon.mesos in case of mesos-dns) to find the other service. >> There are at least 3 different ways I think it can be done, but the 3 I >> found all have some shortcomings. >> >> >> >> 1. Use SRV records to get the port along with the IP. Con: I’d >> prefer not to build the logic of handling SRV records into the app, it can >> be a legacy app that is difficult to modify >> >> 2. Use haproxy on slaves and connect via a well-known port on >> localhost. Cons: the Marathon provided script does not run on CoreOS, also >> I don’t know how to run haproxy on CoreOS outside of a docker container. If >> it is running in a docker container, then how can it dynamically allocate >> ports on localhost if a new service is discovered in Marathon/Mesos? >> > Do you know this repo? https://github.com/QubitProducts/bamboo . And here > our corp one https://github.com/Dataman-Cloud/bamboo branched from the > above. > >> 3. Use dedicated port to bind the containers to. Con: I can have >> only as many instances of a service as many slaves I have because they bind >> to the same port. >> >> >> >> What other alternatives are there? >> >> >> >> Thanks, >> >> Andras >> > > -- Best Regards, Haosdent Huang

