集群中的kafka机器和kafka通信

时间:2019-02-07 14:47:13

标签: apache-kafka

我们拥有带有3个kafka经纪人节点和3个zookeeper服务器的kafka集群

kafka版本-10.1(hortonworks)

据我了解,因为所有元数据都位于zookeeper服务器上,而kafka经纪人正在使用此数据(kafka通过端口2181与zookeeper服务器对话)

我只是想知道每个kafka机器是否与集群中的其他kafka对话,或者kafka是否仅从zookeepers服务器上获取/输入数据?

那么剂量kafka服务需要与集群中的其他kafka通信吗? , 还是kafka机器只需要从zookeepers服务器获得所有功能?

enter image description here

1 个答案:

答案 0 :(得分:1)

Kafka经纪人当然需要彼此通信,最重要的是复制数据。产生给Kafka的数据在代理之间复制,以实现容错和数据持久性。分区跟随者将FetchRequest发送给分区领导者以复制数据。

此外,每当分区领导者/跟随者发生更改时,Controller代理就会向代理发送LeaderAndIsr请求-这是它通知代理开始引导分区或复制分区的方式。

我将推荐我的这两篇入门文章,以帮助您获得更多背景信息:

https://hackernoon.com/thorough-introduction-to-apache-kafka-6fbf2989bbc1

https://hackernoon.com/apache-kafkas-distributed-system-firefighter-the-controller-broker-1afca1eae302