当前位置: 首页 > news >正文

kafka kraft 集群搭建保姆级教学 包含几个踩坑点

一.为啥弃用zookeeper

kafka 弃用 ZooKeeper 而采用 KRaft 的主要原因是为了改进 Kafka 集群的可靠性和可管理性。

在传统的 Kafka 架构中,ZooKeeper 用于存储和管理集群的元数据、配置信息和状态。然而,使用 ZooKeeper 作为协调服务存在一些限制和挑战,例如:

  1. 单点故障:ZooKeeper 是一个独立的组件,如果 ZooKeeper 集群发生故障或不可用,将导致整个 Kafka 集群无法正常工作。

  2. 复杂性:维护和管理两个独立的系统(Kafka 和 ZooKeeper)增加了部署和操作的复杂性,同时需要处理两个系统之间的一致性和同步问题。

  3. 性能开销:Kafka 使用 ZooKeeper 来进行领导者选举和分区分配等操作,这增加了额外的网络开销和延迟,并对整体性能产生一定影响。

为了解决这些问题,Kafka 开始引入 KRaft 协议作为新的协调机制,并在后续版本中逐渐取代了对 ZooKeeper 的依赖。使用 KRaft 带来以下优势:

  1. 更好的可靠性:KRaft 提供了更强大的副本一致性保证,可以避免单点故障问题,并提供更高的可用性。

  2. 简化架构:通过将协调和元数据管理与 Kafka 自身集成,减少了对外部依赖的需求,简化了整体架构和部署。

  3. 改进的性能:KRaft 协议被优化用于 Kafka 的特定场景,可以提供更好的性能和更低的延迟。

  4. 更好的可管理性:集成协调机制的改进使得管理和维护 Kafka 集群变得更加容易和直观。

Kafka 从版本 2.8.0 开始,已经默认启用 KRaft 协议,并计划在未来的版本中完全移除对 ZooKeeper 的依赖。

需要注意的是,由于 KRaft 是一个相对较新的功能,如果你正在考虑迁移到 KRaft,请确保充分测试和评估,以确保其适合你的特定环境和需求。

二.下载所需资源以及环境配置

下载jdk17及kafka2.8.0以上版本 然后scala版本为2.13的要记住不然没有下面这个脚本

Red Hat build of OpenJDK Download | Red Hat Developer

apache-kafka-3.6.0安装包下载_开源镜像站-阿里云

kafka-storage.sh

然后配置jdk环境变量

三.修改配置文件

config/kraft/server.properties

How to easily install kafka without zookeeper | Aditya’s Blog

四.执行相关命令

4.1生成集群id

4.2初始化

4.3启动server

4.4创建topic来做测试

参考下面链接即可

How to easily install kafka without zookeeper | Aditya’s Blog

五.踩坑

踩的坑 
1.要下载scala为2.13版本的kafka
2.yX2YUxbmRBKzJCh1iww_Lg 这个是集群id 需要几台server保持一致
3.防火墙没打开要开下
firewall-cmd --permanent --zone=public --add-port=9092/tcp
firewall-cmd --permanent --zone=public --add-port=9093/tcp     
 

相关文章:

kafka kraft 集群搭建保姆级教学 包含几个踩坑点

一.为啥弃用zookeeper kafka 弃用 ZooKeeper 而采用 KRaft 的主要原因是为了改进 Kafka 集群的可靠性和可管理性。 在传统的 Kafka 架构中,ZooKeeper 用于存储和管理集群的元数据、配置信息和状态。然而,使用 ZooKeeper 作为协调服务存在一些限制和挑战…...

html实现360度产品预览(附源码)

文章目录 1.设计来源1.1 拖动汽车产品旋转1.2 汽车产品自动控制 2.效果和源码2.1 动态效果2.2 源代码 源码下载 作者:xcLeigh 文章地址:https://blog.csdn.net/weixin_43151418/article/details/134613931 html实现360度产品预览(附源码&…...

11-23 SSM4

Ajax 同步请求 :全局刷新的方式 -> synchronous请求 客户端发一个请求,服务器响应之后你客户端才能继续后续操作,请求二响应完之后才能发送后续的请求,依次类推 有点:服务器负载较小,但是由于服务器相应…...

CPU、GPU、TPU内存子系统架构

