Kafkatool.exe 无法创建新的 KafkaAdminClient SASL_PLAINTEXT

Kafkatool.exe 无法创建新的 KafkaAdminClient SASL_PLAINTEXT

我已经创建了一个已使用 Kerberos 语言Kafka 集群。它运行良好,我可以生成和使用消息。现在我想使用kafkatool2软件,我通过以下命令通过cmd运行该程序:

kafkatool.exe -J-Djava.security.auth.login.config=d:\client_jaas.conf

但填满空白后我得到了这个错误

错误 Kafkatool.exe-SASL_PLAINTEXT

这是我的杰斐逊美国农业部文件:

Server {
  com.sun.security.auth.module.Krb5LoginModule required
  useKeyTab=true
  keyTab="D:\kafkaadmin.keytab"
  storeKey=true
  useTicketCache=false
  principal="admin/[email protected]";
};

KafkaServer {
  com.sun.security.auth.module.Krb5LoginModule required debug=true
  useKeyTab=true
  storeKey=true
  keyTab="D:\kafkaadmin.keytab"
  principal="admin/[email protected]";
};

// For Zookeeper Client
Client {
  com.sun.security.auth.module.Krb5LoginModule required debug=true
  useKeyTab=true
  storeKey=true
  keyTab="D:\kafkaadmin.keytab"
  principal="admin/[email protected]";
};

KafkaClient {
  com.sun.security.auth.module.Krb5LoginModule required debug=true
  useKeyTab=true
  storeKey=true
  keyTab="D:\kafkaadmin.keytab"
  principal="admin/[email protected]";
};

我应该缺少什么?

Kafka-cluster 操作系统:Ubuntu 14.04
用户操作系统:Windows 10 Enterprise

答案1

当我尝试在 Kerberized kafka 环境中查看消息时,我在虚拟机中遇到了类似的问题。尝试在 KafkaClient 配置中设置 serviceName="kafka"。

另外,请确保通过传递 -J-Djava.security.auth.login.config 作为参数来运行 kafkatool。

客户端 JAAS 配置示例:

KafkaClient {
  com.sun.security.auth.module.Krb5LoginModule required
  serviceName="kafka"
  useKeyTab=true
  keyTab="<path_to>/user.keytab"
  principal="user@domain";
};

我在 Linux 环境中使用了该工具,但我认为上述方法也能解决 Windows 中的问题。

相关内容