第一步:下载kafka安装包
下载地址:http://kafka.apache.org/downloads
解压 到/usr/local 目录
tar -zxvf kafka_2.12-2.2.0
第二步 下载zookeerper(之所以下载 是因为我使用kafka自带的 会出错)
下载地址:http://zookeeper.apache.org/
第三布:安装 zookeerper
解压 tar -zxvf zookeeper-3.4.13
编辑 conf 下的zoo_sample.cfg 文件
dataDir=/usr/local/zookeeper_data
在 /usr/local 目录下创建zookeeper_data目录
授权 chmod 755 zookeeper_data
将zoo_sample.cfg 重命名 zoo_cfg 不然启动会出错
mv zoo_sample.cfg zoo_cfg
第四步: 启动 zookeerper
bin/zkServer.sh start
查看 启动状态
bin/zkServer.sh status
单机启动
这个时候用window dos命令 telnet 该服务器 2181 端口 会发现已经通了
第五步:安装 kafka
编辑 kafka目录下config文件夹下的server.properties
advertised.listeners 替换为你服务器ip
注意 listeners=PLAINTEXT://localhost:9092 不要修改为你服务器ip 会启动出错
第六步:启动 kafka
由于之前已经启动了zookeeper 所以这个时候启动kafka 时不会再使用kafka自带的zookeeper
启动:bin/kafka-server-start.sh config/server.properties &
一般都会成功!
测试:
打开两个Xshell 端口
一个发送消息:bin/kafka-console-producer.sh --broke-list 47.110.46.94:9092 --topic test
另一个接受消息:bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
.............................................................................................................................................................
按照过程中出现的问题
本来安装给kafka是件很简单是事情,如果过程中出现一个错误,可能就会浪费你半天甚至一天时间去百度解决,如果找不到答案会很失望。
1、刚开始安装kafka 直接启动 bin/kafka-server-start.sh config/server.properties & 发现2181 这个端口连接不上
在本地window dos命令行用telnet 不通,使用netstat -nltup查看监听状态 发现没有服务监听2181 端口
于是重新去官网下载zookeeper 然后启动zookeeper 这个时候才telnet 通,接下来启动kafka 就顺利启动了。
2、在另一端运行命令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