当前位置:   article > 正文

kafka重新分配partition_kafka增加分区,数据会重排吗

kafka增加分区,数据会重排吗

今天kafka测试环境中机器磁盘告警,占用率超过了80%,原来是某一个topicpartition为1,只往一台机器上写数据,造成kafka集群空间使用不均。
下面主要使用kafka-topics.shkafka-reassign-partitions.sh来解决问题。
推荐使用kafka manager来管理kafka集群。

修改topic的partitions

 
    
1
 
    
./bin/kafka-topics.sh --zookeeper vlnx111122:2181 --alter --topic test --partitions 6

此命令执行完之后即可再kafka集群其他机器中找到此topic的目录

扩容、删除机器

只要配置zookeeper.connect为要加入的集群,再启动Kafka进程,就可以让新的机器加入到Kafka集群。但是新的机器只针对新的Topic才会起作用,在之前就已经存在的Topic的分区,不会自动的分配到新增加的物理机中。为了使新增加的机器可以分担系统压力,必须进行消息数据迁移。Kafka提供了kafka-reassign-partitions.sh进行数据迁移。

这个脚本提供3个命令:

  • --generate: 根据给予的Topic列表和Broker列表生成迁移计划。generate并不会真正进行消息迁移,而是将消息迁移计划计算出来,供execute命令使用。
  • --execute: 根据给予的消息迁移计划进行迁移。
  • --verify: 检查消息是否已经迁移完成。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/643241
推荐阅读
相关标签
  

闽ICP备14008679号