首页 > 其他分享 >Kafka 配置部署及SASL_PLAINTEXT安全认证

Kafka 配置部署及SASL_PLAINTEXT安全认证

时间:2023-11-22 23:34:24浏览次数:26  
标签:Zookeeper PLAINTEXT zookeeper kafka SASL server config Kafka

1、下载安装

Kafka下载地址:Apache Kafka

# 下载文件
wget https://downloads.apache.org/kafka/3.5.1/kafka_2.12-3.5.1.tgz

# 文件解压缩
tar -zxvf kafka_2.12-3.5.1.tgz

# 修改目录名称
mv kafka_2.12-3.5.1 kafka_2.12

# 进入目录
cd kafka_2.12

2、Zookeeper 配置

2.1、修改 Zookeeper 配置文件 config/zookeeper.properties

# 编辑 zookeeper 配置文件
vim config/zookeeper.properties

2.2、Zookeeper 配置文件修改内容

dataDir=/tmp/zookeeper
# the port at which the clients will connect
clientPort=2181
# disable the per-ip limit on the number of connections since this is a non-production config
maxClientCnxns=0
# Disable the adminserver by default to avoid port conflicts.
# Set the port to something non-conflicting if choosing to enable this
admin.enableServer=false
# admin.serverPort=8080
authProvider.1=org.apache.zookeeper.server.auth.SASLAuthenticationProvider
requireClientAuthScheme=sasl
jaasLoginRenew=3600000

2.3、Zookeeper 配置文件增加配置说明

# 身份验证提供程序
authProvider.1=org.apache.zookeeper.server.auth.SASLAuthenticationProvider

# 需要客户端身份验证方案
requireClientAuthScheme=sasl

# jaas登录续订
jaasLoginRenew=3600000

2.4、Zookeeper 配置JAAS文件

# 配置JAAS文件
cat > config/zookeeper_jaas.conf << EOF
Server {
    org.apache.kafka.common.security.plain.PlainLoginModule required 
    username="admin" 
    password="admin-2022" 
    user_kafka="kafka-2022" 
    user_producer="producer-2022";
};
EOF

2.5、Zookeeper 修改启动脚本 bin/zookeeper-server-start.sh

# 编辑启动脚本
vim bin/zookeeper-server-start.sh

2.6、Zookeeper 增加如下内容

export KAFKA_OPTS="-Djava.security.auth.login.config=/usr/local/kafka_2.12/config/zookeeper_jaas.conf"

 3、Kafka 配置

3.1、修改 Kafka 配置文件 config/server.properties

# 编辑 Kafka 配置文件
vim config/server.properties

3.2、Kafka 配置文件修改内容

未做变更的不做展示

listeners=SASL_PLAINTEXT://0.0.0.0:9092
advertised.listeners=SASL_PLAINTEXT://192.168.1.95:9092
security.inter.broker.protocol=SASL_PLAINTEXT
sasl.enabled.mechanisms=PLAIN
sasl.mechanism.inter.broker.protocol=PLAIN

# 完成身份验证的类
authorizer.class.name=kafka.security.authorizer.AclAuthorizer
# 如果没有找到ACL(访问控制列表)配置,则允许任何操作。
allow.everyone.if.no.acl.found=false
# 需要开启设置超级管理员,设置admin用户为超级管理员
super.users=User:admin

3.3、Kafka 配置JAAS文件

# 配置JAAS文件
cat > config/kafka_server_jaas.conf << EOF
KafkaServer {
    org.apache.kafka.common.security.plain.PlainLoginModule required
    username="admin"
    password="admin-secret"
    user_admin="admin-secret"
    user_alice="secret";
};
KafkaClient {
    org.apache.kafka.common.security.plain.PlainLoginModule required
    username="kafka"
    password="kafka-2022";
};
EOF

3.4、Kafka 修改启动脚本 bin/kafka-server-start.sh

# 编辑启动脚本
vim bin/kafka-server-start.sh

3.5、Kafka 增加如下内容

if [ "x$KAFKA_OPTS"  ]; then
    export KAFKA_OPTS="-Djava.security.auth.login.config=/usr/local/kafka_2.12/config/kafka_server_jaas.conf"
fi

 4、启动 Zookeeper

执行启动 Zookeeper 命令

