Kafka第三章:新旧节点更替

news/2024/5/18 15:04:50/文章来源:https://blog.csdn.net/weixin_50835854/article/details/129130510

系列文章目录

Kafka第一章:环境搭建
Kafka第二章:生产者案例
Kafka第三章:新旧节点更替


文章目录

  • 系列文章目录
  • 前言
  • 一、创建新节点
    • 1.克隆节点
    • 2.修改Kafka配置
  • 二、添加新节点
    • 1.启动集群
    • 2.启动105的Kafka
    • 3.创建一个要均衡的主题
    • 4.生成一个负载均衡的计划
    • 5.创建副本存储计划
    • 6.执行副本存储计划
  • 三、去除旧节点
    • 1.创建执行计划
    • 2.修改副本存储计划
    • 3.执行副本存储计划
    • 查看存储节点
  • 总结


前言

这次博客,我们学习一下Kafka新旧节点的更替,比如一些硬件老化或者更新换代,如何添加新节点,如何去除旧节点


一、创建新节点

1.克隆节点

我们用hadoop104直接克隆一个hadoop105,具体方法可以看我另一个博客。hadoop环境搭建,克隆完成之后修改IP和用户名,然后重启虚拟机即可。

2.修改Kafka配置

修改 haodoop105 中 kafka 的 broker.id 为 3。

vim config/server.properties

在这里插入图片描述删除 hadoop105 中 kafka 下的 datas 和 logs

rm -rf datas/ logs/

在这里插入图片描述

二、添加新节点

1.启动集群

在这里插入图片描述

2.启动105的Kafka

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

在这里插入图片描述

3.创建一个要均衡的主题

这个操作在102上进行

vim topics-to-move.json
{"topics": [{"topic": "first"}],"version": 1
}

4.生成一个负载均衡的计划

注意–broker-list指定四个几点

bin/kafka-reassign-partitions.sh --bootstrap-server hadoop102:9092 --topics-to-move-json-file topics-to-move.json --broker-list "0,1,2,3" --generate

在这里插入图片描述

这是修改前后,三个分区内容的存储节点的ID,可以明显看到新节点已经加入。

5.创建副本存储计划

 vim increase-replication-factor.json
#这里是刚才生成的新分区信息,复制你自己的
{"version":1,"partitions":[{"topic":"first","partition":0,"replicas":[2,0,1],"log_dirs":["any","any","any"]},{"topic":"first","partition":1,"replicas":[3,1,2],"log_dirs":["any","any","any"]},{"topic":"first","partition":2,"replicas":[0,2,3],"log_dirs":["any","any","any"]}]}

6.执行副本存储计划

bin/kafka-reassign-partitions.sh --bootstrap-server hadoop102:9092 --reassignment-json-file increase-replication-factor.json --execute

在这里插入图片描述
我们可以查看查看一下topic信息。
在这里插入图片描述

三、去除旧节点

理论上直接把就节点直接干掉就行,但是不建议,就好像你电脑关机,会使用关机按钮,而不是直接拽电源。
去除方法和添加方法类似,我们只需要修改之前的执行计划,其他几乎一样。

1.创建执行计划

我们将这里的–broker-list 换成去除节点后的ID即可。

bin/kafka-reassign-partitions.sh --bootstrap-server hadoop102:9092 --topics-to-move-json-file topics-to-move.json --broker-list "0,1,2" --generate

在这里插入图片描述

2.修改副本存储计划

换成新的

 vim increase-replication-factor.json
{"version":1,"partitions":[{"topic":"first","partition":0,"replicas":[1,0,2],"log_dirs":["any","any","any"]},{"topic":"first","partition":1,"replicas":[2,1,0],"log_dirs":["any","any","any"]},{"topic":"first","partition":2,"replicas":[0,2,1],"log_dirs":["any","any","any"]}]}

3.执行副本存储计划

bin/kafka-reassign-partitions.sh --bootstrap-server hadoop102:9092 --reassignment-json-file increase-replication-factor.json --execute

在这里插入图片描述

查看存储节点

在这里插入图片描述
已经去除了目标节点。


总结

这一次,Kafka新旧节点更换,暂时就到这里。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_260666.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++项目——高并发内存池(1)--介绍及定长内存池

1.什么是内存池 1.1 池化技术 将程序中需要经常使用的核心资源先申请出来,放在一个池内,由程序自己管理,这样可以提高资源的使用效率,也可以保证本程序占有的资源数量。 比如之前博文实现的线程池,就是预先的申请出…

第四次作业

学生表:Student (Sno, Sname, Ssex , Sage, Sdept)学号,姓名,性别,年龄,所在系 Sno为主键课程表:Course (Cno, Cname)课程号,课程名 Cno为主键学生选课表:SC (Sno, Cno, Score)学号&…

面试经常被问悲观锁和乐观锁?什么是cas?来我花3分钟时间告诉你

锁大家都知道吧,多线程访问资源会存在竞争,那么就需要加锁进而让多个线程一个一个访问。 比如有一个房间,一次只能进一个人,现在有十个人都想进去怎么办? 对,加锁。拿一把钥匙,谁抢到钥匙谁就…

微服务 ModuleFederationPlugin Vue项目体验

随着公司项目的模块越来越多,每次打包后的项目都非常大,而且每修改一个小的模块,都会将整个项目打包,会非常的麻烦,随着前端的发展,微服务的出现,很好的解决了项目庞大的问题,而且每…

大数据处理学习笔记1.4 掌握Scala运算符

