1. 命令操作

  • 查看当前服务器中的所有topic
  1. kafka-topics.sh --zookeeper hadoop102:2181/kafka --list
  • 创建topic

      1. kafka-topics.sh --zookeeper hadoop102:2181/kafka --create --replication-factor 3 --partitions 1 --topic first
  • —topic 定义topic名

  • —replication-factor 定义副本数

  • —partitions 定义分区数

  • 删除topic
  1. kafka-topics.sh --zookeeper hadoop102:2181/kafka --delete --topic first
  2. #需要server.properties中设置delete.topic.enable=true否则只是标记逻辑删除。
  • 发送消息
  1. kafka-console-producer.sh --broker-list hadoop102:9092 --topic first
  2. #消息会存储在/opt/module/kafka/logs/first-xxx 中
  • 消费消息
  1. kafka-console-consumer.sh --bootstrap-server hadoop102:9092 --topic first # 启动后只有发送消息才会消费消息
  2. kafka-console-consumer.sh --bootstrap-server hadoop102:9092 --from-beginning --topic first #会把topic中以往所有的数据都读取出来 读取是以分区进行顺序读取的 读完一个分区再读另外一个分区
  3. kafka-console-consumer.sh --bootstrap-server hadoop102:9092 --from-beginning --topic first --partition 1 #partition 读取指定分区 如不指定所有的分区都会消费
  • 查看某个Topic的详情
  1. kafka-topics.sh --zookeeper hadoop102:2181/kafka --describe --topic first
  • 修改分区
  1. kafka-topics.sh --zookeeper hadoop102:2181/kafka --alter --topic first --partitions 6