文章目录 CPU、GPU、TPU内存子系统架构概要CPUGPUTPU共同点和差异: CPU、GPU、TPU内存子系统架构 概要 Memory Subsystem Architecture,图源自TVM CPU CPU(中央处理器)的内存子系统:隐式管理 主内存(…...

R数据分析:集成学习方法之随机生存森林的原理和做法,实例解析

很久很久以前给大家写过决策树,非常简单明了的算法。今天给大家写随机(生存)森林,随机森林是集成了很多个决策数的集成模型。像随机森林这样将很多个基本学习器集合起来形成一个更加强大的学习器的这么一种集成思想还是非常好的。…...

transformers pipeline出现ConnectionResetError的解决方案

大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…...

代码随想录-刷题第九天

28. 找出字符串中第一个匹配项的下标 题目链接&#xff1a;28. 找出字符串中第一个匹配项的下标 思路1&#xff1a;先来写一下暴力解法。 时间复杂度O(n*m) class Solution {public int strStr(String haystack, String needle) {// 暴力解法先来一遍for (int i 0; i <…...

MySQL基本SQL语句(下)

MySQL基本SQL语句&#xff08;下&#xff09; 一、扩展常见的数据类型 1、回顾数据表的创建语法 基本语法&#xff1a; mysql> create table 数据表名称(字段名称1 字段类型 字段约束,字段名称2 字段类型 字段约束,...primary key(主键字段 > 不能为空、必须唯一) ) …...

【洛谷算法题】P5715-三位数排序【入门2分支结构】

&#x1f468;‍&#x1f4bb;博客主页&#xff1a;花无缺 欢迎 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! 本文由 花无缺 原创 收录于专栏 【洛谷算法题】 文章目录 【洛谷算法题】P5715-三位数排序【入门2分支结构】&#x1f30f;题目描述&#x1f30f;输入格式…...

上海亚商投顾:北证50指数大涨 逾百只北交所个股涨超10%

上海亚商投顾前言&#xff1a;无惧大盘涨跌&#xff0c;解密龙虎榜资金&#xff0c;跟踪一线游资和机构资金动向&#xff0c;识别短期热点和强势个股。 一.市场情绪 沪指11月24日震荡调整&#xff0c;深成指、创业板指盘中跌超1%。北证50指数大涨超6%&#xff0c;北交所个股持…...

设计模式—依赖倒置原则(DIP)

1.概念 依赖倒置原则&#xff08;Dependence Inversion Principle&#xff09;是程序要依赖于抽象接口&#xff0c;不要依赖于具体实现。简单的说就是要求对抽象进行编程&#xff0c;不要对实现进行编程&#xff0c;这样就降低了客户与实现模块间的耦合。 通俗的讲&#xff1…...

windows下docker环境搭建与运行实战

背景 学习docker使用&#xff0c;需要环境&#xff0c;今天主要的目标是在windows环境下安装docker环境。 为什么要这么搞&#xff0c;主要是企业内部服务器&#xff0c;都是跟公网隔离的&#xff0c;没有访问公网权限&#xff0c;所以镜像什么的&#xff0c;从公网拉取完全没…...

c# EF框架的增删改查操作

查询 /// <summary>/// 查询/// </summary>private void SQLLoad(){//linq查询&#xff0c;方法一//var UserInfoList from u in db.UserInfo//给个变量u&#xff0c;用来接收查询结果对象//select u;//查询结果对象 //db.UserInfo.Find(1);//依据主键查询,方法二…...

Element-UI Upload 手动上传文件的实现与优化

文章目录 引言第一部分&#xff1a;Element-UI Upload 基本用法1.1 安装 Element-UI1.2 使用 <el-upload> 组件 第二部分&#xff1a;手动上传文件2.1 手动触发上传2.2 手动上传时的文件处理 第三部分&#xff1a;性能优化3.1 并发上传3.2 文件上传限制 结语 &#x1f38…...

持续集成部署-k8s-配置与存储-存储类:动态创建NFS-PV案例

动态创建NFS-PV案例 1. 前置条件2. StorageClass 存储类的概念和使用3. RBAC 配置4. storageClass 配置5. 创建应用&#xff0c;测试 PVC 的自动配置6. 解决 PVC 为 Pending 状态问题7. 单独测试自动创建 PVC 1. 前置条件 这里使用 NFS 存储的方式&#xff0c;来演示动态创建 …...

jar包不挂断地运行命令

nohup java -jar wpfx.jar com.xiaobai.wpfx.WpfxApplication > ./demo.log 2>&1 &这段命令主要是用来在后台运行一个Java应用程序&#xff0c;并将输出日志写入到demo.log文件中。下面是每个参数的解释&#xff1a; nohup&#xff1a;表示不挂断地运行命令&…...

人工智能-优化算法和深度学习

优化和深度学习 对于深度学习问题&#xff0c;我们通常会先定义损失函数。一旦我们有了损失函数&#xff0c;我们就可以使用优化算法来尝试最小化损失。在优化中&#xff0c;损失函数通常被称为优化问题的目标函数。按照传统惯例&#xff0c;大多数优化算法都关注的是最小化。…...

【开源】基于Vue和SpringBoot的食品生产管理系统

项目编号&#xff1a; S 044 &#xff0c;文末获取源码。 \color{red}{项目编号&#xff1a;S044&#xff0c;文末获取源码。} 项目编号&#xff1a;S044&#xff0c;文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 加工厂管理模块2.2 客户管理模块2.3…...

洛谷P1049装箱问题 ————递归+剪枝+回溯

没没没没没没没没没错&#xff0c;又是一道简单的递归&#xff0c;只不过加了剪枝&#xff0c;我已经不想再多说&#xff0c;这道题写了一开始写了普通深搜&#xff0c;然后tle了一个点&#xff0c;后面改成剪枝&#xff0c;就ac了&#xff0c;虽然数据很水&#xff0c;但是不妨…...

C++通讯录管理系统

目录 系统需求 1、 创建项目 2、 菜单功能设计 3、 退出功能设计 4、 添加联系人功能设计 4.1 设计联系人结构体 4.2 设计通讯录结构体 4.3 在main函数中创建通讯录 4.4 封装添加联系人函数 4.5 添加联系人功能测试 5、 显示联系人功能设计 5.1 封装显示…...

数据库编程实战:从递归查询到异构数据迁移的完整解决方案

1. 递归查询实战&#xff1a;破解课程依赖关系网 第一次接触WITH RECURSIVE语法时&#xff0c;我正为在线教育平台设计课程推荐系统。平台里有门《机器学习入门》课程&#xff0c;竟然要求先修5门不同领域的基础课&#xff0c;而这些基础课本身又存在复杂的先修关系。传统JOIN查…...

JLink 添加国产芯片手把手教程(雅特力 + 华大)

大家好,我是嵌入式学习菌,一名在上海嘉定打拼的嵌入式开发工程师。2023 年 7 月硕士毕业,现深耕嵌入式软件开发,日常和 MCU、调试器打交道。现在项目都在做国产 MCU 替代,雅特力 AT32、华大 HC32 用得越来越多,但 JLink 默认不自带这两家芯片支持,每次都要手动添加。 今…...

西安 GEO 服务商有哪些?在到店引流方案中提供哪些关键数据和支持?

在西安&#xff0c;GEO服务商的有效选择直接影响到到店引流方案的实施效果。这些服务商能够提供关键数据支持&#xff0c;比如曝光量、咨询量和转化率&#xff0c;这些数据对于企业评估市场推广效果和优化策略至关重要。企业需要关注服务商的数据透明度&#xff0c;确保其反馈的…...

告别Camera2 API的折腾:用UVCAndroid库5分钟搞定安卓外接USB摄像头开发

安卓USB摄像头开发革命&#xff1a;UVCAndroid库极简集成指南 在安卓生态中&#xff0c;外接摄像头的开发一直是个令人头疼的问题。传统Camera2 API的复杂性让不少开发者望而却步——从设备枚举到权限处理&#xff0c;从格式转换到预览控制&#xff0c;每个环节都可能成为项目延…...

RVC WebUI汉化与本地化教程:中文字体支持与界面语言切换

RVC WebUI汉化与本地化教程&#xff1a;中文字体支持与界面语言切换 1. 引言&#xff1a;为什么需要汉化与本地化&#xff1f; 如果你已经成功部署了RVC WebUI&#xff0c;准备开始训练自己的AI翻唱模型&#xff0c;可能会发现一个不大不小的问题&#xff1a;界面全是英文的。…...

CAGE vs RNA-seq:两种转录组测序技术的深度对比

在选择转录组测序方案时&#xff0c;你是否也在 CAGE 和 RNA-seq 之间犹豫&#xff1f;本文带你深入了解两种技术的核心差异与各自优势。转录组测序是功能基因组学研究的核心技术。在众多技术中&#xff0c;CAGE&#xff08;Cap Analysis of Gene Expression&#xff09;和RNA-…...

深入解析rewriteBatchedStatements:如何通过SQL重写提升MySQL批处理性能

1. 揭开rewriteBatchedStatements的神秘面纱 第一次听说rewriteBatchedStatements这个参数时&#xff0c;我正被一个批量导入数据的性能问题折磨得焦头烂额。当时我们的系统需要每小时处理数十万条用户行为数据&#xff0c;但MySQL的插入速度始终上不去。直到某天深夜调试时&am…...

(十五)32天GPU测试从入门到精通-图像分类模型性能对比day13

目录 引言主流图像分类模型模型架构对比精度 - 速度权衡不同 GPU 型号性能对比选型建议实战&#xff1a;模型对比 Benchmark总结与建议 引言 在实际 AI 项目中&#xff0c;选择合适的模型往往比优化单个模型更重要。不同的图像分类模型在精度、速度、资源消耗上有显著差异。 …...

【Prometheus】实战指南:使用basic_auth加固监控数据访问

1. 为什么需要为Prometheus添加basic_auth认证 最近几年&#xff0c;随着企业数字化转型的加速&#xff0c;监控系统已经成为IT基础设施中不可或缺的一部分。Prometheus作为云原生时代最流行的监控解决方案之一&#xff0c;被广泛应用于各类生产环境。但很多团队在部署Promethe…...

AI时代新型的项目管理应该是什么样的?侣

AI训练存储选型的演进路线 第一阶段&#xff1a;单机直连时代 早期的深度学习数据集较小&#xff0c;模型训练通常在单台服务器或单张GPU卡上完成。此时直接将数据存储在训练机器的本地NVMe SSD/HDD上。 其优势在于IO延迟最低&#xff0c;吞吐量极高&#xff0c;也就是“数据离…...