当前位置:   article > 正文

Kafka2.8无Zookeeper模式下集群部署_linux安装kafka2.8集群无需zookeeper配置

linux安装kafka2.8集群无需zookeeper配置

一:介绍

kafka在Ralf协议上实现了KRalf,并用此替代了Zookeeper,目前2.8可以开始使用无Zookeeper模式,但官方不建议生产用。具体的协议原理以及说明请自行Baidu或者Google

二:单机部署

下载kafka2.8,解压。可以看到config里面有kraft文件目录。kraft目录下有三个配置文件以及一个readme.md,查看readme.md,也就是你目前能看到的官方给出的无zookeeper模式的配置方式和教程。如果你按照这个部署单节点,看前半部分就够了,很简单。但后面的一堆坑,而且你在网上找不到教程。

单机部署只需要

  1. ./bin/kafka-storage.sh random-uuid 生成一个集群ID
  2. ./bin/kafka-storage.sh format -t <uuid> -c ./config/kraft/server.properties 把集群ID同所使用的配置文件生成/tmp/kraft-combined-logs目录
  3. ./bin/kafka-server-start.sh -daemon ./config/kraft/server.properties 启动

接下来你就可以使用单节点的kafka了

三:集群部署

我写这篇博客的时候,4月29号,网上找不到教程,都是自己根据官方说明摸索的 。

首先,你还是要先生成一个ID,然后确保,这个很重要,确保、/tmp/kraft-combined-logs这个目录是空的。不然,不管你怎么配置集群,这个目录下存的都是你之前配置的元数据。

然后,你先配置/config/kraft/server.properties 文件,这三个文件要根据你集群来配。如果你有三个准备用来当控制器的节点,你必须在controller.quorum.voters上配置这三个控制器

例如:

controller.quorum.voters=1@master:9093,2@slave1:9093,3@slave2:9093

这样,这三个节点就可以用来竞争当控制器,可以容忍一个故障。

     还有一个配置 node.id,这个按节点顺序配就行。

     所以我在server.properties 的 “Server Basic”配置如下 

  1. ############################# Server Basics #############################
  2. # The role of this server. Setting this puts us in KRaft mode
  3. process.roles=broker,controller
  4. # The node id associated with this instance's roles
  5. node.id=1
  6. # The connect string for the controller quorum
  7. controller.quorum.voters=1@master:9093,2@slave1:9093,3@slave2:9093

这个配置的意思就是,我有三个节点用来竞争控制器,并且存到这个序列上,但同时该节点又可以用来充当代理,也就是kafka队列分区可以部署的位置。其余两个配置节点只是node.id不一样而已。如果你有多个节点,并且想三个节点只用来充当控制器,不做代理,控制器可以仅仅在controller.properties下配置,然后其余只做代理的节点配置broker.properties,不变的是每个配置的controller.quorum.voters都是一样的。最后你先用./bin/kafka-storage.sh format -t <uuid> -c这个,指定你的配置文件生成元数据, 最后你在节点上启动的配置参数选你配置的文件就可以了。

      我用docker容器部署也完全OK,自己搞了给镜像,需要的可以联系我。

 

 

 

 

 

 

 

 

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/464416
推荐阅读
相关标签
  

闽ICP备14008679号