Kafka(3) - 安装和使用
Kafka(三) -- 安装和使用
以下我们分五个步骤来说明 Kafka 系统的安装和使用(命令行方式)
(一)下载代码
下载链接:
https://www.apache.org/dyn/closer.cgi?path=/kafka/0.9.0.0/kafka_2.11-0.9.0.0.tgz
下载后解压:
tar -xzf kafka_2.11-0.9.0.0.tgz cd kafka_2.11-0.9.0.0
(二)启动服务
Kafak 使用 ZooKeeper 管理,所以如果没有的话就先启动一个 ZooKeeper。可以通过如下脚本启动一个临时单点 ZooKeeper 实例:
bin/zookeeper-server-start.sh config/zookeeper.properties &
现在启动 Kafka 服务
bin/kafka-server-start.sh config/server.properties &
通过 jps 命令可以看到系统中多了两个 java 进程:
jps 33160 QuorumPeerMain (临时单点 ZooKeeper 进程) 33294 Kafka (Kafka 节点实例进程)
(三)创建主题
我们来创建一个叫“test”的主题,只配置一个划分和一个副本:
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
我们可以用 list topic 命令查看当前的 topic:
bin/kafka-topics.sh --list --zookeeper localhost:2181 2>/dev/null test
这里加 2>/dev/null 是为了把日志信息过滤走,不然日志信息和标准输出在一起,不太容易看结果。
上面是手动创建主题,也可以配置 broker 自动创建主题。
(四)发布消息
Kafka 提供一个发消息的命令行客户端,从文件或标准输入中接收消息发送给 Kafka 集群。默认情况下一行算成一个消息。
这样操作来启动一个生产者(producer)并发送消息:
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test This is a message This is another message
(五)接收消息
Kafka 也提供了一个消费者命令行,用于接收消息并显示到标准输出。
bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning This is a message This is another message
如果你开了两个终端,分别启动了一个生产者和一个消费者,你就可以在这两个终端上进行单向聊天了。
本节我们启动了一个 Kafka 实例,而 Kafka 真正强大的地方是支持一个集群,集群中可以配置若干个实例,一个节点倒下去,另一个节点就站起来。在下一节中我们来具体介绍如何创建多实例集群。