来自:https://blog.csdn.net/u010046908/article/details/62229015
1、Kafka安装目录:
/usr/local/Cellar/kafka/1.1.0
(1.1.0版本目录,请查看自己版本对应的目录号)
2、安装的配置文件位置
/usr/local/etc/kafka/server.properties
/usr/local/etc/kafka/zookeeper.properties
3、启动zookeeper:
$ cd /usr/local/Cellar/kafka/1.1.0
$ ./bin/zookeeper-server-start /usr/local/etc/kafka/zookeeper.properties &
4、启动 kafka 服务
$ cd /usr/local/Cellar/kafka/1.1.0
$ ./bin/kafka-server-start /usr/local/etc/kafka/server.properties &
5、创建topic
让我们使用单个分区和只有一个副本创建一个名为“test”的主题
$ cd /usr/local/Cellar/kafka/1.1.0
$ ./bin/kafka-topics --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
终端打印信息:Createdtopic"test”.
6、查看创建的topic
我们现在可以看到该主题,如果我们运行list topic命令:
$ cd /usr/local/Cellar/kafka/1.1.0
$ ./bin/kafka-topics --list --zookeeper localhost:2181
终端打印信息:test
7、删除topic
kafka/bin/kafka-topics.sh --delete --zookeeper Zookeeper地址 --topic 主题名称
$ ./bin/kafka-topics --delete --zookeeper localhost:2181 --topic log
如果kafaka启动时加载的配置文件中server.properties没有配置"delete.topic.enable=true",那么此时的删除并不是真正的删除,而是把topic标记为删除:marked for deletion
8、发送一些消息
Kafka提供了一个命令行客户端,它将从文件或标准输入接收输入,并将其作为消息发送到Kafka集群。默认情况下,每行都将作为单独的消息发送。
运行生产者,然后在控制台中键入一些消息发送到服务器。
$ cd /usr/local/Cellar/kafka/1.1.0
第一种发送方案(优选):
$ ./bin/kafka-console-producer --broker-list localhost:9092 --topic test
第二种发送方案:
$ cd libexec
$ ./bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
(以上两种方案回车后,任意输入字符,可在消费者命令行查看以下信息)
> 第一条消息
> 第二条消息
9、消费消息 (新开一个窗口)
Kafka还有一个命令行消费者,将消息转储到标准输出。
$ cd /usr/local/Cellar/kafka/1.1.0
$ ./bin/kafka-console-consumer --bootstrap-server localhost:9092 --topic test --from-beginning
控制台输出信息:第一条消息
控制台输出信息:第二条消息
如果你有上面的每个命令运行在不同的终端,那么你现在应该能够输入消息到生产者终端,看到他们出现在消费者终端。
所有命令行工具都有其他选项; 运行没有参数的命令将显示详细记录它们的使用信息。