Offset explorer连接Kerberos认证的Kafka

Offset explorer连接Kerberos认证的Kafka

环境信息

系统环境:windows 10

Offset explorer版本:2.0

Kafka版本:Kafka_2.11-2.1.0

配置准备

添加连接

在这里插入图片描述

填写连接信息

Cluster name 随便填

Kafka Cluster Version根据自己的Kafka版本选择

Zookeeper Host 填写自己zk集群某台的ip地址

Zookeeper Port填写集群端口号(默认2181)

Chroot path Kafka使用zk中的目录地址

在这里插入图片描述

配置安全项

根据自己环境选择选择,我的环境是SASL_PLAINTEXT,下面选择SASL_PLAINTEXT即可。

SASL_PLAINTEXT:使用SASL框架来做认证和数据加密,使用明文传输数据

SASL_SSL:使用SASL框架来做认证和数据加密,使用SSL加密传输数据

在这里插入图片描述

进一步设置

Bootstrap servers:配置自己的kafka的broker地址

SASL Mechanism: 填写GSSAPI(这里表示SASL的实现,GSSAPI是一套接口,现在只有Kerberos v5实现了这个接口;这里实际就是指的是Kerberos)
在这里插入图片描述

最后配置JAAS

如果不是使用GSSAPI可以参考官网;否则有两种方法,第一种命令行启动添加配置,第二种修改配置文件;

命令行启动
  1. 进入windows命令行界面

  2. cd到offset explorer安装目录

  3. 输入如下启动命令(注意两个文件需要修改为自己的文件地址)

    offsetexplorer.exe -J-Djava.security.auth.login.config=c:/client_jaas.conf -J-Djava.security.krb5.conf=c:/client.keytab
    
修改配置文件

找到offset explorer安装目录,然后打开offsetexplorer.vmoptions文件,在末尾添加如下信息(保存关闭,以后每次启动都会生效,如果访问其他KDC集群,请修改配置然后重启):

-Djava.security.auth.login.config=c:/client_jaas
-Djava.security.krb5.conf=c:/client.keytab
注意事项

java.security.krb5.conf=c:/client.keytab务必使用/分隔符

最后

如果有解决你的问题,记得点赞哦;谢谢~~~

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Kafka 开启了 Kerberos 认证后,连接 ZooKeeper 需要进行以下步骤: 1. 配置 Kafka 服务器以使用 Kerberos 认证。在 Kafka 配置文件(通常是 `server.properties`)中,添加以下属性: ``` listeners=SASL_PLAINTEXT://<Kafka_server_host>:<Kafka_server_port> security.inter.broker.protocol=SASL_PLAINTEXT sasl.mechanism.inter.broker.protocol=GSSAPI sasl.kerberos.service.name=kafka ``` 2. 配置 ZooKeeper 服务器以支持 Kerberos 认证。在 ZooKeeper 配置文件(通常是 `zoo.cfg`)中,添加以下属性: ``` authProvider.1=org.apache.zookeeper.server.auth.SASLAuthenticationProvider requireClientAuthScheme=sasl jaasLoginRenew=3600000 jaasLoginRefresh=3600000 ``` 3. 生成 Kafka 和 ZooKeeper 的 Kerberos Keytab 文件。Keytab 文件包含了用于服务认证的凭证信息。可以使用 `kadmin` 命令行工具生成 Keytab 文件。 4. 在 Kafka 服务器上配置 Kerberos 客户端。将 Kafka 和 ZooKeeper 相关的 Keytab 文件分发到 Kafka 服务器上,并配置 Kerberos 客户端以使用这些文件。 5. 启动 Kafka 服务器和 ZooKeeper 服务器。确保 Kafka 服务器和 ZooKeeper 服务器都已正确配置并启动。 6. 使用 Kafka 客户端连接到 ZooKeeper。在代码中,使用适当的配置和认证信息创建 Kafka 客户端,并指定 ZooKeeper 的连接字符串,例如: ```java Properties props = new Properties(); props.put("bootstrap.servers", "<Kafka_server_host>:<Kafka_server_port>"); props.put("security.protocol", "SASL_PLAINTEXT"); props.put("sasl.kerberos.service.name", "kafka"); props.put("group.id", "<consumer_group_id>"); KafkaConsumer<String, String> consumer = new KafkaConsumer<>(props); consumer.subscribe(Arrays.asList("<topic_name>")); while (true) { ConsumerRecords<String, String> records = consumer.poll(Duration.ofMillis(100)); // 处理消费记录 } ``` 请注意,上述步骤是一个基本的指南,实际操作中可能会有其他配置和设置需求。详细的步骤和配置可以参考 Kafka 和 ZooKeeper 的官方文档。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值