1.目标
今天,在这篇Kafka文章中,我们将看到Kafka Cluster Setup。这个Kafka集群教程为我们提供了一些设置Kafka集群的简单步骤。简而言之,为了实现Kafka服务的高可用性,我们需要在集群模式下设置Kafka。 因此,在此Kafka Cluster文档中,我们将学习Kafka多节点群集设置和Kafka多代理群集设置。此外,我们将看到Kafka Zookeeper群集设置。
那么,让我们开始Kafka群集设置。
设置Kafka集群的方法:Apache Kafka
2. Kafka群集设置
为了获得更好的Kafka服务可靠性和高可用性,我们需要在集群模式下设置Kafka。一开始:
- 从Apache的网站下载Kafka。另外,解压缩zip文件。
- 此外,制作提取的文件夹的两个副本,然后将后缀_1,_2,_3添加到这些文件夹名称。因此,如果我们提取的文件夹名称为kafka_2.11-1.1.0,您将拥有文件夹kafka_2.11-1.1.0_1,kafka_2.11-1.1.0_2,kafka_2.11-1.1.0_3。
- 转到kafka_2.11-1.1.0_1文件夹。
我们来讨论Apache Kafka Connect - 完整指南2018
3.设置Kafka群集的步骤
现在,按照几个步骤设置Kafka Cluster:
- 创建一个名为“logs”的文件夹。在此文件夹中,将存储所有Kafka日志。
- 然后,打开server.properties文件,进入config目录。在这里,我们将找到包含Kafka代理配置的文件。
- 此外,将broker.id设置为1.确保它是Kafka群集中代理的ID,因此对于每个代理,它必须是唯一的。
- 然后,取消注释侦听器的配置,并将其设置为PLAINTEXT:// localhost:9091。它说,对于连接请求,Kafka经纪人将监听端口9091。
- 此外,使用logs文件夹路径,设置我们在步骤1中创建的log.dirs配置。
- 另外,在zookeeper.connect配置中设置Apache Zookeeper地址。但是,如果Zookeeper在Kafka集群中运行,请确保将该地址作为逗号分隔列表,即:localhost:2181,localhost:2182。
基本上,这些是我们需要为开发环境设置的一些常规配置。
通过这种方式,我们的第一个Kafka代理配置就绪。现在,对于其他两个文件夹或代理,请按照相同的步骤进行以下更改。
让我们在Apache Kafka中修改Zookeeper的角色
- 现在,将broker.id分别更改为2和3,分别在步骤3中。
- 并且,还要在步骤4中分别更改用于9092和9093的端口。注意:可以提供任何可用的端口号。
因此,对于所有经纪人,我们的配置已准备就绪。现在,运行命令./bin/kafka-server-start.sh config / server.properties,转到每个Kafka文件夹的主目录。
- 执行命令(全部作为一行):
- ./bin/kafka-topics.sh --create --zookeeper localhost:2181 --rerelication -factor
- 3 --partitions 50 --topic演示
这里每个分区的复制因子为3,创建了50个分区。在定义复制因子为3时,对于分区,将有一个领导者和两个粉丝。此外,在将消息或记录发送给领导者时,它将被复制到粉丝中。
- 执行以下命令:
- ./bin/kafka-topics.sh --describe --topic Hello-Kafka --zookeeper localhost:2181
它有助于我们知道哪个代理是哪个分区的领导者或关注者。
- 输出:
主题:demoPartitionCount:50ReplicationFactor:3Configs:
主题:demoPartition:0Leader:2Replicas:2,3,1Isr:2,3,1
主题:demoPartition:1Leader:3Replicas:3,1,2Isr:3,1,2
主题:demoPartition: 2Leader:1Replicas:1,2,3Isr:1,2,3
主题:demoPartition:3Leader:2Replicas:2,1,3Isr:2,1,3
主题:demoPartition:4Leader:3Replicas:3,2,1Isr:3, 2,1
主题:demoPartition:5Leader:1Replicas:1,3,2Isr:1,3,2
主题:demoPartition:6Leader:2Replicas:2,3,1Isr:2,3,1
........................... .......................................
..................................................................
............................................. .....................
现在,我们可以看到Broker 2是领导者,分区0和Broker 3是分区1的领导者。而且,这里ISR指的是同步副本。
看看Apache Kafka术语和概念所以,这完全是关于Kafka Cluster的。希望你喜欢我们的解释
4。结论
因此,在这个Kafka群集设置教程中,我们学习了三个代理的Kafka群集设置。此外,我们讨论了Kafka多节点设置和Kafka - Zookeeper设置。但是,如果对Kafka群集设置有任何疑问,请在评论标签中询问。
另请参阅 - 如何创建Kafka客户端以供参考