基于Docker部署Kafka 3.8.0并开启SASL认证的完整指南
创作时间:
作者:
@小白创作中心
基于Docker部署Kafka 3.8.0并开启SASL认证的完整指南
引用
CSDN
1.
https://blog.csdn.net/m0_54138989/article/details/145466250
本文将详细介绍如何在Docker环境下部署Kafka 3.8.0版本,并开启SASL认证模式。通过本文,读者将能够掌握从下载安装包、配置文件修改到服务启动和测试生产的完整流程。
1. 下载安装包
访问Kafka官方下载页面,下载Kafka 3.8.0版本的安装包。具体版本如下图所示:
2. 解压安装包
使用以下命令对下载的安装包进行解压:
tar -xvf kafka_2.13-3.8.0.tgz
3. 增加配置文件
3.1 配置Kafka服务器认证信息
进入Kafka配置目录:
cd kafka_2.13-3.8.0/config
创建kafka_server_jaas.conf文件,内容如下:
KafkaServer {
org.apache.kafka.common.security.plain.PlainLoginModule required
serviceName = "kafka3.8.0"
username="admin"
password="admin"
user_admin="admin"
user_alice="alice";
};
3.2 修改服务器属性文件
编辑server.properties文件,增加以下配置:
# 安全内部协议,指定使用SASL协议
security.inter.broker.protocol=SASL_PLAINTEXT
# SASL认证机制,默认使用PLAIN
sasl.mechanism.inter.broker.protocol=PLAIN
sasl.enabled.mechanisms=PLAIN
# 如果没有找到ACL(访问控制列表)配置,则允许任何操作。
allow.everyone.if.no.acl.found=false
# 超级管理员权限用户
super.users=User:admin
# 监听
listeners=SASL_PLAINTEXT://localhost:9092
# 这个地址是客户端用来连接到Kafka Broker的地址
advertised.listeners=SASL_PLAINTEXT://localhost:9092
3.3 配置客户端认证信息
创建kafka_consumer_jaas.conf文件,内容如下:
KafkaClient {
org.apache.kafka.common.security.plain.PlainLoginModule required
username="admin"
password="admin";
};
创建kafka_producer_jaas.conf文件,内容如下:
KafkaClient {
org.apache.kafka.common.security.plain.PlainLoginModule required
username="admin"
password="admin";
};
3.4 配置Topic认证信息
创建kafka_topic_jass.properties文件,内容如下:
security.protocol=SASL_PLAINTEXT
sasl.mechanism=PLAIN
sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="admin" password="admin";
3.5 修改生产者和消费者配置文件
在producer.properties文件末尾添加:
security.protocol=SASL_PLAINTEXT
sasl.mechanism=PLAIN
在consumer.properties文件末尾添加:
security.protocol=SASL_PLAINTEXT
sasl.mechanism=PLAIN
4. 修改启动脚本
4.1 修改Kafka服务器启动脚本
编辑kafka-server-start.sh脚本,在最上方添加:
export KAFKA_OPTS="-Djava.security.auth.login.config=/kafka_2.13-3.8.0/config/kafka_server_jaas.conf"
4.2 修改生产者控制台启动脚本
编辑kafka-console-producer.sh脚本,在最上方添加:
export KAFKA_OPTS=" -Djava.security.auth.login.config=/kafka_2.13-3.8.0/config/kafka_producer_jaas.conf"
4.3 修改消费者控制台启动脚本
编辑kafka-console-consumer.sh脚本,在最上方添加:
export KAFKA_OPTS=" -Djava.security.auth.login.config=/kafka_2.13-3.8.0/config/kafka_consumer_jaas.conf"
5. 启动Zookeeper服务
在Kafka根目录下执行:
./zookeeper-server-start.sh ../config/zookeeper.properties &
后台运行Zookeeper服务。使用以下命令检查Zookeeper是否正确启动:
lsof -i:2181
6. 启动Kafka服务
在Kafka根目录下执行:
./kafka-server-start.sh ../config/server.properties &
后台运行Kafka服务。使用以下命令检查Kafka是否正常启动:
lsof -i:9092
7. 创建Topic
执行以下命令创建Topic:
./kafka-topics.sh --create --bootstrap-server localhost:9092 --topic zhangsan --command-config ../config/kafka_topic_jass.properties
使用以下命令查询已创建的Topic列表:
./kafka-topics.sh --list --bootstrap-server localhost:9092 --command-config ../config/kafka_topic_jass.properties
8. 启动生产者测试发送数据
执行以下命令启动生产者:
./kafka-console-producer.sh --broker-list localhost:9092 --topic zhangsan --producer.config ../config/producer.properties
9. 启动消费者测试接收消息
执行以下命令启动消费者:
./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic zhangsan --consumer.config ../config/consumer.properties
通过以上步骤,读者可以成功在Docker环境下部署Kafka 3.8.0版本并开启SASL认证模式。希望本文对大家有所帮助!
热门推荐
张明教你如何玩转自驾游:高速 vs 国道
啤酒鸡翅的做法与技巧
上海中医范杰主任:探索中医治疗之道—详解慢阻肺的中医疗法
冬季膏方治疗慢性支气管炎
霍山石斛的特点、种植方法及功效作用
麦冬怎么吃?麦冬的多种吃法,看这篇就够了
厦门山海健康步道林海线二期天泉步道广场—盼归塔段游玩指南
中国标准服装尺码表解析:如何根据尺码选择合适的衣服
东北锅包肉:如何选材才能外酥里嫩?
秋冬必学:正宗东北锅包肉
燕山石化交出环保新答卷:VOC排放降14.5%,助力北京蓝天保卫战
《柘里寻根》带你探秘金山福禄背后的故事
福禄桐:真正的招财大王!
胸口憋闷总想长出气是怎么回事
燕山石化的环保创新之路:打造新时代高质量发展“新燕化”
燕山石化氢气提纯项目投产,华北最大燃料电池氢供应基地诞生
罗尔斯视角下的自尊伦理学解读
东西方自尊差异大揭秘:你更认同哪边?
日本最新研究:自尊心的文化差异揭秘
迷你枪战精英最强灵敏度设置攻略
探秘西藏:珠峰下的绝美风光
《凡人歌》看懂谢美蓝和沈磊离婚的原因,就知道婚姻的雷区是什么
人越是待在底层,处理人际关系的能力就越差,成大事的人在研究人
厦门:粉红“花海”迎春开 引客来
冬至羊肉汤的文化寓意与健康益处!
美学标准在建筑设计中的运用
中国摩天楼已超3000座,哪些城市在沉迷建楼?
365米!澳大利亚第一高楼,被誉为 “ 绿色脊柱 ”,2027年竣工完成
茶道与心理疗愈:在茶香中寻得宁静与力量
品味普洱茶的独特韵味:描述品茶时心情与感受的精彩语句