CentOS7搭建Kafka单机环境及基础操作
前提
安装Kafka前需要先安装zookeeper集群,集体安装方法请参照我的另一篇文档。
Kafka安装
下载
wget https://archive.apache.org/dist/kafka/0.8.0/kafka_2.8.0-0.8.0.tar.gz
解压
tar -zxvf kafka_2.8.0-0.8.0.tar.gz
移动文件夹
mv kafka_2.8.0-0.8.0 /usr/local/hadoop/
修改配置
cd /usr/local/hadoop/kafka_2.8.0-0.8.0/config
vim server.properties
参照下图信息修改
配置IP
配置日志地址
配置zookeeper 地址
Kafaka操作
启动kafka server
bin/kafka-server-start.sh config/server.properties
创建主题
./kafka-create-topic.sh --partition 1 --replica 1 --zookeeper 192.168.174.200:2181,192.168.174.201:2181 --topic test
检查主题是否创建成功
./kafka-list-topic.sh --zookeeper 192.168.174.200:2181,192.168.174.201:2181
启动producer
./kafka-console-producer.sh --broker-list 192.168.174.200:9092 --topic test
输入hello后,回车 ,然后另外打开一个shell终端 启动consumer
./kafka-console-consumer.sh --zookeeper 192.168.174.200:2181,192.168.174.201:2181 --topic test
关闭kafka
./kafkastop.sh
新版本命令
---new version--
./kafka-topics.sh --create --zookeeper 192.168.174.200:2181,192.168.174.201:2181 --replication-factor 1 --partitions 1 --topic test
./kafka-topics.sh --list --zookeeper 192.168.174.200:2181,192.168.174.201:2181
./kafka-console-producer.sh --broker-list 192.168.174.200:9092 --topic test
./kafka-console-consumer.sh --zookeeper 192.168.174.200:2181,192.168.174.201:2181 --topic test --from-beginning
附:有可能遇到的问题和解决方案
问题1: Failed to acquire lock on file .解决方案:
这是因为之前已经有kafka进程在运行,可以如下:
通过jps命令查看进程号,并kill掉,然后重新启动kafka即问题解决
问题2:BindException: Address already in use
解决方案:
这个有时可以忽略,只要最后成功启动了kafka就可以,也可以将server.properties下的2181的端口号换一下,这个报错是因为2181端口被占用了。