当前位置: 首页 > article >正文

Kafka集群部署(docker容器方式)SASL认证(zookeeper)

一、服务器环境

序号

部署版本

版本

1

操作系统

CentOS Linux release 7.9.2009 (Core)

2

docker

Docker version 20.10.6

3

docker-compose

docker-compose version 1.28.2

 二、服务规划

序号

服务

名称

端口

1

zookeeper

zookeeper

2181,2888,3888

2

kafka

kafka

9092:9092

 三、部署kafka

1、创建/opt/beidousky/kafka-zk目录,添加docker-compose.yaml文件

version: "3"
services:zookeeper-sasl:image: zookeeper:3.6.3container_name: zookeeper-sasluser: rootrestart: alwaysports:- 2181:2181- 2888:2888- 3888:3888environment:ZOO_MY_ID: 1TZ: Asia/Shanghaivolumes:- ./zk-conf/zoo.cfg:/conf/zoo.cfg- ./zk-conf/zookeeper_server_jaas.conf:/conf/zookeeper_server_jaas.conf- ./zk-conf/java.env:/conf/java.env- ./zk-data/data:/data- ./zk-data/datalog:/datalog- ./zk-data/logs:/logskafka:image: wurstmeister/kafka:2.13-2.8.1container_name: kafkadepends_on:- zookeeper-saslports:- 9092:9092volumes:- ./kafka-data:/kafka- ./kafka-conf:/opt/kafka/secrets/environment:KAFKA_BROKER_ID: 0KAFKA_ADVERTISED_PORT: 9092#KAFKA_ADVERTISED_LISTENERS: SASL_PLAINTEXT://192.168.1.244:9092KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://192.168.1.244:9092#KAFKA_LISTENERS: SASL_PLAINTEXT://0.0.0.0:9092KAFKA_LISTENERS: PLAINTEXT://0.0.0.0:9092#KAFKA_SECURITY_INTER_BROKER_PROTOCOL: SASL_PLAINTEXTKAFKA_PORT: 9092#KAFKA_SASL_MECHANISM_INTER_BROKER_PROTOCOL: PLAIN#KAFKA_SASL_ENABLED_MECHANISMS: PLAIN#KAFKA_AUTHORIZER_CLASS_NAME: kafka.security.auth.SimpleAclAuthorizer#KAFKA_SUPER_USERS: User:adminKAFKA_ALLOW_EVERYONE_IF_NO_ACL_FOUND: "true" #设置为true,ACL机制为黑名单机制,只有黑名单中的用户无法访问,默认为false,ACL机制为白名单机制
,只有白名单中的用户可以访问KAFKA_ZOOKEEPER_CONNECT: 192.168.1.244:2181KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1KAFKA_GROUP_INITIAL_REBALANCE_DELAY_MS: 0KAFKA_HEAP_OPTS: "-Xmx512M -Xms16M"KAFKA_OPTS: -Djava.security.auth.login.config=/opt/kafka/secrets/server_jaas.conf  restart: always

2、创建/opt/beidousky/kafka-zk/zk-conf目录,添加zoo.cfg文件

dataDir=/data
dataLogDir=/datalog
tickTime=2000
initLimit=5
syncLimit=2
autopurge.snapRetainCount=3
autopurge.purgeInterval=0
maxClientCnxns=60
standaloneEnabled=true
admin.enableServer=true
quorumListenOnAllIPs=trueserver.1=192.168.1.244:2888:3888;2181
#server.2=192.168.1.xxx:2888:3888;2181
#server.3=192.168.1.xxx:3888;2181authProvider.1=org.apache.zookeeper.server.auth.SASLAuthenticationProvider
sessionRequireClientSASLAuth=true
#requireClientAuthScheme=sasl
jaasLoginRenew=3600000

3、在/opt/beidousky/kafka-zk/zk-conf目录下,添加java.env文件

# 指定jaas文件的位置
SERVER_JVMFLAGS="-Djava.security.auth.login.config=/conf/zookeeper_server_jaas.conf"

4、在/opt/beidousky/kafka-zk/zk-conf目录下,添加zookeeper_server_jaas.conf文件

数据格式为user_用户名="用户密码"或者username="用户名" password="用户密码"

Server {org.apache.zookeeper.server.auth.DigestLoginModule requireduser_admin="admin123"user_kafka="kafka123";
};Client {org.apache.zookeeper.server.auth.DigestLoginModule requiredusername="kafka"password="kafka123";
};

5、创建/opt/beidousky/kafka-zk/kafka-conf目录,添加server_jaas.conf文件

Server {org.apache.zookeeper.server.auth.DigestLoginModule requireduser_admin="admin123"user_kafka="kafka123";
};Client {org.apache.zookeeper.server.auth.DigestLoginModule requiredusername="kafka"password="kafka123";
};

6、启动kafka服务

cd /opt/server/kafka-zk
docker-compose up -d
http://www.lryc.cn/news/2398080.html

相关文章:

  • 【python爬虫】利用代理IP爬取filckr网站数据
  • 群晖 NAS 如何帮助培训学校解决文件管理难题
  • NLP学习路线图(十八):Word2Vec (CBOW Skip-gram)
  • P1438 无聊的数列/P1253 扶苏的问题
  • 嵌入式学习笔记 - 新版Keil软件模拟时钟Xtal灰色不可更改的问题
  • k8s的出现解决了java并发编程胡问题了
  • 如何利用大语言模型生成特定格式文风的报告类文章
  • 黑马Java面试笔记之 集合篇(算法复杂度+ArrayList+)
  • 【从0-1的HTML】第2篇:HTML标签
  • 从“Bucharest”谈起:词语翻译的音译与意译之路
  • Nginx+Tomcat负载均衡
  • JVM——JVM中的字节码:解码Java跨平台的核心引擎
  • 【论文解读】ReAct:从思考脱离行动, 到行动反馈思考
  • 数据解析:一文掌握Python库 lxml 的详细使用(处理XML和HTML的高性能库)
  • react native webview加载本地HTML,解决iOS无法加载成功问题
  • 简单配置RHEL9.X
  • 默认网关 -- 负责转发数据包到其他网络的设备(通常是路由器)
  • python调用硅基流动的视觉语言模型
  • 下载并运行自制RAG框架
  • Rust 学习笔记:Cargo 工作区
  • 颈部的 “异常坚持”
  • Ubuntu22.04安装MinkowskiEngine
  • 【计算机网络】第2章:应用层—应用层协议原理
  • 【Zephyr 系列 6】使用 Zephyr + BLE 打造蓝牙广播与连接系统(STEVAL-IDB011V1 实战)
  • 利用 Scrapy 构建高效网页爬虫:框架解析与实战流程
  • RPG20.创建敌人的初始能力和加载武器
  • P5684 [CSP-J2019 江西] 非回文串 题解
  • 自适应移动平均(Adaptive Moving Average, AMA)
  • Java密码加密存储算法,SpringBoot 实现密码安全存储
  • 使用 Version Catalogs统一配置版本 (Gradle 7.0+ 特性)