文章目录零、本讲学习目标一、运算符等价于方法(一)运算符即方法(二)方法即运算符1、单参方法2、多参方法3、无参方法二、Scala运算符(一)运算符分类表(二)Scala与Java运算符比较三、…

I.MX6ULL_Linux_系统篇(17) uboot分析-启动linux

bootz 启动 Linux 内核 images 全局变量 不管是 bootz 还是 bootm 命令,在启动 Linux 内核的时候都会用到一个重要的全局变量:images, images 在文件 cmd/bootm.c 中有如下定义: images 是 bootm_headers_t 类型的全局变量&…

03- 通过OpenCV进行图像变换 (OpenCV基础) (机器视觉)

知识重点 resize(src, dsize[, dst[, fx[, fy[, interpolation]]]]) 图像的放大与缩小, 变形 flip(src, flipCode) 图像的翻转 rotate(img, rotateCode) 图像的旋转 warpAffine(src, M, dsize, flags, mode, value) 仿射变换是图像旋转, 缩放, 平移的总称.具体的做法是通…

Windows10神州网信政府版麦克风、摄像头的使用

Windows10神州网信政府版默认麦克风摄像头是禁用状态,此禁用状态符合版本规定。 在录课和直播过程中,如果需要使用麦克风和摄像头的功能,可以这样更改: 1、鼠标右键点击屏幕左下角的开始菜单图标,选择windows中的“运…

跨时钟域 单脉冲 脉冲信号同步问题——快到慢(1)

引言 FPGA设计或者ASIC设计中经常存在多个时钟域,那么这些时钟域之间脉冲信号的同步该如何进行设计?快时钟域到慢时钟域的脉冲信号同步与慢时钟域信号到快时钟域信号的同步是不一样的。 本文先给出快时钟域到慢时钟域脉冲信号同步的方法之一&#xff…

C++设计模式(17)——备忘录模式

亦称: 快照、Snapshot、Memento 意图 备忘录模式是一种行为设计模式, 允许在不暴露对象实现细节的情况下保存和恢复对象之前的状态。 问题 假如你正在开发一款文字编辑器应用程序。 除了简单的文字编辑功能外, 编辑器中还要有设置文本格…

覃小龙34岁生日记:结合趋势,发挥优势,方能百战不殆

覃小龙34岁生日记:结合趋势,发挥优势,方能百战不殆!2023-2-20星期一 覃小龙2023年2月17日,是我34岁生日,1989年出生的我,一晃眼,已经走过第34个年头了!从2016年创业到今天&#xff0…

【Spark分布式内存计算框架——Spark SQL】13. 自定义UDF函数

第七章 自定义UDF函数 无论Hive还是SparkSQL分析处理数据时,往往需要使用函数,SparkSQL模块本身自带很多实现公共功能的函数,在org.apache.spark.sql.functions中。SparkSQL与Hive一样支持定义函数:UDF和UDAF,尤其是U…

C++进阶:二叉搜索树

文章目录1 二叉搜索树概念2 二叉搜索树的实现2.1 结点的定义2.2 二叉搜索树的插入2.2 二叉搜索树的查找2.3 二叉搜索树的删除2.4 二叉搜索树的默认成员函数2.4.1 拷贝构造2.4.2 析构函数2.4.3 赋值重载3 二叉搜索树的应用3.1 k模型3.2 kv模型4 二叉搜索树的性能分析1 二叉搜索树…

Nacos注册中心和配置中心使用详情

Nacos Nacos就是Alibaba推出的一款 配置中心和注册中心结合的一款工具,属于SpringCloudAlibaba技术栈下 Nacos官网地址 https://nacos.io/zh-cn/index.html 安装启动 下载 目录结构 根据目录结构可以看出Nacos本身也就是一个java程序。SpringBoot程序 启动 c…

配置Tomcat性能优化

配置Tomcat性能优化 📒博客主页: 微笑的段嘉许博客主页 💻微信公众号:微笑的段嘉许 🎉欢迎关注🔎点赞👍收藏⭐留言📝 📌本文由微笑的段嘉许原创! &#x1f4…

【Python网络编程】利用Python进行TCP、UDP套接字编程

之前实现了Java版本的TCP和UDP套接字编程的例子,于是决定结合Python的学习做一个Python版本的套接字编程实验。 流程如下: 1.一台客户机从其标准输入(键盘)读入一行字符,并通过其套接字将该行发送到服务器。 2.服务…

基于springboot+vue的校园社团管理系统(前后端分离)

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目介绍…

基于 DSP+FPGA 的高清图像跟踪系统研制

目标识别与跟踪技术是目前图像处理研究的重点方向,在军事和民用领域中 具有广泛的应用价值,如精确制导武器、导弹飞机预警等军事领域,如交通管理、 刑事侦查等民用领域。其中,如何在复杂的背景中,提取、识别与跟踪特定…

(考研湖科大教书匠计算机网络)第五章传输层-第八节2:TCP连接管理实践部分

获取pdf:密码7281专栏目录首页:【专栏必读】考研湖科大教书匠计算机网络笔记导航 此部分为补充内容,主要使用Java实现TCP和UDP通信 一:UDP通信 (1)Java数据报套接字通信模型 Java UDP通信模型&#xff…

健身房健身需要什么装备,五款健身房必备运动耳机分享

很多小伙伴第一次去健身房不知道选择什么运动装备,经常去健身房健身的小伙伴一般都使用哪一些专业的运动耳机呢?下面这几款运动蓝牙耳机,都是观察身边经常去健身房的人佩戴的,分享给大家,看看有没有帮助到你。 1、南卡…