【发布时间】:2015-06-18 11:28:09
【问题描述】:
我对服务发现和集群系统很陌生。我开始尝试使用 Mesos 和 Marathon 来部署 Docker 容器,Marathon REST API 和 UI 似乎做得很好。
我的问题是部署服务的实际发现。出于测试目的,我通过 Marathon 部署了一个扩展到 3 个实例的 Kafka 集群,就像我对 MongoDB 测试集群所做的那样。 Mesos-DNS 客户端给了我一个类似kafka.marathon.mesos 和mongo.marathon.mesos 的记录,这意味着从主机到容器的动态映射端口。问题是,我的客户明确需要有关目标端口的信息。有没有一种通用的方法可以自动和动态地从服务中获取这些端口信息?暴露多个端口的应用怎么办?
到目前为止我的想法: - 进行 REST 调用以获取有关已部署应用程序的状态并以某种方式提取相关数据 - 进行 DNS SRV 查找并以某种方式提取相关数据 - 拥有某种“master”,静态绑定到端口,带有动态“clients”。
我为这些信息搜索了很多,但最后大多数教程都以手动查找结束,这不是我的目标。
【问题讨论】:
标签: dns mesos service-discovery mesosphere marathon