启动使用kafka服务

在kakfka安装目录的bin目录下,有很多的可执行文件,执行对应文件以使用对应功能
image.png
例如启动kafka,则执行对应的kafka-server即可,不过这里指的注意的是,需要指定对应的配置文件

  1. //直接启动
  2. bin/kafka-server-start.sh config/server.properties
  3. //挂在后台启动
  4. //方式一
  5. nohup bin/kafka-server-start.sh config/server.properties &
  6. //方式二
  7. ./kafka-server-start.sh -deamon config/server.properties

后台启动方式一可能会提示nohup: ignoring input and appending output to ‘nohup.out’,这是因为使用nohup启动时,会将日志输出在当前目录下的nohup.out文件中

topic相关

显示topic列表

后面的—zookeeper指的是zookeeper集群 —list为显示topic的列表

  1. bin/kafka-topics.sh --zookeeper 192.168.126.11:2181,192.168.126.12:2181,192.168.126.13:2181 --list

创建一个topic,并指定topic属性(副本数、分区数等)

—create:表示创建一个topic
—replication-factor:设置创建topic的副本详细
—partition:设置topic的partition数量
—topic:指定topic的名字

  1. bin/kafka-topics.sh --create --zookeeper 192.168.126.11:2181,192.168.126.12:2181,192.168.126.13:2181 --replication-factor 1 --partition 3 --topic testTopic

正常显示结果为:Created topic “testTopic”. 如果提示ERROR kafka.admin.AdminOperationException: replication factor: 1 larger than available brokers: 0,请考虑是不是kafka服务器启动失败

查看某个topic的状态

  1. bin/kafka-topics.sh --describe --zookeeper 192.168.126.11:2181,192.168.126.12:2181,192.168.126.13:2181 --topic testTopic

显示结果
image.png

删除topic

  1. bin/kafka-topics.sh --zookeeper 192.168.126.11:2181,192.168.126.12:2181,192.168.126.13:2181 --delete --topic testTopic

输出以下信息表示删除成功
image.png

message相关

生产消息

这里的—broker-list后面的是kafka集群的信息,不是zookeeper的集群信息,别弄混了,—topic指定消息的主题

  1. bin/kafka-console-producer.sh --broker-list 192.168.126.11:9092,192.168.126.12:9092,192.168.126.13:9092 --topic testTopic

执行完此命令后,界面会变成消息输入的console,此时你输入的所有信息都会被kafka当做消息来生产,以提供给消费者消费,使用ctrl + c退出

消费消息

之前产生了消息,这边开始消费消息,执行消费的命令,注意这里是—zookeeper,需要的是zookeeper集群的信息

  1. bin/kafka-console-consumer.sh --zookeeper 192.168.126.11:2181,192.168.126.12:2181,192.168.126.13:2181 --topic testTopic

执行完此命令后,界面会变成消息输出的console,此时你在消息输入的console中输入的消息都会在这边输出
输入:
image.png
输出:
image.png
此时之前的输入的消息没有输出,这是因为消息的消费是实时的,只需要加上—form-beginning参数即可

  1. bin/kafka-console-consumer.sh --zookeeper 192.168.126.11:2181,192.168.126.12:2181,192.168.126.13:2181 --topic testTopic --from-beginning

结果
kafka基本使用 - 图6