Linux软件安装 —— kafka集群安装(SASL密码验证)

文章目录


一、节点说明

IP 主机名 软件
192.168.10.102 node02 jdk,zookeeper,kafka
192.168.10.103 node03 jdk,zookeeper,kafka
192.168.10.104 node04 jdk,zookeeper,kafka

二、JDK安装

参考本人此篇文章:Linux软件安装 ------ JDK安装


三、Zookeeper安装

参考本人此篇文章:Linux软件安装 ------ zookeeper集群安装


四、kafka安装

1、软件下载

下载地址:https://kafka.apache.org/community/downloads/

本文采用:kafka_2.12-2.7.2.tgz

2、基础环境准备

(1)上传并解压

shell 复制代码
# 解压到安装目录
tar -zxvf kafka_2.12-2.7.2.tgz -C /opt/module/

# 修改名称
mv kafka_2.12-2.7.2/ kafka

(2)配置环境变量

shell 复制代码
vim /etc/profile.d/my_env.sh
# kafka
export KAFKA_HOME=/opt/module/kafka
export PATH=$PATH:$KAFKA_HOME/bin

# 分发到node03,node04
scp /etc/profile.d/my_env.sh root@node03:/etc/profile.d
scp /etc/profile.d/my_env.sh root@node04:/etc/profile.d

# 分别使环境变量生效
source /etc/profile.d/my_env.sh

3、修改配置

(1)修改server配置

bash 复制代码
vim /opt/module/kafka/config/server.properties

# 修改如下配置
broker.id=2

listeners=SASL_PLAINTEXT://0.0.0.0:9092
advertised.listeners=SASL_PLAINTEXT://node02:9092

###### SASL ######
security.inter.broker.protocol=SASL_PLAINTEXT
sasl.enabled.mechanisms=PLAIN
sasl.mechanism.inter.broker.protocol=PLAIN
authorizer.class.name=kafka.security.auth.SimpleAclAuthorizer
super.users=User:admin
allow.everyone.if.no.acl.found=false

log.dirs=/opt/module/kafka/logs

zookeeper.connect=node02:2181,node03:2181,node04:2181
zookeeper.set.acl=false
zookeeper.sasl.client=false
zookeeper.connection.timeout.ms=18000

(2)配置kafka服务端密码

shell 复制代码
# 创建
vim /opt/module/kafka/config/kafka-server-jaas.conf
KafkaServer {
        org.apache.kafka.common.security.plain.PlainLoginModule required
        username="admin"
        password="admin_123456"
        user_admin="admin_123456";
};

# 应用
vim /opt/module/kafka/bin/kafka-server-start.sh
# 倒数第二行添加
export KAFKA_OPTS="-Djava.security.auth.login.config=/opt/module/kafka/config/kafka-server-jaas.conf"

(3)配置kafka客户端密码

shell 复制代码
# 创建
vim /opt/module/kafka/config/kafka-client-jaas.conf
KafkaClient {
        org.apache.kafka.common.security.plain.PlainLoginModule required
        username="admin"
        password="admin_123456";
};

# 应用(生产者、消费者都需要)
vim /opt/module/kafka/bin/kafka-console-consumer.sh
# 倒数第二行添加
export KAFKA_OPTS="-Djava.security.auth.login.config=/opt/module/kafka/config/kafka-client-jaas.conf"

vim /opt/module/kafka/bin/kafka-console-producer.sh
# 倒数第二行添加
export KAFKA_OPTS="-Djava.security.auth.login.config=/opt/module/kafka/config/kafka-client-jaas.conf"

4、分发kafka

(1)将node02 kafka分发到node03,node04

shell 复制代码
scp -r /opt/module/kafka/ root@node03:/opt/module/
scp -r /opt/module/kafka/ root@node04:/opt/module/

(2)修改node03配置

shell 复制代码
vim /opt/module/kafka/config/server.properties

# 修改以下内容
broker.id=3
listeners=SASL_PLAINTEXT://0.0.0.0:9092
advertised.listeners=SASL_PLAINTEXT://node03:9092

(3)修改node04配置

shell 复制代码
vim /opt/module/kafka/config/server.properties

# 修改以下内容
broker.id=4
listeners=SASL_PLAINTEXT://0.0.0.0:9092
advertised.listeners=SASL_PLAINTEXT://node04:9092

5、启动kafka

(1)启动Zookeeper

shell 复制代码
# 启动命令:在三个节点分别执行
zkServer.sh start

# 查看集群状态
zkServer.sh status

# 停止命令:在三个节点分别执行
zkServer.sh stop

(2)启动kafka

shell 复制代码
# 启动命令:在三个节点分别执行
kafka-server-start.sh -daemon /opt/module/kafka/config/server.properties

# 停止命令
kafka-server-stop.sh

6、远程连接

本文采用kafka tool连接


shell 复制代码
# 连接信息
org.apache.kafka.common.security.plain.PlainLoginModule required username="admin" password="admin_123456";
相关推荐
努力的小帅2 小时前
Linux_多线程(Linux入门到精通)
linux·多线程·多进程·线程同步·线程互斥·生产消费者模型
晴天¥2 小时前
操作系统由MBR->GPT,导致系统黑屏是怎么回事?
linux
w***76552 小时前
临时文件自动化管理:高效安全新方案
运维·安全·自动化
Volunteer Technology2 小时前
Nginx部署静态项目
运维·服务器·nginx
王九思2 小时前
Linux cgroup 简介
linux·运维·服务器
乾元2 小时前
智能化侦察:利用 LLM 进行自动化资产暴露面识别与关联
运维·网络·人工智能·网络协议·安全·自动化
行业探路者2 小时前
如何利用二维码提升富媒体展示的效果?
大数据·人工智能·学习·产品运营·软件工程
皓月盈江2 小时前
个人计算机Linux Debian桌面操作系统上网安全防护措施
linux·ubuntu·网络安全·debian·桌面操作系统·上网安全防护措施
填满你的记忆2 小时前
【从零开始——Redis 进化日志|Day5】分布式锁演进史:从 SETNX 到 Redisson 的完美蜕变
java·数据库·redis·分布式·缓存