<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh-Hans-CN">
	<id>http://wiki.eijux.com/index.php?action=history&amp;feed=atom&amp;title=Kafka%EF%BC%9A%E5%91%BD%E4%BB%A4%E5%A4%A7%E5%85%A8</id>
	<title>Kafka：命令大全 - 版本历史</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.eijux.com/index.php?action=history&amp;feed=atom&amp;title=Kafka%EF%BC%9A%E5%91%BD%E4%BB%A4%E5%A4%A7%E5%85%A8"/>
	<link rel="alternate" type="text/html" href="http://wiki.eijux.com/index.php?title=Kafka%EF%BC%9A%E5%91%BD%E4%BB%A4%E5%A4%A7%E5%85%A8&amp;action=history"/>
	<updated>2026-04-26T05:53:22Z</updated>
	<subtitle>本wiki上该页面的版本历史</subtitle>
	<generator>MediaWiki 1.38.2</generator>
	<entry>
		<id>http://wiki.eijux.com/index.php?title=Kafka%EF%BC%9A%E5%91%BD%E4%BB%A4%E5%A4%A7%E5%85%A8&amp;diff=3596&amp;oldid=prev</id>
		<title>Eijux：​建立内容为“category:Kafka  == 关于 == kafka相关的常用命令  == 管理 == &lt;syntaxhighlight lang=&quot;bash&quot; highlight=&quot;&quot;&gt; ## 创建topic（4个分区，2个副本） #…”的新页面</title>
		<link rel="alternate" type="text/html" href="http://wiki.eijux.com/index.php?title=Kafka%EF%BC%9A%E5%91%BD%E4%BB%A4%E5%A4%A7%E5%85%A8&amp;diff=3596&amp;oldid=prev"/>
		<updated>2021-05-19T17:19:40Z</updated>

		<summary type="html">&lt;p&gt;建立内容为“&lt;a href=&quot;/%E5%88%86%E7%B1%BB:Kafka&quot; title=&quot;分类:Kafka&quot;&gt;category:Kafka&lt;/a&gt;  == 关于 == kafka相关的常用命令  == 管理 == &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; highlight=&amp;quot;&amp;quot;&amp;gt; ## 创建topic（4个分区，2个副本） #…”的新页面&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[category:Kafka]]&lt;br /&gt;
