kafka的一些操作命令:
查看所有topic的信息
./kafka-topics.sh --zookeeper 127.0.0.1/kafka --describe
查看某个topic的信息
./kafka-topics.sh --zookeeper 127.0.0.1/kafka --describe --topic mine-topic
创建一个topic 指定备份是3,分区数是6,topic-level配置retention.ms
./kafka-topics.sh --zookeeper 127.0.0.1/kafka --create --partitions 6 --replication-factor 3 --topic mine-topic --config retention.ms=8640000
删除topic_level配置
./kafka-topics.sh --zookeeper 127.0.0.1/kafka --alter --topic mine-topic --deleteConfig retention.ms
修改分区(注意:目前不支持topic减少分区的数量或改变的备份数)
./kafka-topics.sh --zookeeper 127.0.0.1/kafka --alter --partitions 36 --topic mine-topic
通过zkConnector消费 可以通过命令得到消费量 ,topic最新offset 以及积压量
./kafka-run-class.sh kafka.tools.ConsumerOffsetChecker -zkconnect 127.0.0.1/kafka -topic mine-topic -group groupname
命令删除某个topic(这个删除后,后台还需要手动删除kafka数据文件中checkpoint的2个文件中对应的信息,然后删除zk上config/topics中的信息,必要是要重启broker,删除要谨慎),删除kafka某个topic的数据可以将此topic的topic_level的失效时间先改小数据删除之后再改大即可。
./kafka-run-class.sh kafka.admin.DeleteTopicCommand --zookeeper 127.0.0.1/kafka --topic mine-topic
在0.8.1版本之后提供了delete topic方法(官方说明发现问题可以给他们反映)
./kafka-topics.sh --zookeeper zk_host:port/chroot --delete --topic my_topic_name