为KAFKA设置多代理群集并尝试杀死Leader Broker

时间:2018-06-18 13:03:52

标签: apache-kafka

我正在关注设置多代理群集的官方KAFKA指南。当我们在下面发布的命令运行时我们可以看到这一点:

[cloudera@quickstart kafka_2.11-1.1.0]$ ./bin/kafka-topics.sh --describe -- 
zookeeper localhost:2181 --topic my-replicated-topic
Topic:my-replicated-topic   PartitionCount:1    ReplicationFactor:3 Configs:
     Topic: my-replicated-topic Partition: 0    Leader: 2   Replicas: 2,0,1 Isr: 2,0,1

但是,我想根据指南杀死领导者Broker - 这是节点2,但我找不到pid以杀死领导者。我只能找到3个节点中的1个。我错过了什么?

[cloudera@quickstart kafka_2.11-1.1.0]$ ps aux | grep server-1.properties
 cloudera 15203  0.1  0.1 528140 20588 ?        S    04:11   0:10 gedit /home/cloudera/kafka_2.11-1.1.0/config/server-1.properties
 cloudera 20833  0.0  0.0 103312   936 pts/7    S+   05:51   0:00 grep server-1.properties

 [cloudera@quickstart kafka_2.11-1.1.0]$ ps aux | grep server-2.properties
  cloudera 20837  0.0  0.0 103308   912 pts/7    S+   05:51   0:00 grep server-2.properties

我可以找到经纪人1而不是经纪人2。

所以我不能杀死领导者经纪人。

但这里必须有一个转折点。运行Centos 6 BTW。

提前致谢。

1 个答案:

答案 0 :(得分:0)

当我们运营经纪人时,我们

kafka-server-start ../config/server.properties 
//by default the value of brokerid is 0 and port is 9092

Create one more server1.properties with brokerid 1 and port 9093 //given nothing is already running on port 9093 and do

kafka-server-start ../config/server1.properties

在运行多个代理时,您必须拥有多个server.properties config或file。在server.properties文件中,您的字段为brokerid,默认情况下为0,而在运行多个时,您必须更改brokerid,因为我们不能拥有2个具有相同brokerid的代理

在server.properties中还有一个字段描述了服务器(代理)将在哪个端口运行,默认情况下端口的值为9092,而在运行其他代理时,您必须更改值端口也是因为我们不能在同一个端口上运行2个进程。

如果您想要一个基于GUI的工具来查看您的kafka集群,我建议您使用kafka-tool,它将为您提供集群的全貌,您拥有多少经纪人这些经纪人的属性和数量分区你有哪个代理是哪个分区外转的领导者。