最近Kafkaクラスターがkerberizeされ、ブローカーのトピックからのメッセージの読み込みに問題が発生しました。Spring KafkaクライアントがKerberos対応のKafka Brokerトピックからメッセージを取得できません。
スプリングカフカ1.1.2.RELEASEとカフカクライアント0.10.0.1を使用しています。
私はApache Kafkaのドキュメントからの提案を経て、プロジェクトで以下の変更を加えました。
- コンシューマープロパティにsecurity.protocol SASL_PLAINTEXTが追加されました。
- 適切なJAASファイルを追加し、VM引数にパスを指定しました。
- KRB5.confを追加し、VM引数にパスを指定しました。
- 適切なkeytabエントリが作成され、JAASファイルでも提供されています。
この変更を投稿すると、問題なしでアプリケーションを起動できます(デバッグまたはトレースでエラーは発生しません)。ログにブローカへの接続が成功したことが表示されます。 私はまた、TCP接続をチェックし、クライアントとサーバーがうまく通信していることを示しています。
ただし、トピックからのメッセージを受信できず、ログにエラーが表示されないという問題があります。
私は何かが紛失しているか、トラブルシューティングできる方法がありますか?
ためhttps://cwiki.apache.org/confluence/display/KAFKA/Kafka+Authorization+Command+Line+Interfaceを参照してください。しかし、あなたの問題に完全に無関係のように見えます。 Kafka Brokerがいくつかの手掛かりを記録しているかどうかを確認します。 –
はい、私はkafka管理者にブローカのログレベルをDEBUGに設定するよう依頼しました。私は私の所見を更新します。 –
Ok - kafka管理者が、トピックからのメッセージを受信できるように、自分のIDのアクセス許可を劇的に引き上げたようです。それでも根本的な原因を調査しています。 –