码迷,mamicode.com
首页 > 其他好文 > 详细

kafka数据迁移

时间:2016-01-28 19:39:12      阅读:561      评论:0      收藏:0      [点我收藏+]

标签:数据迁移   kafka   

         kafka数据迁移操作流程:

   此次数据迁移主要是针对Isr自动同步异常,而进行手动干预的操作。

具体的故障截图如下:

技术分享

一、确认同步异常的topic和Isr数目

./kafka-topics.sh --under-replicated-partitions --describe --zookeeper IP:2181


二、创建文件/tmp/topics-to-move.json

vim /tmp/topics-to-move.json

复制这些topic,并写成如下格式的文件, 命名为 topics-to-move.json

{"topics": [ 

 {"topic": "test"}   //test是对应的topic名字

 ],

 "version":1

}


三、执行:

./kafka-reassign-partitions.sh --zookeeper localhost:2181 --topics-to-move-json-file /tmp/topics-to-move.json --broker-list "0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26" --generate

执行结果会生成一串新的topics-to-move.json数据,修改所需转换的Isr对应关系(例如(14,0)转换为(14,1));

创建新配置文件 touch /tmp/reassignment-node.json

将修改后的topics-to-move.json文件写入reassignment-node.json

./kafka-reassign-partitions.sh --zookeeper localhost:2181 --reassignment-json-file /tmp/reassignment-node.json --execute   //开始迁移

./kafka-reassign-partitions.sh --zookeeper localhost:2181 --reassignment-json-file /tmp/reassignment-node.json --verify    //确认迁移同步情况,待所有进程都successful,迁移完成。


涉及到的监控脚本:

while true ;do /usr/hdp/2.2.0.0-2041/kafka/bin/kafka-reassign-partitions.sh --zookeeper localhost:2181 --reassignment-json-file /tmp/reassignment-node.json --verify|awk ‘/Reassignment/ && $5!~/completed/&& $6 !~ /successfully/‘|wc -l;sleep 10;done


/usr/hdp/2.2.0.0-2041/kafka/bin/kafka-topics.sh --zookeeper localhost:2181 --describe --topic CDR_AUDIT|awk -F‘,|[ ]*|\t‘ ‘{if(($9==14)||($10==14))print $0}‘



本文出自 “韩磊” 博客,请务必保留此出处http://deararvin.blog.51cto.com/11158301/1739463

kafka数据迁移

标签:数据迁移   kafka   

原文地址:http://deararvin.blog.51cto.com/11158301/1739463

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!