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";
相关推荐
切糕师学AI2 分钟前
深入解析 Zsh 与 Oh-My-Zsh:打造高效现代化终端
linux·终端·zsh
CS创新实验室1 小时前
CS实验室行业报告:生物医药与生物工程行业就业分析报告
大数据·人工智能·生物医药
切糕师学AI1 小时前
Ubuntu 下 Git 完全使用指南
linux·git·ubuntu
草履虫君1 小时前
VMware 虚拟机网络性能优化指南:从 11 秒到 4 秒的完整调优实践
服务器·网络·经验分享·性能优化
日取其半万世不竭1 小时前
LVM 逻辑卷管理:不停机扩容磁盘的正确方式
运维·服务器
身如柳絮随风扬1 小时前
多数据源切换实战:从业务场景到3种实现方案全解析
java·分布式·微服务
优化Henry1 小时前
TDD-LTE站点Rilink=3链路故障处理案例---BBU侧C口“有发光、无收光”的排查与恢复
运维·网络·信息与通信·tdd
浪客灿心1 小时前
Linux网络传输层协议
linux·运维·网络
舟遥遥娓飘飘2 小时前
Nexus4CC 手机电脑同步claude code对话部署教程(基于linux系统)
linux·智能手机·电脑
V搜xhliang02462 小时前
OpenClaw科研全场景用法:从文献到实验室的完整自动化方案
运维·开发语言·人工智能·python·算法·microsoft·自动化