[转帖]【Kafka】(二)Kafka去Zookeeper化,kraft模式搭建
1.简介
由于zookeeper慢慢的成了kafka的瓶颈,kafka提出了去zookeeper化的概念,并在2.8版本之后版本都包含了kraft模式,也就是不需要使用zookeeper了,目前这种模式还不成熟,企业中使用kafka还是推荐使用zk+kafka的方式,否则可能会出现意想不到的错误。
2.环境准备
准备2台centos虚拟机以及kafka3.0的压缩包即可,上一节中,已经介绍了如何下载以及如何安装centos虚拟机了。
3.开始搭建
3.1 修改配置文件
解压kafka3.0到/usr/local下,我这里将它更名为kafka2

这里修改的配置文件和之前的配置文件就有一点不同了,需要修改kafka目录下config/kraft/server.properties文件

编辑server.properties文件
vi server.properties
需要修改的参数有:
# 说明本台kafka的角色,是broker还是controller,controller相当于之前的zk
process.roles=broker,controller
# 集群中的唯一ID,不同机器的kafka这里要设置成不一样的
node.id=1
# 集群配置,格式为nodeId@IP:端口,我这里用2台做集群,中间用逗号分隔
controller.quorum.voters=1@192.168.181.128:9093,2@192.168.181.129:9093
listeners=PLAINTEXT://192.168.181.128:9092,CONTROLLER://192.168.181.128:9093
# kakfa机器注册的IP
advertised.listeners=PLAINTEXT://192.168.181.128:9092
# 数据存储的地址
log.dirs=/usr/local/kafka2/data
保存退出,将配置好的kafka发送到另一台机器上
scp -r /usr/local/kafka2 root@192.168.181.129:/usr/local/
将第二台机器的node.id还有注册地址改一下
node.id=2
listeners=PLAINTEXT://192.168.181.129:9092,CONTROLLER://192.168.181.129:9093
advertised.listeners=PLAINTEXT://192.168.181.129:9092
先前我们已经把9092端口打开了,这里我们将9093端口也打开一下,用作kafka之间的通讯
firewall-cmd --zone=public --add-port=9093/tcp --permanent
3.2 生成集群唯一ID
kraft模式需要我们生成集群的唯一ID,用来配置集群环境,kafka给我们提供了一个工具kafka-storage.sh
/usr/local/kafka2/bin/kafka-storage.sh random-uuid

利用该UUID配置一下我们的集群环境(注意每个kafka都要运行一下,要使用这同一个UUID)
/usr/local/kafka2/bin/kafka-storage.sh format -t e32o2jB4SwGFQYn18rauDA -c /usr/local/kafka2/config/kraft/server.properties
可以看到,这么做的目的,是将我们的UUID写到配置文件当中

3.3 启动kafka集群
/usr/local/kafka2/bin/kafka-server-start.sh -daemon /usr/local/kafka2/config/kraft/server.properties
3.4 验证一下kafka有没有搭建成功
往第一台borker里面新建一个主题first,发现第二台机器也可以看到这个主题,集群搭建成功

