(二)Kafka动态增加Topic的副本(Replication)
(二)Kafka动态增加Topic的副本(Replication)
1. 查看topic的原来的副本分布
[hadoop@sdf-nimbus-perf ~]$ le-kafka-topics.sh --describe --topic http_zhixin_line1
Topic:http_zhixin_line1 PartitionCount:3 ReplicationFactor:1 Configs:
Topic: http_zhixin_line1 Partition: 0 Leader: 7 Replicas: 7 Isr: 7
Topic: http_zhixin_line1 Partition: 1 Leader: 8 Replicas: 8 Isr: 8
Topic: http_zhixin_line1 Partition: 2 Leader: 9 Replicas: 9 Isr: 9
2. 增加Topic的副本的json文件的编写
vi addReplicas.json
{
"version": 1,
"partitions": [
{
"topic": "http_zhixin_line1",
"partition": 0,
"replicas": [
7,
1,
2
]
},
{
"topic": "http_zhixin_line1",
"partition": 1,
"replicas": [
8,
2,
3
]
},
{
"topic": "http_zhixin_line1",
"partition": 2,
"replicas": [
9,
3,
4
]
}
]
}
3. 执行topic增加副本操作
kafka-reassign-partitions.sh --zookeeper $ZK_CONNECT --reassignment-json-file addReplicas.json --execute
[hadoop@sdf-nimbus-perf topic_reassgin]$ kafka-reassign-partitions.sh --zookeeper $ZK_CONNECT --reassignment-json-file addReplicas.json --execute
Current partition replica assignment
{"version":1,"partitions":[{"topic":"http_zhixin_line1","partition":2,"replicas":[9]},{"topic":"http_zhixin_line1","partition":1,"replicas":[8]},{"topic":"http_zhixin_line1","partition":0,"replicas":[7]}]}
Save this to use as the --reassignment-json-file option during rollback
Successfully started reassignment of partitions {"version":1,"partitions":[{"topic":"http_zhixin_line1","partition":0,"replicas":[7,1,2]},{"topic":"http_zhixin_line1","partition":1,"replicas":[8,2,3]},{"topic":"http_zhixin_line1","partition":2,"replicas":[9,3,4]}]}
4. 查看执行的状态
kafka-reassign-partitions.sh --zookeeper $ZK_CONNECT --reassignment-json-file addReplicas.json --verify
[hadoop@sdf-nimbus-perf topic_reassgin]$ kafka-reassign-partitions.sh --zookeeper $ZK_CONNECT --reassignment-json-file addReplicas.json --verify
Status of partition reassignment:
Reassignment of partition [http_zhixin_line1,0] completed successfully
Reassignment of partition [http_zhixin_line1,1] completed successfully
Reassignment of partition [http_zhixin_line1,2] completed successfully
5. 观察日志目录的数据同步情况,生产者,消费者的影响。
观察partitions-0的数据同步情况,由于partitions-0 增加的两个副本为1,2;
登陆 broker 1 和 broker 2所在的服务器;
cd 副本数据所在的目录,观察日志增长情况:
ls /data/hadoop/data*/kafka/log
borker1 和 broker2 所在日志目录都有日志文件生成。borker1 和 borker2的副本数据是同时同步完成的。
观察生产者:没有影响。
观察消费者:没有影响。
(二)Kafka动态增加Topic的副本(Replication)的更多相关文章
- Kafka动态增加Topic的副本
一.kafka的副本机制 由于Producer和Consumer都只会与Leader角色的分区副本相连,所以kafka需要以集群的组织形式提供主题下的消息高可用.kafka支持主备复制,所以消息具备高 ...
- 一脸懵逼学习Hdfs---动态增加节点和副本数量管理(Hdfs动态扩容)
1:按照上篇博客写的,将各个进程都启动起来: 集群规划: 主机名 IP 安装的软件 运行的进程 master ...
- 5 weekend01、02、03、04、05、06、07的分布式集群的HA测试 + hdfs--动态增加节点和副本数量管理 + HA的java api访问要点
weekend01.02.03.04.05.06.07的分布式集群的HA测试 1) weekend01.02的hdfs的HA测试 2) weekend03.04的yarn的HA测试 1) wee ...
- 如何使用kafka增加topic的备份数量,让业务更上一层楼
本文由云+社区发表 一.困难点 建立topic的时候,可以通过指定参数 --replication-factor 设置备份数量.但是,一旦完成建立topic,则无法通过kafka-topic.sh 或 ...
- Kafka Java consumer动态修改topic订阅
前段时间在Kafka QQ群中有人问及此事——关于Java consumer如何动态修改topic订阅的问题.仔细一想才发现这的确是个好问题,因为如果简单地在另一个线程中直接持有consumer实例然 ...
- kafka 日常使用和数据副本模型的理解
kafka 日常使用和数据副本模型的理解 在使用Kafka过程中,有时经常需要查看一些消费者的情况.Kafka健康状况.临时查看.同步一些数据,又由于Kafka只是用来做流式存储,又没有像Mysql或 ...
- Kafka动态配置实现原理解析
问题导读 Apache Kafka在全球各个领域各大公司获得广泛使用,得益于它强大的功能和不断完善的生态.其中Kafka动态配置是一个比较高频好用的功能,下面我们就来一探究竟. 动态配置是如何设计的? ...
- kafka之partition分区及副本replica升级
修改kafka的partition分区 bin/kafka-topics.sh --zookeeper datacollect-2:2181 --alter --partitions 3 --topi ...
- Hadoop 2.6.3动态增加/删除DataNode节点
假设集群操作系统均为:CentOS 6.7 x64 Hadoop版本为:2.6.3 一.动态增加DataNode 1.准备新的DataNode节点机器,配置SSH互信,可以直接复制已有DataNode ...
随机推荐
- 【iCore3 双核心板_FPGA】Quartus 如何生成jic文件
PDF下载: http://pan.baidu.com/s/1i5lQ0Rj iCore3 购买链接: https://item.taobao.com/item.htm?id=524229438677
- 现在写 PHP,你应该知道这些
现在写 PHP,你应该知道这些 2015-10-21 分类:WEB开发.编程开发.首页精华2人评论 来源:Scholer's Blog 分享到:更多3 二十万年薪PHP工程师培养计划 成 ...
- J2EE用户CPU占用过大后的分析过程
1.找到最耗CPU的java线程ps命令 命令:ps -mp pid -o THREAD,tid,time 或者 ps -Lfp pid 结果展示: 2.可以获取到 ...
- DreamweaverCS6
1.设置文字的格式:<font face=""></font> 字号<font size=""> 颜色<font c ...
- C++ Primer Pluse_7_课后题
#include <iostream> using namespace std; double Sum2(double x, double y) { double sum = 0; if ...
- 为什么微信android图片质量会比iphone的差?
为什么微信android图片质量会比iphone的差? 我们团队最初也纠结过这个问题,费了半天劲.绕了好大圈,直到最后才发现,原来这是谷歌犯得一个“小”错误,而且一直错到了今天. 谷歌的错就在于:li ...
- MySql超新手入门
https://www.kancloud.cn/thinkphp/mysql-tutorial/36457
- 白话学习MVC(七)Action的执行一
一.概述 在此系列开篇的时候介绍了MVC的生命周期 , 对于请求的处理,都是将相应的类的方法注册到HttpApplication事件中,通过事件的依次执行从而完成对请求的处理.对于MVC来说,请求是先 ...
- 使用curl命令操作elasticsearch
使用curl命令操作elasticsearch 大岩不灿 发表于 2015年4月25日 浏览 7,426 次 第一:_cat系列_cat系列提供了一系列查询elasticsearch集群状态的接口.你 ...
- JSON风格指南-真经
简介 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. JSON采用完全独立于语言的文本格式,但是也使用了类似于C语 ...