前言
博主全程root用户操作,不是root请加sudo
一、部署所需
1.java(教程)
二、环境配置
systemctl disable --now firewalld # 防火墙关闭,如果是云服务器安全组记得放行
setenforce 0 # selinux关闭
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/sysconfig/selinux
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config
yum install wget tar vim net-tools curl -y # 常用插件安装
三、部署流程
1.环境配置
新建文件存放目录:
mkdir -p /data/kafka
下载解压kafka文件压缩包:
(如果链接过期,官网下载即可)
cd /data/kafka
wget https://mirrors.bfsu.edu.cn/apache/kafka/2.6.0/kafka_2.13-2.6.0.tgz
tar -zxvf kafka_2.13-2.6.0.tgz
2.部署启动zookeeper
配置文件生成修改:
cd /data/kafka/kafka_2.13-2.6.0/config
cat zookeeper.properties | grep -v '#' >> zk.properties
vim zk.properties
dataDir=/data/zk/ #日志路径,可随便自定义
clientPort=2181 #可自定义,如果为云服务器,记得端口放行
maxClientCnxns=0
admin.enableServer=false
启动zookeeper:
cd .. #返回kafka_2.13-2.6.0
./bin/zookeeper-server-start.sh config/zk.properties #要后台运行请加&,退出终端时使用exit
3.部署启动kafka
配置文件生成修改:
cd /data/kafka/kafka_2.13-2.6.0/config
cat server.properties | grep -v '#' >> ka.properties
mkdir /data/kafka-logs
vim ka.properties #除了下面这两条需要设置,其他默认
log.dirs=/data/kafka-logs #文件夹一定要为空,否则会无法启动
listeners=PLAINTEXT://机器ip:9092 #这条需添加,否则后端无法访问
启动zookeeper:
cd ..
./bin/kafka-server-start.sh config/ka.properties #要后台运行请加&,退出终端时使用exit
三、基本使用
1.创建topic及查看
./bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test #test为topic名
./bin/kafka-topics.sh --list --zookeeper localhost:2181 #查看已存在所有topic
2.以生产者身份进入
./bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test #连接后发布消息消费者即可看见
3.以消费者身份进入
./bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test #连接后生产者发布消息即可看见
./bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning #查看生产者消息历史记录