kafka-reassign-partitions.sh在增加或减少实例时候是有效果的 但是同一个broker在增加一个磁盘后,使用kafka-reassign-partitions.sh无效果 只有增加topic的时候,新盘才会有数据 除了手动拷贝,如何在增加新盘后,平衡一下新老盘的数据
博主,我遇到了和你一样的问题,请问你怎么解决的。
kafka topic创建完成之后,分区确定了位置之后,是永远不会自动变化的。
所以只有增加topic的时候,新盘才会有数据。
只能通过迁移命令,手动达到平衡:kafka命令大全
没太理解. broker增加磁盘挂载,增加的也是新路径,这块逻辑跟kafka没关系吧
加入本来有/data1,kafka的topic都在这里,现在增加了一个/data2,怎么能实现/data1下的部分topic分区迁移到/data2,目前只能手动拷贝过去,然后重启kafka
kafka-reassign-partitions.sh 这个工具仅在增加或减少broker实例时候是有效果的,对同一个broker不同磁盘间的迁移没效果
你重启kafka,也要修改配置文件中的路径指定吧?
这都是肯定的
配置文件肯定是加入了/data2
然后,/data1中的topic数据目录,如果想移动一部分到/data2,目前只能靠手动拷贝,再重启
有木有办法使用自带命令实现呢?
路径都是新的,那跟kafka有什么关系,它只能识别你一开始配置好的路径。
没有这样的命令。
是这样,假如kafka只有一个broker,且只配置了/data1这个目录
现在机器新加了一个数据盘/data2,然后修改了kafka的配置文件,目前log.dirs=/data1,/data2
重启后,我要是再新建topic,/data2上会有新topic的数据的
现在问题是:
如果我想把/data1盘下面的某些topic的数据目录移到/data2,以缓解/data1的空间压力
是不是只能靠手动mv一些目录到/data2下,然后再重启kafka(实时上这样子我测试过成功了)
有木有办法,kafka会自动在同一个broker配置的不同的数据盘之间做数据均衡?
你的答案