使用zookeeper来发现运行docker的mesos slave

我正在尝试使用mesos / marathon框架链接2个docker集装箱。 据我所知,没有办法使用mesos / martahon中的docker链接function。 所以前进的方式是使用服务发现。 由于zookeeper已经被使用了,我的问题是如何使用zookeeper进行服务发现,这样一个容器就可以和另一个容器通话。

对于Mesos / Marathon上的服务发现,您可以使用代理服务器(请参阅https://mesosphere.github.io/marathon/docs/service-discovery-load-balancing.html )或自动从Mesos派生设置的DNS服务器(请参阅https://github.com/mesosphere/mesos-dns )。

虽然可能我会重新考虑使用Zookeeper作为您的configuration和服务信息的中央KV商店。 你可以尝试实现一个守护进程来在zookeeper中请求和保存数据,以便configuration你的容器的configuration文件和实时修补,但这是一个复杂的解决scheme(在Pinterest的这个post中有这样的例子,或者在Hadoop的ZKFailoverController守护进程中) 。 从我的angular度来看,还有比较适合的解决scheme,比如Consul或者etcd,而守护进程的实现则是kelseyhightower / confd或者consul-template 。