zoukankan      html  css  js  c++  java
  • 处理 Could not find a 'KafkaClient' entry in the JAAS configuration. System property 'java.security.auth.login.config' is

    场景

    某监控进程需要访问多个集群的Kafka

    INFO - org.apache.kafka.common.KafkaException: Failed to construct kafka consumer
    INFO - 	at org.apache.kafka.clients.consumer.KafkaConsumer.<init>(KafkaConsumer.java:765)
    INFO - 	at org.apache.kafka.clients.consumer.KafkaConsumer.<init>(KafkaConsumer.java:633)
    INFO - 	at org.apache.kafka.clients.consumer.KafkaConsumer.<init>(KafkaConsumer.java:615)
    INFO - 	at com.sohu.rc.factory.KafkaServiceImpl.getLogsizeByCluster(KafkaServiceImpl.java:252)
    INFO - 	at com.sohu.rc.service.KafkaHdfsMonitorServiceImpl.getAllTopicLogsize(KafkaHdfsMonitorServiceImpl.java:297)
    INFO - 	at com.sohu.rc.service.KafkaHdfsMonitorServiceImpl.getHdfsKafkaMonitor(KafkaHdfsMonitorServiceImpl.java:175)
    INFO - 	at com.sohu.rc.service.KafkaHdfsMonitorService.main(KafkaHdfsMonitorService.java:17)
    INFO - Caused by: java.lang.IllegalArgumentException: Could not find a 'KafkaClient' entry in the JAAS configuration. System property 'java.security.auth.login.config' is /data_b/kafka/kafka_client_jaas_usekeytab.conf
    INFO - 	at org.apache.kafka.common.security.JaasContext.defaultContext(JaasContext.java:131)
    INFO - 	at org.apache.kafka.common.security.JaasContext.load(JaasContext.java:96)
    INFO - 	at org.apache.kafka.common.security.JaasContext.load(JaasContext.java:78)
    INFO - 	at org.apache.kafka.common.network.ChannelBuilders.create(ChannelBuilders.java:100)
    INFO - 	at org.apache.kafka.common.network.ChannelBuilders.clientChannelBuilder(ChannelBuilders.java:58)
    INFO - 	at org.apache.kafka.clients.ClientUtils.createChannelBuilder(ClientUtils.java:88)
    INFO - 	at org.apache.kafka.clients.consumer.KafkaConsumer.<init>(KafkaConsumer.java:695)
    INFO - 	... 6 common frames omitted
    INFO - org.apache.kafka.common.KafkaException: Failed to construct kafka consumer
    INFO - 	at org.apache.kafka.clients.consumer.KafkaConsumer.<init>(KafkaConsumer.java:765)
    INFO - 	at org.apache.kafka.clients.consumer.KafkaConsumer.<init>(KafkaConsumer.java:633)
    INFO - 	at org.apache.kafka.clients.consumer.KafkaConsumer.<init>(KafkaConsumer.java:615)
    INFO - 	at com.sohu.rc.factory.KafkaServiceImpl.getLogsizeByCluster(KafkaServiceImpl.java:252)
    INFO - 	at com.sohu.rc.service.KafkaHdfsMonitorServiceImpl.getAllTopicLogsize(KafkaHdfsMonitorServiceImpl.java:297)
    INFO - 	at com.sohu.rc.service.KafkaHdfsMonitorServiceImpl.getHdfsKafkaMonitor(KafkaHdfsMonitorServiceImpl.java:175)
    INFO - 	at com.sohu.rc.service.KafkaHdfsMonitorService.main(KafkaHdfsMonitorService.java:17)
    INFO - Caused by: java.lang.IllegalArgumentException: Could not find a 'KafkaClient' entry in the JAAS configuration. System property 'java.security.auth.login.config' is /data_b/kafka/kafka_client_jaas_usekeytab.conf
    INFO - 	at org.apache.kafka.common.security.JaasContext.defaultContext(JaasContext.java:131)
    INFO - 	at org.apache.kafka.common.security.JaasContext.load(JaasContext.java:96)
    INFO - 	at org.apache.kafka.common.security.JaasContext.load(JaasContext.java:78)
    INFO - 	at org.apache.kafka.common.network.ChannelBuilders.create(ChannelBuilders.java:100)
    INFO - 	at org.apache.kafka.common.network.ChannelBuilders.clientChannelBuilder(ChannelBuilders.java:58)
    INFO - 	at org.apache.kafka.clients.ClientUtils.createChannelBuilder(ClientUtils.java:88)
    INFO - 	at org.apache.kafka.clients.consumer.KafkaConsumer.<init>(KafkaConsumer.java:695)
    INFO - 	... 6 more
    

    Kafka官方文档:
    https://kafka.apache.org/0110/documentation.html#security_sasl

    Clients may specify JAAS configuration as a producer or consumer property without creating a physical configuration file. 
    This mode also enables different producers and consumers within the same JVM to use different credentials by specifying different properties for each client. 
    If both static JAAS configuration system property java.security.auth.login.config and client property sasl.jaas.config are specified, the client property will be used.
    

    表示如果同时设置了这两个,则启用sasl.jaas.config。所以需要检查是哪个生效了,并且去对应的文件内检查这个ClientConfig是否正确。

    java.security.auth.login.config and  sasl.jaas.config
    
  • 相关阅读:
    Spring session redis
    HttpClient Post Form data and get Response String
    compareTo & toString
    Zookeeper 脑裂
    Maven的HTTP代理设置
    Linux 硬件信息
    [Redis] RDB & AOF
    真实场景中WebRTC 用到的服务 STUN, TURN 和 signaling
    推荐一个VS2015 插件 Favorite Documents
    笔记 Activator.CreateInstance(Type)
  • 原文地址:https://www.cnblogs.com/slankka/p/10795020.html
Copyright © 2011-2022 走看看