一. Kafka-kraft架构

由于Kafka依赖于zookeeper集群做元数据管理,2.8版本以后kafka引入kraft代替zk,图为zk模式的架构和kraft模式的架构对比


左图为 Kafka 现有架构,元数据在 zookeeper 中,运行时动态选举 controller,由 controller 进行 Kafka 集群管理。右图为 kraft 模式架构,不再依赖 zookeeper 集群, 而是用三台 controller 节点代替 zookeeper,元数据保存在 controller 中,由 controller 直接进行 Kafka 集群管理。

这样做的好处有以下几个:

  • Kafka 不再依赖外部框架,而是能够独立运行;
  • controller 管理集群时,不再需要从 zookeeper 中先读取数据,集群性能上升;
  • 由于不依赖 zookeeper,集群扩展时不再受到 zookeeper 读写能力限制;

二. Kafka-kraft部署流程

1. 下载并安装2.8版本以后的kafka,并切换到config/kraft目录下

2. 修改server.properties文件

3. 生成存储目录唯一id

bin/kafka-storage.sh random-uuid

4.  用该id格式化kafka存储目录

bin/kafka-storage.sh format -t 6iKNOdeiSvaaypYCcWKsYw -c config/kraft/server.properties

5. 启动kafka

bin/kafka-server-start.sh -daemon config/kraft/server.properties

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