Kafka版本 0.8.1-0.8.2
一、創建topic模板:
/usr/hdp/2.2.0.0-2041/kafka/bin/kafka-topics.sh --create --zookeeper IP:2181 --replication-factor 2 --partitions 30 --topic TEST
二、刪除topic模板:(指定所有zookeeper server IP)
/usr/hdp/2.2.0.0-2041/kafka/bin/kafka-run-class.sh kafka.admin.DeleteTopicCommand --topic name --zookeeper IP01:2181,IP02:2181,IP03:2181
三、描繪kafka topic partion 信息: /usr/hdp/2.2.0.0-2041/kafka/bin/kafka-topics.sh --describe --zookeeper IP:2181 /usr/hdp/2.2.0.0-2041/kafka/bin/kafka-topics.sh --describe --zookeeper IP:2181 --topic TEST
四、列出topic信息:
/usr/hdp/2.2.0.0-2041/kafka/bin/kafka-topics.sh --list --zookeeper IP:2181 /usr/hdp/2.2.0.0-2041/kafka/bin/kafka-topics.sh --list --zookeeper IP:2181 --topic TEST
五、修改topic分區(分區數只能增加不能減少)
/usr/hdp/2.2.0.0-2041/kafka/bin/kafka-topics.sh --alter --topic TEST --partitions 60 --zookeeper IP:2181
六、批量刪除topic腳本
for i in `/usr/hdp/2.2.0.0-2041/kafka/bin/kafka-topics.sh --list --zookeeper IP:2181`;do /usr/hdp/2.2.0.0-2041/kafka/bin/kafka-run-class.sh kafka.admin.DeleteTopicCommand --topic $i --zookeeper IP:2181,IP:2181,IP:2181
done
七、刪除topic之後需要手動刪除zookeeper下文件
[root@gdyd-node112 bin]# cd /usr/hdp/2.2.0.0-2041/zookeeper/bin
echo "rmr /admin" | ./zkCli.sh
echo "rmr /consumers" | ./zkCli.sh
echo "rmr /config" | ./zkCli.sh
echo "rmr /controller" | ./zkCli.sh
echo "rmr /brokers" | ./zkCli.sh
echo "rmr /controller_epoch" | ./zkCli.sh
八、當前kafka版本0.8.1在刪除topic的同時,不會刪除對應目錄下文件,需要手動刪除。據說0.90的版本可以實現同步刪除,未經測試,有測試過的朋友歡迎留言交流。指出文檔中不足,我會陸續完善。