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

Kafka集群扩容(新增一台kafka节点)

  • kafka集群扩容、kafka topic迁移

  • 现有环境

IP组件角色
192.168.17.51kafka01broker1
192.168.17.52kafka02broker2
192.168.17.53kafka03broker3
  • 扩容之后环境
IP组件角色
192.168.17.51kafka01broker1
192.168.17.52kafka02broker2
192.168.17.53kafka03broker3
192.168.17.54kafka04broker4
  • 背景:目前kafka集群只有三台,随着数据量逐渐变大,三台服务器kafka节点不足以支撑正常使用,所以打算在扩容一台kafka节点
  1. kafka扩容步骤:
  • 分发kafka包
scp -r kafka_2.11-1.1.1 root@192.168.17.54:/opt/
  • 创建软连接,赋权限
ln -s kafka_2.11-1.1.1 /opt/kafka
chown -R kafka:kafka kafka
chown -R kafka:kafka kafka_2.11-1.1.1/
  • 修改配置
vim /opt/kafka/config/server.properties

新的节点需要修改下面这些配置

broker.id #集群中是唯一的数字
listeners #本机IP
log.dirs #数据目录,可以多个目录,多目录逗号隔开
zookeeper.connec #zookeeper地址

在这里插入图片描述在这里插入图片描述在这里插入图片描述

  • 启动kafka,并检查是否成功
nohup /bin/sh /opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties > /dev/null 2>&1 &
jps

在这里插入图片描述

上步骤完成以后kafka集群没有完全扩容成功,因为只扩容了kafka节点,原来有的topic还是在原有的几点上,这台新扩容的还没有分担原有的压力,所以还需要迁移topic

  1. 迁移kafka topic

在原有的集群上,任一一台kafka节点操作

使用kafka提供的工具kafka-reassign-partitions.sh来迁移数据。迁移数据需要分三步做
第一步:生成迁移计划

先手动生成一个topic.json,内容如下。这里topic可以是一个列表

在这里插入图片描述

单个topic迁移

{
        "topics": [{"topic": "ceshi2"},
        "version": 1
}

多个topic迁移

{
        "topics": [{"topic": "ceshi2"},
                   {"topic": "ceshi3"},
                   {"topic": "ceshi4"}],
        "version": 1
}
  • 执行以下命令 生成迁移计划
./bin/kafka-reassign-partitions.sh --zookeeper 192.168.17.51:2181/kafka --topics-to-move-json-file topic.json --broker-list "1,2,3,4" --generate

–broker-list kafka集群的所有broker.id 我的是从1开始
在这里插入图片描述

  • 查看需要迁移的topic信息
./bin/kafka-topics.sh --describe --zookeeper 192.168.17.52:2181/kafka --topic ceshi2

在这里插入图片描述

新建一个文件reassignment.json
保存上边建议分区信息,注意只复制只复制上述中’Proposed partition reassignment configuration’以下的部分
其中Current partition replica assignment指当前的分区情况,Proposed partition reassignment configuration是计划的分区情况

./bin/kafka-reassign-partitions.sh --zookeeper 192.168.17.51:2181/kafka --reassignment-json-file reassignment.json --execute

在这里插入图片描述

  • 验证1
./bin/kafka-reassign-partitions.sh --zookeeper 192.168.17.51:2181/kafka --reassignment-json-file reassignment.json --verify

在这里插入图片描述

  • 验证2
    可以通过以下命令查看该topic分布在那些节点上,正常是和刚才查到的不一样得,应该会在新扩容得节点上面有
./bin/kafka-topics.sh --describe --zookeeper 192.168.17.52:2181/kafka --topic ceshi2

迁移成功。

相关文章:

  • Windows 10 on ARM, version 22H2 (updated Sep 2024) ARM64 AArch64 中文版、英文版下载
  • 缓存穿透 问题(缓存空对象)
  • 513. 找树左下角的值
  • 常见场景题3(面试)
  • Netty简介
  • 时序数据库 TDengine 的入门体验和操作记录
  • java 框架组件
  • 24暑假实习信息、25秋招提前批信息,地信、测绘、遥感、地质相关岗位招聘汇总
  • C++——输入三个整数,按照由小到大的顺序输出。用指针方法处理。
  • ubuntu错误GPG error: http://repo.mysql.com/apt/ubuntu noble InRelease
  • Contact Form 7最新5.9.8版错误修复方案
  • Redisson 总结
  • QT窗口无法激活弹出问题排查记录
  • Stylized Smooth Clouds 卡通风格化云朵包
  • 《ChatGPT:强大的人工智能聊天机器人》
  • PG逻辑订阅功能
  • 【完整梳理验证】企业微信第三方应用接入全流程java版
  • 大数据新视界 --大数据大厂之探索ES:大数据时代的高效搜索引擎实战攻略
  • 第十四届蓝桥杯嵌入式国赛
  • 瑞利相干斑模型
  • 航行警告:渤海海峡黄海北部执行军事任务,禁止驶入
  • 一生要出片的年轻人,买爆相机
  • 宇树科技王兴兴:第一桶金来自上海,欢迎上海的年轻人加入
  • 2025年4月份CPI环比由降转涨,核心CPI涨幅稳定
  • 名帅大挪移提前开启,意属皇马的阿隆索会是齐达内第二吗
  • 第四轮伊美核谈判将于11日在阿曼举行