&lt;br /&gt;
== 关于 ==&lt;br /&gt;
kafka相关的常用命令&lt;br /&gt;
&lt;br /&gt;
== 管理 ==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; highlight=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
## 创建topic（4个分区，2个副本）&lt;br /&gt;
# kafka版本 &amp;lt; 2.2&lt;br /&gt;
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 2 --partitions 4 --topic test&lt;br /&gt;
# kafka版本 &amp;gt;= 2.2&lt;br /&gt;
bin/kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic test&lt;br /&gt;
&lt;br /&gt;
## 分区扩容&lt;br /&gt;
# kafka版本 &amp;lt; 2.2&lt;br /&gt;
bin/kafka-topics.sh --zookeeper localhost:2181 --alter --topic topic1 --partitions 2&lt;br /&gt;
# kafka版本 &amp;gt;= 2.2&lt;br /&gt;
bin/kafka-topics.sh --bootstrap-server broker_host:port --alter --topic topic1 --partitions 2&lt;br /&gt;
&lt;br /&gt;
## 删除topic&lt;br /&gt;
bin/kafka-topics.sh --zookeeper localhost:2181 --delete --topic test&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 查询 ==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; highlight=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
## 查询集群描述&lt;br /&gt;
bin/kafka-topics.sh --describe --zookeeper 127.0.0.1:2181&lt;br /&gt;
&lt;br /&gt;
## topic列表查询&lt;br /&gt;
bin/kafka-topics.sh --zookeeper 127.0.0.1:2181 --list&lt;br /&gt;
## topic列表查询（支持0.9版本+）&lt;br /&gt;
bin/kafka-topics.sh --list --bootstrap-server localhost:9092&lt;br /&gt;
&lt;br /&gt;
## 新消费者列表查询（支持0.9版本+）&lt;br /&gt;
bin/kafka-consumer-groups.sh --new-consumer --bootstrap-server localhost:9092 --list&lt;br /&gt;
## 新消费者列表查询（支持0.10版本+）&lt;br /&gt;
bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --list&lt;br /&gt;
&lt;br /&gt;
## 显示某个消费组的消费详情（0.9版本 - 0.10.1.0 之前）&lt;br /&gt;
bin/kafka-consumer-groups.sh --new-consumer --bootstrap-server localhost:9092 --describe --group test-consumer-group&lt;br /&gt;
## 显示某个消费组的消费详情（0.10.1.0版本+）&lt;br /&gt;
bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --describe --group my-group&lt;br /&gt;
## 显示某个消费组的消费详情（仅支持offset存储在zookeeper上的）&lt;br /&gt;
bin/kafka-run-class.sh kafka.tools.ConsumerOffsetChecker --zookeeper localhost:2181 --group test&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 发送和消费 ==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; highlight=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
## 生产者&lt;br /&gt;
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test&lt;br /&gt;
&lt;br /&gt;
## 消费者&lt;br /&gt;
bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test&lt;br /&gt;
&lt;br /&gt;
## 新生产者（支持0.9版本+）&lt;br /&gt;
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test --producer.config config/producer.properties&lt;br /&gt;
&lt;br /&gt;
## 新消费者（支持0.9版本+）&lt;br /&gt;
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --new-consumer --from-beginning --consumer.config config/consumer.properties&lt;br /&gt;
&lt;br /&gt;
## kafka-verifiable-consumer.sh（消费者事件，例如：offset提交等）【？？？】&lt;br /&gt;
bin/kafka-verifiable-consumer.sh --broker-list localhost:9092 --topic test --group-id groupName&lt;br /&gt;
&lt;br /&gt;
## 高级点的用法【？？？】&lt;br /&gt;
bin/kafka-simple-consumer-shell.sh --brist localhost:9092 --topic test --partition 0 --offset 1234  --max-messages 10&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 切换leader ==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; highlight=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
# kafka版本 &amp;lt;= 2.4&lt;br /&gt;
&amp;gt; bin/kafka-preferred-replica-election.sh --zookeeper zk_host:port/chroot&lt;br /&gt;
&lt;br /&gt;
# kafka新版本&lt;br /&gt;
&amp;gt; bin/kafka-preferred-replica-election.sh --bootstrap-server broker_host:port&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kafka自带压测命令【？？？】 ==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; highlight=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
bin/kafka-producer-perf-test.sh --topic test --num-records 100 --record-size 1 --throughput 100  --producer-props bootstrap.servers=localhost:9092&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== kafka持续发送消息【？？？】 ==&lt;br /&gt;
持续发送消息到指定的topic中，且每条发送的消息都会有响应信息：&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; highlight=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
kafka-verifiable-producer.sh --broker-list $(hostname -i):9092 --topic test --max-messages 100000&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== zookeeper-shell.sh【Zookeeper 命令】 ==&lt;br /&gt;
如果kafka集群的zk配置了chroot路径，那么需要加上 /path：&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; highlight=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
bin/zookeeper-shell.sh localhost:2181[/path]&lt;br /&gt;
ls /brokers/ids&lt;br /&gt;
get /brokers/ids/0&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 迁移分区 ==&lt;br /&gt;
# 创建规则json：&lt;br /&gt;
#: &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; highlight=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
cat &amp;gt; increase-replication-factor.json &amp;lt;&amp;lt;EOF&lt;br /&gt;
{&amp;quot;version&amp;quot;:1, &amp;quot;partitions&amp;quot;:[&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:0,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:1,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:2,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:3,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:4,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:5,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:6,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:7,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:8,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:9,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:10,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:11,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:12,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:13,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:14,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:15,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:16,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:17,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:18,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:19,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:20,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:21,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:22,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:23,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:24,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:25,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:26,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:27,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:28,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:29,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:30,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:31,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:32,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:33,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:34,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:35,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:36,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:37,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:38,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:39,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:40,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:41,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:42,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:43,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:44,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:45,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:46,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:47,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:48,&amp;quot;replicas&amp;quot;:[0,1]},&lt;br /&gt;
{&amp;quot;topic&amp;quot;:&amp;quot;__consumer_offsets&amp;quot;,&amp;quot;partition&amp;quot;:49,&amp;quot;replicas&amp;quot;:[0,1]}]&lt;br /&gt;
}&lt;br /&gt;
EOF&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
# 执行：&lt;br /&gt;
#: &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; highlight=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
bin/kafka-reassign-partitions.sh --zookeeper localhost:2181 --reassignment-json-file increase-replication-factor.json --execute&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
# 验证：&lt;br /&gt;
#: &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot; highlight=&amp;quot;&amp;quot;&amp;gt;&lt;br /&gt;
bin/kafka-reassign-partitions.sh --zookeeper localhost:2181 --reassignment-json-file increase-replication-factor.json --verify&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Eijux</name></author>
	</entry>
</feed>