[转帖]【Kafka】(二)Kafka去Zookeeper化,kraft模式搭建的更多相关文章
- Baccarat是如何运用去中心化治理模式的?
区块链的出现,让大家看到了去中心化的可能.去中心化的数字资产从最初的默默无闻,一路起起伏伏发展了十年,逐渐成为了大众认可的价值存储方式.去中心化的金融,使数字资产的生态建设者意识到,即使没有中心化的金 ...
- 3、zookeeper 集群模式搭建
服务器 1:192.168.1.81 端口:2181.2881.3881 服务器 2:192.168.1.82 端口:2182.2882.3882 服务器 3:192.168.1.83 端口:2 ...
- ImCash:币安下架BSV之辩:规则、中立与去中心化
一种看法是:一个引用价格数据和执行交易的加密货币交易所,其业务决策往往是在链外发生的,不受制于严格的.类似于准宪法的链上规则的约束,加密货币交易所可以拒绝任何人喜欢的价格和交易,而且这样做并不会损害底 ...
- 去中心化存储项目终极指南 | Filecoin, Storj 和 PPIO 项目异同
Filecoin,Storj 以及 PPIO 这三个存储公链的设计思路是不一样的,没有优劣之分,写这篇文章也并不是为了争论各项目的好坏对错.去中心化存储是一个长期商业赛道,不同团队在同一个赛道上往不同 ...
- kafka内置的zookeeper
kafka 很多说不需要安装zk的是因为他们都使用了kafka自带的zk 至于kafka为什么使用zk,你首先要知道zk的作用, 作为去中心化的集群模式. 需要要消费者知道现在那些生产者(对于消费者而 ...
- kafka集群和zookeeper集群的部署,kafka的java代码示例
来自:http://doc.okbase.net/QING____/archive/19447.html 也可参考: http://blog.csdn.net/21aspnet/article/det ...
- Kafka学习之二 Kafka安装和使用
部署环境Linux(Centos 6.5),JDK 1.8.0,zookeeper-3.4.12,kafka_2.11-2.0.0. 1. 单机环境 官方建议使用JDK 1.8版本,因此本文使 ...
- kafka系列二:多节点分布式集群搭建
上一篇分享了单节点伪分布式集群搭建方法,本篇来分享一下多节点分布式集群搭建方法.多节点分布式集群结构如下图所示: 为了方便查阅,本篇将和上一篇一样从零开始一步一步进行集群搭建. 一.安装Jdk 具体安 ...
- CentOS7 搭建Kafka(一)zookeeper篇
CentOS7 搭建Kafka(一)zookeeper篇 近几年当红小生Kafka备受各路英雄好汉追捧,一点不比老前辈RabbitMQ和ActiveMQ差,因为流行,所以你就得学啊:我这么懒,肯定是不 ...
- [转帖]面试问Kafka,这一篇全搞定
面试问Kafka,这一篇全搞定 https://os.51cto.com/art/201911/606207.htm 图片来自 Pexels Kafka 基础 消息系统的作用 大部分小伙伴应该都清楚, ...
随机推荐
- 云小课丨SA基线检查:给云服务来一次全面“体检”
摘要:随着企业上云进程的加快,由于云服务配置不合理.不合规等引发的安全风险与日俱增.如果没有加以重视并做及时的诊断处置,将会对企业云上业务带来巨大的安全隐患. 本文分享自华为云社区<云小课丨安全 ...
- 应用开发专家一席谈:开发低代码,上手低门槛,AppCube使能Citizen Developer,人人都是开发者
摘要:让不确定因子变为确定性因子,把复杂留给平台,简单留给开发者,是软件开发效率改进一直努力的方向,也是低代码理念的来源. 本文分享自华为云社区<应用开发专家一席谈:开发低代码,上手低门槛,Ap ...
- docker中安装的mysql无法远程连接问题解决
背景: 在ubuntu1804的docker中安装了mysql,版本是5.7.34.因为有复杂的数据要插入到数据库中,所以从宿主机通过pycharm和DBeaver连接,但是一直报错: Can not ...
- .NET Moq mock internal类型
问题 Can not create proxy for type xxx because type xxx is not accessible. Make it public, or internal ...
- 叫板GPT-4的Gemini,我做了一个聊天网页,可图片输入,附教程
先看效果: 简介 Gemini 是谷歌研发的最新一代大语言模型,目前有三个版本,被称为中杯.大杯.超大杯,Gemini Ultra 号称可与GPT-4一较高低: Gemini Nano(预览访问) 为 ...
- 【每日一题】39. Contest(树状数组 / 容斥分治)
补题链接:Here 算法涉及:树状数组.CDQ分治 n支队伍一共参加了三场比赛. 一支队伍x认为自己比另一支队伍y强当且仅当x在至少一场比赛中比y的排名高. 求有多少组(x,y),使得x自己觉得比y强 ...
- SpringBoot 配置类解析
本文首发于 vivo互联网技术 微信公众号链接:https://mp.weixin.qq.com/s/NvPO5-FWLiOlrsOf4wLaJA作者:Li Wanghong SpringBoot作为 ...
- SCA技术进阶系列(三):浅谈二进制SCA在数字供应链安全体系中的应用
数字经济时代,随着开源应用软件开发方式的使用度越来越高,开源组件逐渐成为软件开发的核心基础设施,但同时也带来了一些风险和安全隐患.为了解决这些问题,二进制软件成分分析技术成为了一种有效的手段之一.通过 ...
- 黑池舞蹈节banner
- C#使用正则表达式检查字符串中重复出现的词
private void button1_Click(object sender, EventArgs e) { MatchCollection matches =//使用正则表达式查找重复出现单词的 ...