kafka负载均衡迁移(通过kafka eagle)

在grafana监控中发现kafka的各个节点磁盘不均匀

出现这样的情况是因为kafka默认是以文件数作为平衡的条件的。换句话说,kafka不会管一个副本有多大,只会看磁盘中有多少个副本文件。

解决方式:

1、修改策略,改为按照磁盘大小平衡数据

2、手动迁移数据,将磁盘使用率高的节点数据迁移到磁盘使用率低的节点

本文介绍第二种方式,手动迁移数据。

1 进入磁盘使用率高的机器/kafka-logs,通过du -h找一个数据量大的topic:这里以my_topic为例

2 去kafka eagle中查看该topic的副本分布情况

2.1、登录kafka eagle
2.2、点击左侧Topics中的hub,查找对应的topic
2.3、把 Current Partition Replica Assignment中的数据拷贝到文本编辑器中

3 查看监控 ,去使用率高的机器的对应磁盘中找到my_topic的副本

3.1、进入磁盘使用率高的那台机器,在kafka-logs 中,使用命令:du -h |grep my_topic

可以看到副本的大小,以及对应的分区 例如my_topic_4 10G

3.2、在2.3的分区分布情况文件中,查找4分区对应的情况

通过vim /kafka-logs/meta.properties查看本台机器的kafkaid为:1001

再次查看grafana监控,查看最低磁盘使用率的机器是哪一个,查看他的kafkaid(/kafka-logs/meta.properties中)

3.3、将4号分区的1001修改为1004

4 将使用率多的机器中的副本修改为使用率少的kafkaid之后,把修改后的kafka分区文件放到 Proposed Partition Reassignment Configuartion中

然后点击上方的execute按钮

5 可通过点击Verify按钮后,在下方的Result中看到副本迁移的进度

5.1 、也可通过zookeeper中的元数据查看迁移任务是否已经完成

命令:sh /usr/hdp/current/kafka-broker/bin/kafka-topics.sh --zookeeper hk-hdfs-util:2181 hk-hdfs-master01:2181 hk-hdfs-master02:2181 --topic my_topic --describe

相关推荐
muddjsv10 分钟前
SQLite数据库文件机制详解:journal、wal、shm文件作用与备份避坑
数据库·sqlite
吴声子夜歌1 小时前
MongoDB 4.2——应用程序设计
数据库·mongodb
数字新视界1 小时前
动环监控可视化在数据中心管理中的应用与实践解析
数据库·物联网·解决方案·动环监控·大榕树
极地野狼 音乐哔哔2 小时前
数据库备份恢复的原理实践
数据库
互联网中的一颗神经元2 小时前
小白python入门 - 25. SQL 与表设计入门
数据库·python·sql
ttwuai2 小时前
AI 生成后台改数据后,操作日志别只记按钮:Go + MySQL 怎么验
数据库·人工智能·mysql·golang
KaMeidebaby2 小时前
卡梅德生物技术快报 | 核酸适配体文库测序:核酸适配体文库测序的技术原理、实验流程与数据解析
前端·网络·数据库·人工智能·算法
ClouGence3 小时前
除了 DBeaver,2026 年还有哪些好用的开源数据库管理工具?
数据库·开源
景芯SoC芯片实战3 小时前
12nm工艺下,6T-Turbo Cell的Filler到底该怎么插?
数据库·数字ic·dft·soc后端
韩楚风3 小时前
【参天引擎】一次宕机后的数据恢复,让我把 Cantian 持久化与恢复的六大机制全搞明白了
服务器·网络·数据库·分布式·mysql·架构·cantian