Kafka,为客户端配置单个还是多个代理服务器?

时间:2018-11-15 19:38:40

标签: apache-kafka kafka-consumer-api kafka-producer-api

我经常在我的kafka生产者/消费者/流应用中为bootstrap.servers配置经纪人ips列表。但是我想移到单个URL条目,该条目将由DNS查找当前称为代理ip的代理ip进行DNS查找来解决(DNS主动检查群集中的代理,并使用IP短TTL [10s]响应查找) 。这使我在将来添加代理时具有更大的灵活性,并且可以在所有环境/阶段的应用程序中保持相同的配置。这是推荐的方法,还是这消除了客户端的弹性以没有严格的代理列表?我认为此配置将仅用于最初“发现”集群和分区领导者代理。

1 个答案:

答案 0 :(得分:0)

如果有什么话,我想这会在您提供的单个地址上增加一个单点故障,除非它实际上是一个负载平衡的反向代理。

内部可行的另一种可能性是使用Consul服务发现,并在每个代理上运行Consul代理。这样,您就可以进行服务发现,运行状况检查和更轻松的监控设置,例如在代理上使用Prometheus jmx_exporter,而Prometheus Server会为所有kafka.service.consul地址抓取这些值