在CentOS 7.9上安装kafka

1、查看SpringBoot版本,下载对应的kafka
(1)我司用的是SpringBoot 2.0.2,那么kafka就应该下载2.1.x 版本
在这里插入图片描述
(2)kafka下载:https://kafka.apache.org/downloads
在这里插入图片描述
2、根据kafka版本选择对应的zookeeper
(1)下载kafka源码
在这里插入图片描述
(2)解压,找到下图文件
在这里插入图片描述
(3)打开文件查找zookeeper版本
在这里插入图片描述
(4)zookeeper下载:https://zookeeper.apache.org/doc/r3.4.1/releasenotes.html
在这里插入图片描述

3、安装JDK
(1)查看是否安装了JDK及其版本

java -version

(2)没有安装则进行安装
上传安装包到服务器,当前文件夹下使用如下命令安装

tar -zxvf 文件全名

(3)配置环境变量,编辑 /etc/profile文件:vi /etc/profile,再输入 i 进入文件编辑模式,在文件内容的最底下加上以下配置内容

#jdk
export JAVA_HOME=/usr/local/java/jdk1.8.0_121
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

在这里插入图片描述
然后按esc推出编辑,输入 :wq! 保存修改内容并退出

(4)输入命令以下命令使修改后的配置文件生效(重新加载配置文件)

source /etc/profile

4、安装zookeeper
(1)解压zookeeper到opt目录下

tar -zxf zookeeper-3.4.13.tar.gz -C /opt/

(2)修改zookeeper环境变量:vi /etc/profile

#zookeeper
export ZOOKEEPER_HOME=/opt/zookeeper-3.4.13
export PATH=$PATH:%ZOOKEEPER_HOME/bin
export ZO0 LOG DIR=/tem/zookeeper/log

在这里插入图片描述
(4)复制zookeeper配置文件

cd /opt/zookeeper-3.4.13/conf/
cp zoo_sample.cfg zoo.cfg

让修改过的配置文件生效:source /etc/profile

(5)启动
启动:/opt/zookeeper-3.4.13/bin/zkServer.sh start

查看状态:/opt/zookeeper-3.4.13/bin/zkServer.sh status

关闭:/opt/zookeeper-3.4.13/bin/zkServer.sh stop

5、安装kafka
(1)解压

tar -zxf kafka_2.12-2.1.1.tgz -C /opt/

(2)配置Kafka环境变量:vi /etc/profile

#kafka
export KAEKA_HOME=/opt/kafka_2.12-2.1.1
export PATH=$PATH:$KAFKA_HOME/bin

在这里插入图片描述
(3)修改kafka配置文件

vi /opt/kafka_2.12-2.1.1/config/server.properties

在这里插入图片描述
(4)让修改过的配置文件生效:source /etc/profile
(5)启动kafka:
(a)此启动,关闭窗口后,kafka会被关掉:

/opt/kafka_2.12-2.1.1/bin/kafka-server-start.sh /opt/kafka_2.12-2.1.1/config/server.properties

(b)nohup COMMAND > output.log 2>&1 &
这个是把标准输出和错误输出都一股脑地输出到output.log文件中。

nohup /opt/kafka_2.12-2.1.1/bin/kafka-server-start.sh /opt/kafka_2.12-2.1.1/config/server.properties > outup.log 2>&1 &

(c)nohup COMMAND > stdout.log 2> stderr.log &
会把COMMAND命令的标准输出输出到 stdout.log中,错误输出输出到 stderr.log中。

nohup /opt/kafka_2.12-2.1.1/bin/kafka-server-start.sh /opt/kafka_2.12-2.1.1/config/server.properties > nohup-kafka.log 2>&1 &

测试
创建1个分区,每个分区1个副本

./kafka-topics.sh --zookeeper localhost/myKafka --create --topic topic_1 --partitions 1 --replication-factor 1

查看分区信息

./kafka-topics.sh --zookeeper localhost/myKafka --list

查看topic_1信息

./kafka-topics.sh --zookeeper localhost/myKafka --describe --topic topic_1

创建5个分区,每个分区1个副本

./kafka-topics.sh --zookeeper localhost/myKafka --create --topic topic_2 --partitions 5 --replication-factor 1

打开新的命令窗口,开启消费消息

cd /opt/kafka_2.12-1.0.2/bin/
./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic topic_1

在这里插入图片描述

打开新的命令窗口,开启发送消息

cd /opt/kafka_2.12-1.0.2/bin/
./kafka-console-producer.sh --broker-list localhost:9092 --topic topic_1

在这里插入图片描述
在生产者窗口输入什么,消费者端就会打印什么。

问题:阿里云上安装好了kafka,外网为何不能访问?
1.安装了kafka的阿里云服务器关闭防火墙
2.端口加白:9092(kafka),2181(zookeeper)
3.修改kafka配置文件
listeners=PLAINTEXT://127.0.0.1:9092
advertised.listeners=PLAINTEXT://127.0.0.1:9092

zookeeper增加ip白名单
https://avoid.overfit.cn/post/5c99a73c073b40c1bde5fd1fd32cf7fe

1.进入zk客户端
输入命令:./bin/zkCli.sh -server[address]:[client_port]
例如:./bin/zkCli.sh -server[127.0.0.1]:[2181]

2.查看zk当前访问权限
输入命令:getAcl /
输出:‘’World,”anyone:cdrwa //表示所有用户都有权限

3.设置白名单ip网络段(zk版本要求3.5以上,一定要将127.0.0.1添加到ip白名单过滤)
输入命令:setAcl / ip:[ipaddress]:cdrwa,ip:127.0.0.1:cdrwa
例如:setAcl / ip:..*.224/27:cdrwa,ip:127.0.0.1:cdrwa

4.查看设置是否成功:getAcl /

5.如果要恢复所有ip皆可访问,则执行:setAcl / world:anyone:cdrwa

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

二次觉醒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值