我正在尝试使用mesos / marathon框架链接2个docker容器。据我所知,没有办法在mesos / martahon中使用docker链接功能。因此,前进的方法是使用服务发现。由于zookeeper已被使用,我的问题是如何使用zookeeper进行服务发现,以便1个容器可以与另一个容器通信。
答案 0 :(得分:1)
对于Mesos / Marathon上的服务发现,您可以使用代理服务器(请参阅https://mesosphere.github.io/marathon/docs/service-discovery-load-balancing.html)或自动从Mesos派生设置的DNS服务器(请参阅https://github.com/mesosphere/mesos-dns)。
答案 1 :(得分:0)
虽然可能,但我会重新考虑使用Zookeeper作为您的配置和服务信息的集中式KV存储。你可以尝试实现一个守护进程来询问和保存zookeeper中的数据,以便配置你的容器的配置文件和实时补丁,但它是一个复杂的解决方案(在{{3}中有这种方法的例子) },或者在Hadoop的ZKFailoverController守护程序中)。从我的角度来看,有更合适的解决方案,如Consul或etcd,守护进程的实现为this post from Pinterest或kelseyhightower/confd。