docker-compose部署 Kafka 3.7 启用账号密码认证
创作时间:
作者:
@小白创作中心
docker-compose部署 Kafka 3.7 启用账号密码认证
引用
CSDN
1.
https://blog.csdn.net/xingzuo_1840/article/details/139339490
本文将详细介绍如何使用docker-compose部署Kafka 3.7,并启用账号密码认证。通过本文,你将学会如何创建Kafka的工作目录、编写docker-compose配置文件,以及如何进行权限测试。
1. 部署
1.1 创建工作目录
- 创建
kafka目录,进入该目录
1.2 yml文件
1)文件内容
创建docker-compose.yml 文件,内容如下:
version: "3"
services:
kafka:
image: 'bitnami/kafka:3.7.0'
user: root
ports:
- '9092:9092'
environment:
- TZ=Asia/Shanghai
- KAFKA_CFG_PROCESS_ROLES=broker,controller
- BITNAMI_DEBUG=true
- ALLOW_PLAINTEXT_LISTENER=no
- KAFKA_CFG_CONTROLLER_LISTENER_NAMES=CONTROLLER
- KAFKA_CFG_NUM_PARTITIONS=1
- KAFKA_CFG_LISTENERS=INTERNAL://:9094,CLIENT://:9095,CONTROLLER://:9093,EXTERNAL://:9092
- KAFKA_CFG_ADVERTISED_LISTENERS=INTERNAL://10.10.181.199:9094,CLIENT://:9095,EXTERNAL://10.10.181.199:9092
- KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP=INTERNAL:SASL_PLAINTEXT,CLIENT:SASL_PLAINTEXT,CONTROLLER:PLAINTEXT,EXTERNAL:SASL_PLAINTEXT
- KAFKA_CFG_INTER_BROKER_LISTENER_NAME=INTERNAL
- KAFKA_CFG_SASL_MECHANISM_INTER_BROKER_PROTOCOL=PLAIN
- KAFKA_CFG_SASL_ENABLED_MECHANISMS=PLAIN
- KAFKA_CLIENT_USERS=liu_bei
- KAFKA_CLIENT_PASSWORDS=liubei@161
- KAFKA_INTER_BROKER_USER=liu_bei
- KAFKA_INTER_BROKER_PASSWORD=liubei@161
- KAFKA_CFG_NODE_ID=1
- KAFKA_CFG_CONTROLLER_QUORUM_VOTERS=1@127.0.0.1:9093
- KAFKA_KRAFT_CLUSTER_ID=xishu
- KAFKA_OPTS=-Djava.security.auth.login.config=/bitnami/kafka/data/kafka_server_jaas.conf
volumes:
- ./data:/bitnami/kafka/data:rw
2)说明:
- KAFKA_CFG_PROCESS_ROLES:kafka扮演角色:broker 和 controller,即代表使用raft模式
- BITNAMI_DEBUG=true:控制台打印日志
- ALLOW_PLAINTEXT_LISTENER=no:Kafka 不允许使用非加密的(即明文的)监听器(listener)来接受客户端连接
- KAFKA_CFG_CONTROLLER_LISTENER_NAMES:控制器名称 对应下面CONTROLLER://:9093
- KAFKA_CFG_NUM_PARTITIONS:默认分区数
- KAFKA_CFG_LISTENERS:监听器的地址和端口
- KAFKA_CFG_ADVERTISED_LISTENERS:发布监听器的地址和端口
- KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP:定义监听器所使用的不同协议
- KAFKA_CFG_INTER_BROKER_LISTENER_NAME:指定了 Kafka broker 之间进行通信时所使用的监听器的名称
- KAFKA_CFG_SASL_MECHANISM_INTER_BROKER_PROTOCOL:指定了 Kafka broker 之间通信时所使用的 SASL 认证机制,为PLAIN
- KAFKA_CFG_SASL_ENABLED_MECHANISMS:指定了 Kafka broker 支持哪些 SASL 认证机制
- KAFKA_CLIENT_USERS:客户端账号(必须是已经创建的)
- KAFKA_CLIENT_PASSWORDS:客户端用户的密码
- KAFKA_INTER_BROKER_USER:内部broker之间通信账号(必须是已经创建的)
- KAFKA_INTER_BROKER_PASSWORD:内部broker之间通信密码
- KAFKA_CFG_NODE_ID:节点ID (如果多个节点,每个节点不相同)
- KAFKA_CFG_CONTROLLER_QUORUM_VOTERS:定义了哪些 broker 将参与控制器的选举
- KAFKA_KRAFT_CLUSTER_ID:集群id(所有节点相同)
- KAFKA_OPTS:指定JAAS配置文件路径
1.3 启动
[root@liubei kafka]# docker-compose up -d
[root@liubei kafka]# docker-compose ps
Name Command State Ports
-------------------------------------------------------------------------------
kafka_kafka_1 /opt/bitnami/scripts/kafka ... Up 0.0.0.0:9092->9092/tcp
2. 测试
2.1 kafkamap搭建(测试工具)
- 创建
kafkamap目录,进入该目录 - 创建
docker-compose.yml文件如下
version: "3"
services:
kafka_map:
image: dushixiang/kafka-map:latest
environment:
- DEFAULT_USERNAME=liubei
- DEFAULT_PASSWORD=liubei@161
ports:
- '8080:8080'
2.2 权限测试
- web登录:http://IP:8080
- 创建连接
- 链接创建成功
- 创建topic
- topic 创建成功
热门推荐
爱旭股份:预计2024年亏损47.5亿元-58.5亿元
港股手续费计算指南:方法详解与实际应用价值
锅炉水的pH值标准范围及控制方法
矿泉水与纯净水:从源头到口感的全面解析
调查显示:80%人的早餐都吃错了!营养专家推荐“万能早餐公式”!
手机通信记录和聊天记录能否作为证据?法律专家解读
车子补漆选择4S店还是修理店?内行人揭秘省钱诀窍!
汽车补漆的价格受哪些因素影响?怎样合理估算汽车补漆费用?
霍尔传感器在电动自行车中的应用
降0.1料肉比=省100元?养猪户逆袭秘籍曝光
55分贝噪音有多大?不同环境下的噪音标准是什么?
辛云来新剧整容式人设 古装造型引热议
精益管理的八步法
马德里国际纵队的都是外国人?简单分析一下,它的人员来源!
斜视是怎么形成的
公共厕所隔断的设计与功能:如何提升公共空间的隐私与卫生
厕所阴气过重怎么化解
胃苓汤组成及临床应用
普洱茶籽油的提取时间与选购指南:全方位解答您的疑问
“微信换现”藏猫腻,菏泽鲁西新区警方速破盗现案
电源金牌铜牌是什么意思?如何区分电源的等级?
港交所优化股份交收费结构,新规则下的省钱小技巧
50岁女性出现下腹痛应如何处理
重新定义周末的意义!让孩子回归自然,在探索中学习成长
炎炎夏日 当心冰品背后的健康隐患
汽车喇叭的工作原理详解
汽车喇叭系列详解:从传统到智能化的演变
红花茶搭配指南:红茶、绿茶与红花是否能共同泡制及功效解析
站桩这样站,一年顶十年!
EPO在什么情况下使用