本部署使用的版本为kafka_2.8.0-0.8.0。
1.下载kafka_2.10-0.8.2.0.tgz
https://archive.apache.org/dist/kafka/0.8.0/kafka_2.10-0.8.2.0.tgz
2.解压缩
tar -vxf kafka_2.10-0.8.2.0.tgz
3.修改配置文件
修改conf/server.properties
host.name=127.0.0.1(修改为主机ip,不然服务器返回给客户端的是主机的hostname,客户端并不一定能够识别)
修改conf/zookeeper.properties 属性文件
dataDir=/usr/local/tmp/zookeeper (zookeeper临时数据文件)
4.启动zookeeper和kafka
cd bin
启动zookeeper
./zookeeper-server-start.sh ../config/zookeeper.properties & (&推出命令行,服务守护执行)
启动kafka
./kafka-server-start.sh ../config/server.properties &
5.验证是否成功
*创建主题
./kafka-create-topic.sh –partition 1 –replica 1 –zookeeper localhost:2181 –topic test
检查是否创建主题成功
./kafka-list-topic.sh –zookeeper localhost:2181
*启动produce
./bin/kafka-console-producer.sh –broker-list 127.0.0.1:9092 –topic test
*启动consumer
./kafka-console-consumer.sh –zookeeper localhost:2181 –topic test
6.关闭kafka和zookeeper
./kafka-server-stop.sh ../config/server.properties
./zookeeper-server-stop.sh
心得总结:
1.produce启动的时候参数使用的是kafka的端口而consumer启动的时候使用的是zookeeper的端口;
2.必须先创建topic才能使用;
3.topic本质是以文件的形式储存在zookeeper上的。
参考: