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 年无价清单)
硝酸甘油用对了才救命
关于“救命药”硝酸甘油片的8个错误用法
常饮柠檬水益处多具体有哪些好处需注意什么
酒店运营:房务部 (Housekeeping Department)
如何做好客服团队管理
地球的真实年龄,真的是45.5亿年吗?看完你就懂了
周五早安心语:正能量满满!
冬日暖心早安心语:每天清晨的美好祝福
励志早安心语:阳光照亮你的每一天
杭州9处特色景点全攻略:从钱王祠到九曜山,领略不一样的杭州之美
浙江旅游景点推荐
大数据揭秘2025年春节档:票房突破85亿,电影产业迎来新变革
健身不再盲目,创建个人化的锻炼计划指南
孩子老是打嗝怎么办呢
打嗝受阻胸闷?原因、缓解与日常注意事项!
达蓬山旅游度假区新春游园会:传统年味与现代游乐的完美融合