新闻资讯

掌握最新资讯,了解关于我们的最新动态!
您当前位置首页 > 新闻资讯 > IDC圈

kafka3.1集群搭建(kraft模式)方法

更新时间:2024-12-29 08:48

下载

官网下载

上传服务器并解压

这里我在node2机器上传到自己的目录下/home/guohao

cd /home/guohao
#解压
tar -zxvf kafka_2.13-3.1.0.tgz
cd /home/guohao/kafka_2.13-3.1.0/

配置server.properties

cd config/kraft/
vi server.properties
# 节点角色
process.roles=broker,controller
 
#节点ID,和节点所承担的角色想关联
node.id=1
 
# 集群地址
controller.quorum.voters=1@192.168.0.113:9093,2@192.168.0.114:9093,3@192.168.0.115:9093
 
#本机节点
listeners=PLAINTEXT://192.168.0.113:9092,CONTROLLER://192.168.0.113:9093
 
# 这里我修改了日志文件的路径,默认是在/tmp目录下的
log.dirs=/home/guohao/kafka_2.13-3.1.0/kraftlog/kraft-combined-logs

Process.Roles

每个Kafka服务器现在都有一个新的配置项,叫做Process.Roles, 这个参数可以有以下值:

  • 如果Process.Roles = Broker, 服务器在KRaft模式中充当 Broker。

  • 如果Process.Roles = Controller, 服务器在KRaft模式下充当 Controller。

  • 如果Process.Roles = Broker,Controller,服务器在KRaft模式中同时充当 Broker 和Controller。

  • 如果process.roles 没有设置。那么集群就假定是运行在ZooKeeper模式下。

如前所述,目前不能在不重新格式化目录的情况下在ZooKeeper模式和KRaft模式之间来回转换。同时充当Broker和Controller的节点称为“组合”节点。

对于简单的场景,组合节点更容易运行和部署,可以避免多进程运行时,JVM带来的相关的固定内存开销。关键的缺点是,控制器将较少地与系统的其余部分隔离。例如,如果代理上的活动导致内存不足,则服务器的控制器部分不会与该OOM条件隔离。

Quorum Voters

系统中的所有节点都必须设置 `controller.quorum.voters` 配置。这个配置标识有哪些节点是 Quorum 的投票者节点。所有想成为控制器的节点都需要包含在这个配置里面。这类似于在使用ZooKeeper时,使用ZooKeeper.connect配置时必须包含所有的ZooKeeper服务器。

然而,与ZooKeeper配置不同的是,`controller.quorum.voters` 配置需要包含每个节点的id。格式为: id1@host1:port1,id2@host2:port2。

分发并配置

cd /home/guohao
#解压
tar -zxvf kafka_2.13-3.1.0.tgz
cd /home/guohao/kafka_2.13-3.1.0/

#node3 server.properties
# 节点角色
process.roles=broker,controller
 
#节点ID,和节点所承担的角色想关联
node.id=2
 
# 集群地址
controller.quorum.voters=1@192.168.0.113:9093,2@192.168.0.114:9093,3@192.168.0.115:9093
 
#本机节点
listeners=PLAINTEXT://192.168.0.114:9092,CONTROLLER://192.168.0.114:9093
 
# 这里我修改了日志文件的路径,默认是在/tmp目录下的
log.dirs=/home/guohao/kafka_2.13-3.1.0/kraftlog/kraft-combined-logs

#node4 server.properties
# 节点角色
process.roles=broker,controller
 
#节点ID,和节点所承担的角色想关联
node.id=3
 
# 集群地址
controller.quorum.voters=1@192.168.0.113:9093,2@192.168.0.114:9093,3@192.168.0.115:9093
 
#本机节点
listeners=PLAINTEXT://192.168.0.115:9092,CONTROLLER://192.168.0.115:9093
 
# 这里我修改了日志文件的路径,默认是在/tmp目录下的
log.dirs=/home/guohao/kafka_2.13-3.1.0/kraftlog/kraft-combined-logs

运行KRaft集群


成为冠星云会员,享受出众的上云实践机会和周到的尊贵服务!

立即注册