您的位置:首页 > 其它

Kafka命令行常用命令说明

2015-08-18 21:13 363 查看
转自:http://blog.csdn.net/xiaolang85/article/details/22194571

基于0.8.0版本。


##查看topic分布情况kafka-list-topic.sh

bin/kafka-list-topic.sh --zookeeper 192.168.197.170:2181,192.168.197.171:2181 (列出所有topic的分区情况)

bin/kafka-list-topic.sh --zookeeper 192.168.197.170:2181,192.168.197.171:2181 --topic test (查看test的分区情况)

其实kafka-list-topic.sh里面就一句 

exec $(dirname $0)/kafka-run-class.sh kafka.admin.ListTopicCommand $@

实际是通过
kafka-run-class.sh脚本执行的包kafka.admin下面的类


##创建TOPIC kafka-create-topic.sh

bin/kafka-create-topic.sh   --replica
2 --partition 8 --topic test  --zookeeper 192.168.197.170:2181,192.168.197.171:2181
创建名为test的topic, 8个分区分别存放数据,数据备份总共2份

bin/kafka-create-topic.sh   --replica
1 --partition 1 --topic test2  --zookeeper 192.168.197.170:2181,192.168.197.171:2181
结果 topic: test2 partition: 0 leader: 170 replicas: 170 isr: 170

##重新分配分区kafka-reassign-partitions.sh

这个命令可以分区指定到想要的--broker-list上
bin/kafka-reassign-partitions.sh --topics-to-move-json-file topics-to-move.json --broker-list "171" --zookeeper 192.168.197.170:2181,192.168.197.171:2181 --execute 

cat topic-to-move.json
{"topics":
     [{"topic": "test2"}],
     "version":1
}

##为Topic增加 partition数目kafka-add-partitions.sh

bin/kafka-add-partitions.sh --topic test --partition 2  --zookeeper  192.168.197.170:2181,192.168.197.171:2181
(为topic test增加2个分区)

##控制台接收消息

bin/kafka-console-consumer.sh --zookeeper  192.168.197.170:2181,192.168.197.171:2181  --from-beginning
--topic test

##控制台发送消息

bin/kafka-console-producer.sh --broker-list  192.168.197.170:9092,192.168.197.171: 9092    --topic
test 

##手动均衡topic, kafka-preferred-replica-election.sh

bin/kafka-preferred-replica-election.sh
--zookeeper 
192.168.197.170:2181,192.168.197.171:2181
 --path-to-json-file preferred-click.json


cat preferred-click.json

{

 "partitions":

  [

    {"topic": "click", "partition": 0},

    {"topic": "click", "partition": 1},

    {"topic": "click", "partition": 2},

    {"topic": "click", "partition": 3},

    {"topic": "click", "partition": 4},

    {"topic": "click", "partition": 5},

    {"topic": "click", "partition": 6},

    {"topic": "click", "partition": 7},
    {"topic": "play", "partition": 0},

    {"topic": "play", "partition": 1},

    {"topic": "play", "partition": 2},

    {"topic": "play", "partition": 3},

    {"topic": "play", "partition": 4},

    {"topic": "play", "partition": 5},

    {"topic": "play", "partition": 6},

    {"topic": "play", "partition": 7}

  ]

}

##删除topic,慎用,只会删除zookeeper中的元数据,消息文件须手动删除

bin/kafka-run-class.sh kafka.admin.DeleteTopicCommand --topic test666 --zookeeper 192.168.197.170:2181 ,192.168.197.171:2181
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: