我想在 Mesos 上运行多个 Kafka 代理作为马拉松作业。我正在考虑使用什么作为经纪人 ID。我知道有些人正在使用基于 IP 的代理 ID,但我读到这种方法对于将代理迁移到不同机器的情况并不是最佳的。有什么见解吗?
与此相关的是,有没有一种方法可以滚动部署 Kafka 代理,让 Marathon 等待旧代理实例在杀死它们之前将数据复制到新实例。
我想在 Mesos 上运行多个 Kafka 代理作为马拉松作业。我正在考虑使用什么作为经纪人 ID。我知道有些人正在使用基于 IP 的代理 ID,但我读到这种方法对于将代理迁移到不同机器的情况并不是最佳的。有什么见解吗?
与此相关的是,有没有一种方法可以滚动部署 Kafka 代理,让 Marathon 等待旧代理实例在杀死它们之前将数据复制到新实例。
我创建了一个Docker 镜像,它可以在 Marathon 上启动,也可以放大和缩小。为了获得唯一的代理 ID,我将 Marathon 设计的 IP 地址和端口号的最后一个八位字节连接到 Docker 容器。
我知道这应该不是问题,因为通常客户端通过 ZooKeeper 进行连接,ZooKeeper 本身具有节点及其连接信息,因此您不需要注意细节。或者我误解了这个问题......
看一下