
我創建了一個kerberized卡夫卡集群。它工作正常,我可以生成和使用訊息。現在我想使用卡夫卡工具2軟體,我透過 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叢集作業系統: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環境下的問題。