[转帖]【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 基础 消息系统的作用 大部分小伙伴应该都清楚, ...
随机推荐
- Java中一些常用的方法实现(更新中)
一.数组 1.indexOf int targetIndex = indexOf(arr, targetValue); public static int indexOf(int[] arr,int ...
- CodeForces 1459C 数论 GCD
CodeForces 1459C 数论 GCD 原题链接 题意 首先给出n个数 之后给出m个数,每次问之前的n个数加上当前的这个数之后,总体的gcd是多少,也就是答案需要求出m个总体的gcd 思路 因 ...
- Java 设置PDF文档过期时间(有效期)
有些文档具有一定时效性,需在规定时间段内才可阅读查看,针对此类文档,需要设置文档的过期日期.时间等.下面以Java示例演示为例如何给PDF文档设置过期时间.需使用PDF类库, Free Spire.P ...
- 使用Terraform部署华为云和kubernetes资源
本文分享自华为云社区<使用Terraform部署华为云和kubernetes资源>,作者: 可以交个朋友. Terraform概述 Terraform 是由 HashiCorp 创建的开源 ...
- 云原生势不可挡,华为云GaussDB加速企业数字化转型
4月8日,华为云TechWave全球技术峰会在深圳成功举办,其中,在围绕"数据使能,驱动业务增长"为主题的数据使能分论坛会上,华为云GaussDB技术专家胡彦军现场分享了云原生数据 ...
- 一文搞定Matplotlib 各个示例丨建议收藏
摘要:Matplotlib 是 Python 的绘图库. 它可与 NumPy 一起使用 ,Matplotlib也是深度学习的常用绘图库,主要是将训练的成果进行图形化,因为这样更直观,更方便发现训练中的 ...
- iOS分发证书过期或手动吊销,会影响App的下架吗?
iOS distribution发布证书过期或者被手动revoke了app会被下架吗? 在距离distribution 证书过期一个月(或被手动revoke了)的时候会受到apple的邮件 编辑 ...
- Codeforces Round 913 (Div. 3)
CF1907总结 A. Rook 题面翻译 给出车在国际象棋棋盘中的位置,输出其可到达的坐标(不必在意顺序). 车可以横着或竖着走任意格数. 分析 题意明了,输出车所在行和列所有格子的序号(除车所在位 ...
- QML笔记(四)之QML鼠标事件
QML笔记(四)之QML鼠标事件
- CH0304 IncDec Sequence (差分)
题目链接: https://ac.nowcoder.com/acm/contest/999/B 思路:(见图中解释) AC代码: #include<bits/stdc++.h> using ...