刚接触kafka时,对于kafka创建topic命令甚是疑惑,有的资料创建topic命令中有的用的是bootstrap.server 有的用的是zookeeper 。也没有说是什么原因,k刚开始搞不懂zookeeper 和bootstrap.server 有什么不同。其实很简单,只是kafka不同版本使用方式不同而已。
这里对于kafka版本用新旧来区分。
旧版本(< v2.2)Kafka的参数
kafka-topics.sh --zookeeper node1:2181,node2:2181,node3:2181 --create --topic topic_name
新版本(>= v2.2)Kafka的参数
kafka-topics.sh --bootstrap-server node1:9092 --create --topic topic_name
其中,2181是zookeeper 的监听端口,9092是kafka的监听端口。
旧版本用--zookeeper参数,主机名(或主机IP)和端口用ZooKeeper的,就是server.properties文件中zookeeper.connect属性的配置值
新版本用--bootstrap-server参数,主机名(或主机IP)和端口用某个节点的即可,即主机名(或主机IP)9092。
查看kafka版本
kafka并没有直接提供查看version的命令。但也没关系,