Kafka+Scram认证+eagle管理
记录一次部署测试
部署程序版本选择
kafka 2.7.1
eagle 2.0.6
选择2.7.1是因为kafka在2.7之后的java的SDK中提供了操作scram账号的方法。我们可以将此集成到业务系统中对topic的读写对账户的授权管理。
Kafka搭建
我们将kafka部署到3个服务节点,例如192.168.40.1/192.168.40.2/192.168.40.3
第1步
下载kafka安装包,地址https://www.apache.org/dyn/closer.cgi?path=/kafka/2.7.1/kafka_2.12-2.7.1.tgz
第2步
登陆第一个服务器节点,将安装包放到/data目录
第3步
解压安装包,tar -xzvf kafka_2.12-2.7.1.tgz
第4步
编辑zookeeper配置文件,vim /data/kafka_2.12-2.7.1/config/zookeeper.properties,编辑内容如下
dataDir=/data/zookeeper
server.1=192.168.40.1:2888:3888
server.2=192.168.40.2:2888:3888
server.3=192.168.40.3:2888:3888authProvider.1=org.apache.zookeeper.server.auth.SASLAuthenticationProvider
authProvider.2=org.apache.zookeeper.server.auth.SASLAuthenticationProvider
authProvider.3=org.apache.zookeeper.server.auth.SASLAuthenticationProvider
requireClientAuthScheme=sasl
jaasLoginRenew=3600000
initLimit=10
syncLimit=5
server.1/2/3代表着三个节点
第5步
创建文件夹/data/zookeeper
第6步
生成myid文件,echo 1 >/data/zookeeper/myid,1是指第一个节点
第7步
编辑kafka的配置文件,vim /data/kafka_2.12-2.7.1/config/server.properties,编辑内容如下
broker.id=1
listeners=SASL_PLAINTEXT://192.168.40.1:9092
log.dirs=/data/kafka-logs
num.partitions=3
zookeeper.connect=192.168.40.1:2181,192.168.40.2:2181,192.168.40.3:2181sasl.mechanism.inter.broker.protocol=SCRAM-SHA-256
sasl.enabled.mechanisms=SCRAM-SHA-256
security.inter.broker.protocol=SASL_PLAINTEXTallow.everyone.if.no.acl.found=false
super.users=User:admin
authorizer.class.name=kafka.security.auth.SimpleAclAuthorizer
broker.id=1就是代表着第一个节点
第8步
创建jaas.conf文件,vim /data/kafka_2.12-2.7.1/config/kafka_server_jaas.conf,内容如下
KafkaServer{org.apache.kafka.common.security.scram.ScramLoginModule requiredusername="admin"password="admin@2021";
}; Server {org.apache.zookeeper.server.auth.DigestLoginModule requireduser_super="super@2021"user_kafka="kafka@2021";
};Client {org.apache.zookeeper.server.auth.DigestLoginModule requiredusername="kafka"password="kafka@2021";
};
第9步
编辑kafka-run-class.sh脚本中的KAFKA_OPTS,vim /data/kafka_2.12-2.7.1/bin/kafka-run-class.sh,修改内容如下
# Generic jvm settings you want to add
if [ -z "$KAFKA_OPTS" ]; thenKAFKA_OPTS="-Djava.security.auth.login.config=/data/kafka_2.12-2.7.1/config/kafka_server_jaas.conf"
fi
第10步
启动zookeeper,/data/kafka_2.12-2.7.1/bin/zookeeper-server-start.sh -daemon /data/kafka_2.12-2.7.1/config/zookeeper.properties,并查看日志是否正常启动,tail -f /data/kafka_2.12-2.7.1/logs/zookeeper.out
第11步
启动kafka,/data/kafka_2.12-2.7.1/bin/kafka-server-start.sh -daemon /data/kafka_2.12-2.7.1/config/server.properties,,并查看日志是否正常启动,tail -f /data/kafka_2.12-2.7.1/logs/server.log
第12步
重复第3步到第12步,部署安装另外两个节点,其中需要修改的就是/data/zookeeper/myid文件值,和/data/kafka_2.12-2.7.1/config/server.properties中的broker.id值
第13步
创建scram账号,/data/kafka_2.12-2.7.1/bin/kafka-configs.sh --zookeeper localhost:2181 --alter --add-config 'SCRAM-SHA-256=[password=admin@2021],SCRAM-SHA-512=[password=admin@2021]' --entity-type users --entity-name admin
至此kafka三节点搭建完成
如果想用java的SDK控制账号权限,可参考一下文章
https://blog.csdn.net/Smallc0de/article/details/119296739
https://blog.csdn.net/Smallc0de/article/details/113866633
Kafka-eagle搭建
第1步
去官网下载安装包,https://www.kafka-eagle.org/
第2步
将安装包上传到服务器节点,并放到/data目录下
第3步
解压安装包,tar -xvf kafka-eagle-web-2.0.6-bin.tar.gz
第4步
修改配置文件,vim /data/kafka-eagle-bin-2.0.6/kafka-eagle-web-2.0.6/conf/system-config.properties,编辑内容如下
kafka.eagle.zk.cluster.alias=cluster1
cluster1.zk.list=192.168.40.1:2181,192.168.40.2:2181,192.168.40.3:2181cluster1.kafka.eagle.sasl.enable=true
cluster1.kafka.eagle.sasl.protocol=SASL_PLAINTEXT
cluster1.kafka.eagle.sasl.mechanism=SCRAM-SHA-256
cluster1.kafka.eagle.sasl.jaas.config=org.apache.kafka.common.security.scram.ScramLoginModule req uired username="admin" password="admin@2021";kafka.eagle.driver=org.sqlite.JDBC
kafka.eagle.url=jdbc:sqlite:/data/kafka-eagle-bin-2.0.6/kafka-eagle-web-2.0.6/db/ke.db
kafka.eagle.username=root
kafka.eagle.password=www.kafka-eagle.org
第5步
启动eagle,/data/kafka-eagle-bin-2.0.6/kafka-eagle-web-2.0.6/bin/ke.sh start
第6步
在浏览器中打开地址http://192.168.40.1:8048/,默认用户名密码为admin/123456,登陆后可以看到kafka集群状态详情,如下
Kafka+Scram认证+eagle管理相关推荐
- 【Kafka】Kafka SCRAM认证 ERROR [ZooKeeperClient] Auth failed
1.概述 PLAIN认证有个问题,就是不能动态新增用户,每次添加用户后,需要重启正在运行的Kafka集群才能生效.为此,在生产环境,这种认证方式不符合实际业务场景.而SCRAM不一样,使用SCRAM认 ...
- 【kafka专栏】安全认证之SCRAM动态用户管理的方式
在上一篇文章中,我为大家介绍了PLAIN认证方式,即通过在配置文件里面配置用户名密码的方式提供安全认证.但是PLAIN认证在实际的生产环境中很少被使用,因为用户名密码是在配置文件里面写死的,所以无法动 ...
- Kafka SCRAM和PLAIN权限认证
目前Kafka ACL支持多种权限认证,今天笔者给大家介绍一下SCRAM和PLAIN的权限认证.验证环境如下: JDK: 1.8 Kafka: 2.3.0 Kafka Eagle: 1.3.8 2.1 ...
- Kafka动态认证SASL/SCRAM配置+整合springboot配置
记录: zookeeper启动命令: [root@master-yzjgxh2571705819-1651919082731-99-0727183 bin]# ./zkServer.sh start ...
- Kafka SCRAM和PLAIN实战
1.概述 目前Kafka ACL支持多种权限认证,今天笔者给大家介绍一下SCRAM和PLAIN的权限认证.验证环境如下: JDK:1.8 Kafka:2.3.0 Kafka Eagle:1.3.8 2 ...
- 开启kafka密码认证
Kafka默认未开启密码认证,可以免密登录,太不安全,因此需要开启密码认证. 一 kafka认证方式类型 kafka提供了多种安全认证机制,主要分为SSL和SASL大类.其中SASL/PLAIN是基于 ...
- 大数据Hadoop之——Kafka安全机制(Kafka SSL认证实现)
文章目录 一.概述 1)SASL认证概述 2)Delegation Token认证概述 3)SSL认证概述(本章实现) 二.各种安全认证机制对比和使用场景 三.Kafka SSL认证实现 1)创建ss ...
- kafka中的配额管理(限速)机制
kafka中的配额管理(限速)机制 kafka支持配额管理,从而可以对Producer和Consumer的produce&fetch操作进行流量限制,防止个别业务压爆服务器.本文主要介绍如何使 ...
- PostgreSQL 14和SCRAM认证的改变--应该迁移到SCRAM?
PostgreSQL 14和SCRAM认证的改变--应该迁移到SCRAM? 最近,一些PG使用者反馈他们切换到PG14后,遇到了一些连接错误. "FATAL: password authe ...
最新文章
- cmake编译安装完成后 执行cmake --version报错 bash: /usr/bin/cmake: 没有那个文件或目录
- SqlServer的NEWID()函数巧用,生成GUID作为唯一标识用
- opencv 手选roi区域_利用opencv进行眼动检测
- windows中运行qt5构建的程序提示 无法启动此程序,因为计算机中丢失qt5Cored.dll 解决方法
- 网站时间显示——基于Date
- 使用Electron将Web项目打包成windows桌面应用
- python进程间通信总结_进程间通信方式总结(优缺点)
- 2018-08-06-Python全栈开发day35-day36-select
- CSS3(新增样式)
- [后缀数组]JZOJ 3337 wyl889的TLE
- echarts字符云——修改词语方向和颜色
- JS 判断 IE 浏览器版本
- 匿名认证(Anonymous Authentication)
- 多线程使用场景(经典必看)
- delphi取得进程与线程的CPU使用率
- 稿费一般多少钱一千字_编写教材的稿费一般是多少
- 优秀笔记课件——Google 及其它搜索引擎的高级使用
- Linux文件系统:minix文件系统二进制分析3(硬链接与软链接)
- 说说 jBPM 工作流的定时器
- 优思学院:你真的知道如何在企业内部推行六西格玛管理?
热门文章
- Windows:忘记本地账户开机密码,但记得住PIN码
- solr 从数据库导入数据,全量索引和增量索引
- 3036: 绿豆蛙的归宿
- python抓取微信文件_python 如何爬取微信公众号里的图片?
- 计算机操作员高级图形图像处理photoshopcs2试题解答,图形图像处理(Photoshop平台)Photoshop CS2试题汇编(图像制作员...
- Log4j 爆发“核弹级”漏洞、工信部力推开源软件发展、“龙腾计划”启动|开源月报 Vol. 02...
- int bool str (索引,切片) for 循环
- 热血传奇服务端装备穿戴触发脚本
- 玲珑oj 1032 (容斥原理或前缀和优化dp)
- 腾讯wifi管家竟然盗取我家wifi密码 惊讶!震惊!失望!