配置SASL_PLAINTEXT认证和ACLS授权常见问题
kafka启动报错 问题1 [Controller id=11, targetBrokerId=11] Failed authentication with nj03-ns-passport-201611-c2c-m12- 09.nj03.baidu.com/10.194.202.17 (Authentication failed: Invalid username or password) (org.apache.kafka.common.network.Selector) 原因: SASL_PLAINTEXT认证时用户密码验证不通过,即 kafka_server_jaas.conf 文件中KafkaServer 模块 Broker与 Broker之间sasl用户密码验证不通过,如下: username=“kafkacluster1” password=“kafkaclusterpasswd” user_kafkacluster=“kafkaclusterpasswd” 复制代码 问题2 ERROR [KafkaApi-11] Error when handling request: clientId=11, correlationId=0, api=UPDATE_METADATA, version=6, body= {controller_id=11,controller_epoch=1,broker_epoch=4294970758,topic_states=[],live_brokers= [{id=11,endpoints= [{port=8092,host=10.194.202.17,listener=SASL_PLAINTEXT,security_protocol=2,_tagged_fields= {}}],rack=null,_tagged_fields={}}],_tagged_fields={}} (kafka.server.KafkaApis) org.apache.kafka.common.errors.ClusterAuthorizationException: Request Request(processor=0, connectionId=10.194.202.17:8092-10.194.202.17:59100-0, session=Session(User:kafkacluster,/10.194.202.17), listenerName=ListenerName(SASL_PLAINTEXT), securityProtocol=SASL_PLAINTEXT, buffer=null) is not authorized 原因: kafka_server_jaas.conf 文件中KafkaServer 模块 Broker与Broker之间sasl用户密码验证正确,但acls 授权没通过。 需要添加超级用户,超级用户不需要acls授权,在server.properties文件中添加kafkacluster用户,如下: super.users=User:admin;User:kafkacluster 复制代码
kafka 客户端(包括consumer和producer)连接报错 问题1 [2020-04-17 16:17:20,986] WARN [Consumer clientId=consumer_01, groupId=c1] Bootstrap broker 10.194.202.17:8092 (id: -1 rack: null) disconnected (org.apache.kafka.clients.NetworkClient) [2020-04-17 16:17:20,989] ERROR Error processing message, terminating consumer process: (kafka.tools.ConsoleConsumer$) org.apache.kafka.common.errors.SaslAuthenticationException: Authentication failed: Invalid username or password 原因:SASL_PLAINTEXT认证时用户密码验证不通过,即 kafka_server_jaas.conf 文件中KafkaServer 模块 client与 Broker之间sasl用户密码验证不通过。检查如下用户名密码: sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username=‘consumer’ password=‘consumerpasswd’; 复制代码 问题2 [2020-04-17 16:17:01,166] WARN [Consumer clientId=consumer_01, groupId=c1] Error while fetching metadata with correlation id 2 : {test.1=TOPIC_AUTHORIZATION_FAILED} (org.apache.kafka.clients.NetworkClient) [2020-04-17 16:17:01,172] ERROR [Consumer clientId=consumer_01, groupId=c1] Topic authorization failed for topics [test.1] (org.apache.kafka.clients.Metadata) [2020-04-17 16:17:01,174] ERROR Error processing message, terminating consumer process: (kafka.tools.ConsoleConsumer$) org.apache.kafka.common.errors.TopicAuthorizationException: Not authorized to access topics: [test.1] 原因:SASL_PLAINTEXT认证时用户密码验证正确,但acls 授权没通过,即此用户没有访问此topic(test.1)的权限,请联 系管理员对用户授权 作者:ponylee 链接:https://juejin.cn/post/7129758240719503374 来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。