systemctl stop firewalld.service
systemctl disable firewalld.service
安装JDK
yum install -y http://172.16.20.10/Oracle/JAVA/8/8u202/jdk-8u202-linux-x64.rpm
下载并解压Kafka
cd /srv/ curl -O http://mirrors.tuna.tsinghua.edu.cn/apache/kafka/2.2.1/kafka_2.12-2.2.1.tgz tar -xzf kafka_2.12-2.2.1.tgz ln -s kafka_2.12-2.2.1 kafka rm -rf kafka_2.12-2.2.1.tgz
将/srv/kafka/bin目录添加到PATH环境变量
cat > /etc/profile.d/kafka.sh << EOF export PATH=/srv/kafka/bin:\$PATH EOF source /etc/profile.d/kafka.sh
安装net-tools(netstat检测端口需要用到,如已安装请跳过)
yum install -y net-toos
启动zookeeper(启动比较慢,启动后检查2181端口)
zookeeper-server-start.sh -daemon /srv/kafka/config/zookeeper.properties netstat -anlpt | grep 2181
启动kafka-server(默认端口是 9092)
kafka-server-start.sh -daemon /srv/kafka/config/server.properties netstat -anlpt | grep 9092
配置开机启动(zookeeper启动比较慢,导致启动kafka-server失败,暂时CentOS重启后需要手动启动zookeeper和kafka-server,后面再研究开机启动shell)
cat >> /etc/profile.d/kafka.sh << EOF zookeeper-server-start.sh -daemon /srv/kafka/config/zookeeper.properties kafka-server-start.sh -daemon /srv/kafka/config/server.properties EOF source /etc/profile.d/kafka.sh
测试生产和消费消息
# 创建test topic kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic test # 获取所有topic kafka-topics.sh --list --bootstrap-server localhost:9092 # 生产消息(进入交互模式输入消息内容,Ctrl + C 退出) kafka-console-producer.sh --broker-list localhost:9092 --topic test # 消费消息(进入交互模式获取消息内容,Ctrl + C 退出) kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
参考链接:
http://kafka.apache.org/quickstart
https://www.cnblogs.com/mascot1/p/9940666.html