安装条件:
确保zookeeper已经安装成功。zookeeper安装过程见:上篇,或者https://www.cnblogs.com/expiator/p/9853378.html
1.下载kafka
进入Apache官网 http://kafka.apache.org/downloads.html
选择Binary downloads,选择版本进行下载。
也可以直接用以下命令下载:
wget http://apache.01link.hk/kafka/2.0.0/kafka_2.11-2.0.0.tgz
2.解压下载的kafka
cd /usr/local
tar -xzf kafka_2.11-2.0.0.tgz cd kafka_2.11-2.0.0
3. 启动服务
3.1 启动zookeeper
启动zk有两种方式,第一种是使用kafka自己带的一个zk。
bin/zookeeper-server-start.sh config/zookeeper.properties
另一种是使用其它的zookeeper,可以位于本机也可以位于其它地址。
这种情况需要修改config下面的sercer.properties里面的zookeeper地址 。例如zookeeper.connect=192.168.213.11:2181
成功启动zookeeper后才可以启动kafka。
3.2 启动 kafka
bin目录:./kafka-server-start.sh ../config/server.properties
此命令为控制台启动,控制台关闭即停止kafka应用
后台启动命令:
4.创建topic (下文中localhost酌情替换为正确的zk地址或者kafka地址)
[root@bogon kafka_2.11-2.0.0]#
bin目录下:./kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
创建一个名为test的topic,只有一个副本,一个分区。
通过list命令查看刚刚创建的topic
bin目录下
./kafka-topics.sh -list -zookeeper localhost:2181
5.启动producer并发送消息启动producer
[root@bogon kafka_2.11-2.0.0]#
bin目录下
./kafka-console-producer.sh --broker-list localhost:9092 --topic test
启动之后就可以发送消息了
比如
test
hello boy
6.然后在另一个终端中,启动consumer
以下是旧版本的命令:
bin目录下:./kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning
报错:consumer zookeeper is not a recognized option
发现在启动的时候说使用 --zookeeper是一个过时的方法,最新的版本中命令如下:
bin目录下:./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
启动consumer之后就可以在console中看到producer发送的消息了
可以开启两个终端,一个发送消息,一个接受消息。