如何将新的kafka代理动态添加到集群

7xllpg7q  于 2021-06-04  发布在  Kafka
关注(0)|答案(1)|浏览(424)

我们有Kafka合流集群,集群包括3个Kafka经纪人,
版本详细信息:

Kafka machines are installed on rhel version 7.2 
Kafka confluent version is 0.1x
Zookeeper version: 3.4.10
schema-registry version: 4.0.0

每个kafka代理机器都包括以下服务

Kafka broker
Zookeeper server
Schema registry

现在我们要添加一个新的 3 Kafka 将机器代理到当前kafka群集(附加的kafka机器是- kafka04/05/06 同样的Kafka版本– 0.1X , )
所以集群最终应该是: 6 Kafka 经纪人机器-
kafka01, kafka02 , kafka03 , kafka04 , kakfa05 , kafka05 3 zookeeper 服务器-
kafka01, kafka02 , kafka03 3 schema registry 服务- kafka01, kafka02 , kafka03 为了连接新的 3 Kafka 我们需要更改所有Kafka机器(旧Kafka机器和新Kafka机器)上的配置
我们不确定kafka代理中到底应该更改哪些配置文件,但据我所知,我们应该更改kafka和zookeeper设置,如下所示
我很乐意得到关于下列程序的意见/说明
编辑 server.properties 新Kafka经纪人档案- kafka04/05/06 ,并更改 broker.id 参数如下
Kafka04- broker.id=4 Kafka05- broker.id=5 Kafka06- broker.id=6 编辑所有kafka计算机上的server.properties- kafka01/02/03/04/05/06 并将以下参数更改为集群中的总节点数

offsets.topic.replication.factor=6
 transaction.state.log.replication.factor=6

在新的Kafka机器上- Kafka 04/05/06 编辑 server.properties 并更新参数-- zookeeper.connect 与zookeeper服务器的ip kafka01 , kafka02 , kafka03 例子

zookeeper.connect=10.10.10.1:2181,10.10.10.2:2181,10.10.10.3:2181

在Kafka的机器上- kafka 04/05/06 ,编辑文件- zookeeper.properties 作为
下列的

server.1=10.10.10.1:2888:3888
server.2=10.10.10.2:2888:3888
server.3=10.10.10.3:2888:3888

编辑文件- myid 存档于 Kafka 04/05/06 ,并更改参数 broker.id 如下所示
kafka04 设置:

broker.id=4

kafka05 设置:

broker.id=5

kafka06 设置:

broker.id=6

完成上述设置后,重新启动上的所有kafka brokers服务 kafka01/02/03/04/05/06 并重新启动上的zookeeper服务器 kafka01/02/03 并验证所有kafka服务和zookeeper服务已成功启动
参考信息-https://www2.microstrategy.com/producthelp/current/platformanalytics/en-us/content/add_kafka_node_to_kafka_cluster.htm

roejwanj

roejwanj1#

添加代理时,不需要更改现有代理的配置,也不需要重新启动它们。如果不添加新的zookeeper服务器,则zookeeper也是如此。
对于新的经纪人,你只需要设置一个不同的 broker.id 价值观。
我不建议将主题(包括内部)的复制因子增加到3以上。
一旦您的新代理启动,您可能需要重新平衡现有数据。有很多工具可以做到这一点,包括 kafka-reassign-partitions.sh 工具。《Kafka文件》有一节详细介绍了这一过程:https://kafka.apache.org/documentation/#basic_ops_cluster_expansion

相关问题