Kafka 3.5.1 基于kraft 集群搭建
浏览量:33
Apache 软件基金会发布了包含许多新特性和改进的 Kafka 3.3.1。这是第一个标志着可以在生产环境中使用 KRaft(Kafka Raft)共识协议的版本。在几年的开发过程中,它先是在 Kafka 2.8 早期访问版本中发布,然后又在 Kafka 3.0 预览版本中发布。
KRaft 是一种共识协议,可以直接在 Kafka 中管理元数据。元数据的管理被整合到了 Kafka 当中,而不需要使用像 ZooKeeper 这样的第三方工具,这大大简化了 Kafka 的架构。这种新的 KRaft 模式提高了分区的可伸缩性和弹性,同时简化了 Kafka 的部署,现在可以不依赖 ZooKeeper 单独部署 Kafka 了。
KRaft 使用了 Raft 共识算法的一种基于事件的变体,因此得名。
二、集群安装

2.2 集群安装
2.2.1 下载并解压
$ wget https://downloads.apache.org/kafka/3.5.1/kafka_2.13-3.5.1.tgz
2.2.2 修改配置文件
$ cd /opt/kafka_2.13-3.5.1/config/kraft [root@k8s-master1 kraft]# grep -Ev "^#|^$" server.properties $ vi server.properties process.roles=broker,controller node.id=1 controller.quorum.voters=1@192.168.1.215:9093,2@192.168.1.216:9093,3@192.168.1.217:9093 listeners=PLAINTEXT://:9092,CONTROLLER://:9093 inter.broker.listener.name=PLAINTEXT advertised.listeners=PLAINTEXT://192.168.1.215:9092 controller.listener.names=CONTROLLER listener.security.protocol.map=CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT,SSL:SSL,SASL_PLAINTEXT:SASL_PLAINTEXT,SASL_SSL:SASL_SSL num.network.threads=3 num.io.threads=8 socket.send.buffer.bytes=102400 socket.receive.buffer.bytes=102400 socket.request.max.bytes=104857600 #数据存储位置 log.dirs=/opt/kafka_2.13-3.5.1/logs/kraft-combined-logs num.partitions=1 num.recovery.threads.per.data.dir=1 offsets.topic.replication.factor=1 transaction.state.log.replication.factor=1 transaction.state.log.min.isr=1 log.retention.hours=168 log.segment.bytes=1073741824 log.retention.check.interval.ms=300000
注意:集群内主机配置文件都需要修改,差异如下
# 节点ID,自己设置每个节点的值要不同 node.id=1 # 使用IP端口,每个节点填写自己节点的IP advertised.listeners=PLAINTEXT://192.168.1.215:9092
2.2.3 初始化集群
在其中一台服务器上执行下面命令生成一个uuid
$ sh bin/kafka-storage.sh random-uuid 16K1urtBT6iLRg_L77bY9Q
用该uuid格式化kafka存储目录,集群内服务器都要执行以下命令
$ sh bin/kafka-storage.sh format -t 16K1urtBT6iLRg_L77bY9Q -c config/kraft/server.properties
2.2.3 启动集群
$ sh bin/kafka-server-start.sh -daemon config/kraft/server.properties
$ sh bin/kafka-topics.sh --bootstrap-server localhost:9092 --create --topic test --partitions 3 --replication-factor 3 Created topic test.
$ sh bin/kafka-topics.sh --bootstrap-server localhost:9092 --describe test Topic: test TopicId: GtjDnrWsSza0bHufc3pIRQ PartitionCount: 3 ReplicationFactor: 3 Configs: segment.bytes=1073741824 Topic: test Partition: 0 Leader: 1 Replicas: 1,2,3 Isr: 1,2,3 Topic: test Partition: 1 Leader: 2 Replicas: 2,3,1 Isr: 2,3,1 Topic: test Partition: 2 Leader: 3 Replicas: 3,1,2 Isr: 3,1,2

神回复
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。