在Kafka中修改Topic的preferred replica
参考site:https://cwiki.apache.org/confluence/display/KAFKA/Replication+tools
目前我们的topic test-add-replication-topic中partition 0的replicas为[1,2],则1为preferred replica,应该成为leader。
这时我们期望2为preferred replica,并变成leader。
操作步骤:
1. 查看当前topic详细信息:
> bin/kafka-topics.sh --describe --zookeeper h1:2181 --topic test-add-replication-topic
Topic:test-add-replication-topic PartitionCount:3 ReplicationFactor:3 Configs:
Topic: test-add-replication-topic Partition: 0 Leader: 1 Replicas: 1,2 Isr: 1,2
Topic: test-add-replication-topic Partition: 1 Leader: 2 Replicas: 2,0,1 Isr: 0,1,2
Topic: test-add-replication-topic Partition: 2 Leader: 0 Replicas: 0,1 Isr: 0,1
2. 修改replicas顺序
> cat partitions-to-move.json
{
"version":1,
"partitions":
[
{
"topic":"test-add-replication-topic",
"partition":0,
"replicas":[2,1]
}
]
}
> bin/kafka-reassign-partitions.sh --zookeeper h1:2181 --reassignment-json-file partitions-to-move.json --execute
Current partition replica assignment
{"version":1,"partitions":[{"topic":"test-add-replication-topic","partition":1,"replicas":[2,0,1]},{"topic":"test-add-replication-topic","partition":2,"replicas":[0,1]},
{"topic":"test-add-replication-topic","partition":0,"replicas":[1,2]}]}
Save this to use as the --reassignment-json-file option during rollback
Successfully started reassignment of partitions {"version":1,"partitions":[{"topic":"test-add-replication-topic","partition":0,"replicas":[2,1]}]}
3. 更改leader
> cat topicPartition.json
{
"version":1,
"partitions":
[
{
"topic":"test-add-replication-topic",
"partition":0
}
]
}
> bin/kafka-preferred-replica-election.sh --zookeeper h1:2181 --path-to-json-file topicPartition.json
Successfully started preferred replica election for partitions Set([test-add-replication-topic,0])
4.检查replicas leader切换情况
> bin/kafka-topics.sh --describe --zookeeper h1:2181 --topic test-add-replication-topic
Topic:test-add-replication-topic PartitionCount:3 ReplicationFactor:3 Configs:
Topic: test-add-replication-topic Partition: 0 Leader: 2 Replicas: 2,1 Isr: 1,2
Topic: test-add-replication-topic Partition: 1 Leader: 2 Replicas: 2,0,1 Isr: 0,1,2
Topic: test-add-replication-topic Partition: 2 Leader: 0 Replicas: 0,1 Isr: 0,1
到此,partition 0中的leader已经修改成功。
在Kafka中修改Topic的preferred replica的更多相关文章
- 删除Kafka中的topic
删除Kafka中的topic 一.配置delete.topic.enable=true 二.其他方法 一.配置delete.topic.enable=true 修改kafaka配置文件server.p ...
- Kafka中操作topic时 Error:Failed to parse the broker info from zookeeper
Kafka中操作topic时 Error: Failed to parse the broker info from zookeeper 1.问题描述 2.问题原因 kafka在启动后 ...
- kafka之五:如何手动更新Kafka中某个Topic的偏移量
本文介绍如何手动跟新zookeeper中的偏移量.我们在使用kafka的过程中,有时候需要通过修改偏移量来进行重新消费.我们都知道offsets是记录在zookeeper中的,所以我们想修改offse ...
- 彻底删除Kafka中的topic
1.删除kafka存储目录(server.properties文件log.dirs配置,默认为"/tmp/kafka-logs")相关topic目录 2.Kafka 删除topic ...
- kafka中常用API的简单JAVA代码
通过之前<kafka分布式消息队列介绍以及集群安装>的介绍,对kafka有了初步的了解.本文主要讲述java代码中常用的操作. 准备:增加kafka依赖 <dependency> ...
- (一)kafka修改topic分区的位置
(一)kafka修改topic分区的位置 环境:kafka_2.10-0.8.2.1 + JDK1.7.0_80 1. 查看分区topic的分区分布 $ le-kafka-topics.sh --de ...
- Kafka Java consumer动态修改topic订阅
前段时间在Kafka QQ群中有人问及此事——关于Java consumer如何动态修改topic订阅的问题.仔细一想才发现这的确是个好问题,因为如果简单地在另一个线程中直接持有consumer实例然 ...
- Kafka中Topic级别配置
一.Kafka中topic级别配置 1.Topic级别配置 配置topic级别参数时,相同(参数)属性topic级别会覆盖全局的,否则默认为全局配置属性值. 创建topic参数可以设置一个或多个--c ...
- kafka中server.properties配置文件参数说明
转自:http://blog.csdn.net/lizhitao/article/details/25667831 参数 说明(解释) broker.id =0 每一个broker在集群中的唯一表示, ...
随机推荐
- JAVA 安装与配置
JDK是整个java的核心,包括java的运行环境.java工具和java基础类库. 一.安装JDK 获得JDK,登录oracle网站http://www.oracle.com/technetwork ...
- ASP.NET中如何生成图形验证码
通常生成一个图形验证码主要 有3个步骤: (1)随机产生一个长度为N的随机字符串,N的值可由开发可由开发人员自行设置.该字符串可以包含数字.字母等. (2)将随机生成的字符串创建成图片,并显示. (3 ...
- SQL Server 表字段值转换成字段名称(二)
上次写了个比较简单的只有两个字段的例子,经要求在写个 3 个字段的示例 ,贴上来与大家共勉一下 如果你们有更好的方法,提供一下, 感激不尽. 示例如下: /*--drop table temp_ ...
- WCF上传、下载、删除文件
关键代码: --上传的stream处理,转为bytep[] private void Parse(Stream stream, Encoding encoding) { this.Success = ...
- Eclipse基本设置
1.设置java的JDK:window->preferences->Java->Installed JREs->Add 2.设置文件默认打开方式: window->pre ...
- 用java写bp神经网络(四)
接上篇. 在(一)和(二)中,程序的体系是Net,Propagation,Trainer,Learner,DataProvider.这篇重构这个体系. Net 首先是Net,在上篇重新定义了激活函数和 ...
- JavaScript HTML DOM - 改变 HTML
JavaScript HTML DOM - 改变 HTML HTML DOM 允许 JavaScript 改变 HTML 元素的内容. 改变 HTML 输出流 JavaScript 能够创建动态的 H ...
- Linux通配符
* 任意字符 ?任意单个字符 [] 匹配指定 字符范围内的字符 [^] 指定范围之外的单个字符 常规字符集合 [a-z] a到z的所有小写字母 [A-Z] a到z的所有大写字母 [0-9] 0到9的所 ...
- SGU 125.Shtirlits
时间限制:0.25s 空间限制:4M 题意: 有N*N的矩阵(n<=3),对所有i,j<=n有G[i][j]<=9,定义f[i][j]为G[i][j]四周大于它的数的个数(F[i][ ...
- 24种设计模式--多例模式【Multition Pattern】
这种情况有没有?有!大点声,有没有?有,是,确实有,就出现在明朝,那三国期间的算不算,不算,各自称帝,各有各的地盘,国号不同.大家还 记得那首诗<石灰吟>吗?作者是谁?于谦,他是被谁杀死的 ...