# 执行启动 zookeeper 命令
./bin/zookeeper-server-start.sh -daemon config/zookeeper.properties

5、启动 Kafka

执行启动 Kafka 命令

# 执行启动 kafka 命令
./bin/kafka-server-start.sh  -daemon config/server.properties

标签:Zookeeper,PLAINTEXT,zookeeper,kafka,SASL,server,config,Kafka
From: https://www.cnblogs.com/cdkj/p/17850585.html

相关文章

  • 实例讲解:NodeJS 操作 Kafka
    本人是C#出身的程序员,c#很简单就能实现,有需要的可以加我私聊。但是就目前流行的开发语言,尤其是面向web方向应用的,我感觉就是Nodejs最简单了。下面介绍:本文将会介绍在windows环境下启动Kafka,并通过nodejs作为客户端,生产和消费消息。步骤一,Kafka需要java运行时,先安装配置java环境。下......
  • centos7安装Kafka
    参考:https://blog.csdn.net/yang1393214887/article/details/1234257151.官网下载https://kafka.apache.org/downloadshttps://dlcdn.apache.org/kafka/3.1.0/kafka_2.12-3.1.0.tgz2.上传到centos7/data/kafka/目录,解压到此目录pwd#当前文件位置mv/home/sili/kafka_2.12-......
  • strimzi operator 部署kafka集群
    环境说明本环境使用了单节点、临时存储集群的kafka-ephemeral-single配置。线上环境推荐kafka-persistent.yaml配置并修改storage配置为自动创建pv/pvc类型。配置清单说明1.kafka-ephemeral-single.yaml:非持久化存储,单节点集群;2.kafka-ephemeral.yaml:非持久化存储,多节点集群......
  • Kafka异常——The coordinator is not available
    之前架设了一个Kafka集群,跑了很久没有什么错误,最近开发的小伙伴跟我说部分kafka不能消费了,了解详细情况后,自己也赶紧作了个测试,发现是有报错...Causedby:rg.apache.kafka.common.errors.CoordinatorNotAvailableException:Thecoordinatorisnotavailable....报错在网上......
  • kafka
    kafka下载路径:(https://kafka.apache.org/downloads)一、kafka单机安装1.1上传jdk环境jdk-8u202-linux-x64.tar.gzkafka_2.12-3.5.1.tgz1.2解压安装包tarxfjdk-8u202-linux-x64.tar.gz-C/usr/local/cd/usr/local/mvjdk1.8.0_202/java1.3编写环境变量文......
  • Canal+Kafka实现MySQL与Redis数据同步(二)
    Canal+Kafka实现MySQL与Redis数据同步(二)创建MQ消费者进行同步在application.yml配置文件加上kafka的配置信息:spring:kafka:#Kafka服务地址bootstrap-servers:127.0.0.1:9092consumer:#指定一个默认的组名group-id:consumer-group1......
  • kafka入门(一):kafka消息消费
    安装kafka,创建topic:Windows安装kafka,详情见:https://blog.csdn.net/sinat_32502451/article/details/133067851Linux安装kafka,详情见:https://blog.csdn.net/sinat_32502451/article/details/133080353添加依赖包:<dependency><groupId>org.springfr......
  • kafka安装教程
    检查java8没有就安装java-version安装jdk1.8yum-yinstalljava-1.8.0-openjdk下载kafka(网速很慢)wgethttps://dlcdn.apache.org/kafka/3.5.0/kafka_2.13-3.5.0.tgz解压缩tar-xzfkafka_2.13-3.5.0.tgzcdkafka_2.13-3.5.0后台启动ZooKeeper服务(这里使用kafka里......
  • Introduing some cores concepts within kafka
    IntroductionToday,wetalkaboutsomecoresconceptswithinkafka.Apachekafkaisadistributedpublish-subscribemessagingsystem.ItisoriginallydevelopedatLinkdlnCorporationandlateronbecomeapartofApaccheproject,kafkaisafast,scalabl......
  • Kafka入门教程与详解(一)
    Kafka入门教程与详解(一)一、Kafka入门教程1.1消息队列(MessageQueue)MessageQueue消息传送系统提供传送服务。消息传送依赖于大量支持组件,这些组件负责处理连接服务、消息的路由和传送、持久性、安全性以及日志记录。消息服务器可以使用一个或多个代理实例。JMS(JavaMessaging......