Centos8安装kafka【单机版】
kafka自2.8.0版本开始,不再将zookeeper作为必需组件,本文的实验环境为kafka2.4.0,因此在安装kafka之前,首先需要安装zookeeper。
1. 下载kafka与zookeeper
kafka下载地址
需要下载与kafka版本对应的zookeeper版本,进入kafka安装包的libs目录,查看对应zookeeper依赖。
cd /usr/local/src/
wget https://archive.apache.org/dist/kafka/2.4.0/kafka_2.12-2.4.0.tgz
tar -zxvf kafka_2.12-2.4.0.tgz
# 查看版本:
cd kafka_2.12-2.4.0/libs
ls | grep zookeeper

可以看到,2.4.0版本的kafka依赖的zookeeper的版本为3.5.6。
zookeeper下载镜像地址:https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/
2. 安装zookeeper
2.1 解压zookeeper
tar -zxvf apache-zookeeper-3.5.6-bin.tar.gz
2.2 修改配置文件
cd /usr/local/src/apache-zookeeper-3.5.6-bin/conf
cp zoo_sample.cfg zoo.cfg
2.3 启动测试
cd /usr/local/src/apache-zookeeper-3.5.6-bin/bin
# 启动
./zkServer.sh start
# 停止
./zkServer.sh stop

2.4 将zookeeper启动命令加入环境变量
vi /etc/profile
export PATH=$PATH:/usr/local/src/apache-zookeeper-3.5.6-bin/bin
source /etc/profile
3. 配置kafka
vi /usr/local/src/kafka_2.12-2.4.0/config/server.properties
//如果只允许本地访问 则用localhost,如果需要外网可以访问则用服务器地址,即安装kafka的主机ip,我是在虚拟机上安装,故填虚拟机IP:192.168.29.128
listeners=PLAINTEXT://192.168.29.128:9092
//dataDir是数据存放位置,默认是/tmp/kafka-logs
# dataDir=xxxx
//这个是删除topic时才用得到的,如果不想删除topic,可以不加
# delete.topic.enable=true
4. 启动kafka
进入bin目录
前台启动
kafka-server-start.sh ../config/server.properties
后台启动
nohup kafka-server-start.sh ../config/server.properties >> /dev/null &
5. 创建topic
进入bin目录
./kafka-topics.sh --create --replication-factor 1 --partitions 1 --topic test --zookeeper localhost:2181
--zookeeper后面的参数需要与server.properties配置中的一致,server.properties在config目录下,见下图
6. 发送接收消息
以下操作均在bin目录下进行
6.1 创建生产者
kafka-console-producer.sh --broker-list localhost:9092 --topic test

6.2 创建消费者
kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning

6.3 为kafka配置系统环境变量
vi /etc/profile
export PATH=$PATH:/usr/local/src/kafka_2.12-2.4.0/bin
source /etc/profile
补充
kafka的一些操作
kafka主题
kafka-topics.sh
生产者
kafka-console-producer.sh
消费者
kafka-console-consumer.sh
topic的一些操作
查看列表
kafka-topics.sh --zookeeper 127.0.0.1:2181 --list
创建topic
kafka-topics.sh --create --replication-factor 1 --partitions 1 --topic test --zookeeper localhost:2181
查看某个topic
kafka-topics.sh --zookeeper localhost:2181 --describe --topic test
删除topic(分两步)
(第一步)
kafka-topics.sh --delete --zookeeper localhost:2181 --topic test
(第二步 找到top存放位置:server.properties中dataDir)
cd /tmp/kafka-logs
删除 test-0(如果kafka配置文件中delete.topic.enable=true没有设置的话,需要手动删除目录)
rm -rf test-0
参考文章:
https://blog.csdn.net/qq_34892981/article/details/110668529
推荐一个kafka的可视化工具,地址如下:
https://www.cnblogs.com/miracle-luna/p/11299345.html
分类: Linux

浙公网安备 33010602011771号