我正在使用这个舵图:https://github.com/helm/charts/tree/master/incubator/kafka
而这些覆盖在values.yaml中
configurationOverrides:
advertised.listeners: |-
EXTERNAL://kafka-${KAFKA_BROKER_ID}.host-removed:$((31090 + ${KAFKA_BROKER_ID}))
listener.security.protocol.map: |-
PLAINTEXT:SASL_PLAINTEXT,EXTERNAL:SASL_PLAINTEXT
sasl.enabled.mechanisms: SCRAM-SHA-256
auto.create.topics.enable: false
inter.broker.listener.name: PLAINTEXT
sasl.mechanism.inter.broker.protocol: SCRAM-SHA-256
listener.name.EXTERNAL.scram-sha-256.sasl.jaas.config: org.apache.kafka.common.security.scram.ScramLoginModule required username="user" password="password";基于这些文档:broker
(快速摘要)
Brokers may also configure JAAS using the broker configuration property sasl.jaas.config. The property name must be prefixed with the listener prefix including the SASL mechanism, i.e. listener.name.{listenerName}.{saslMechanism}.sasl.jaas.config. Only one login module may be specified in the config value. If multiple mechanisms are configured on a listener, configs must be provided for each mechanism using the listener and mechanism prefix
listener.name.sasl_ssl.scram-sha-256.sasl.jaas.config=org.apache.kafka.common.security.scram.ScramLoginModule required \
username="admin" \
password="admin-secret";问题是,当我启动Kafka时,会出现以下错误:
java.lang.IllegalArgumentException: Could not find a 'KafkaServer' or 'plaintext.KafkaServer' entry in the JAAS configuration. System property 'java.security.auth.login.config' is not set根据优先级的顺序,如果没有设置上述配置,则应该使用静态jass文件。
If JAAS configuration is defined at different levels, the order of precedence used is:舵机图表不支持配置此jaas文件的方法,因此使用此属性似乎是所需的方法,我只是对配置不正确的内容感到困惑。
注意:如果我禁用所有SASL并只使用纯文本,集群就能正常工作,但在实际环境中这并不是什么好消息。
发布于 2018-09-13 15:55:41
我们定义了两个侦听器:PLAINTEXT和EXTERNAL。您已经将两者映射到SASL_PLAINTEXT。
你真的想这么做吗?还是希望PLAINTEXT不需要SASL,而只是纯文本?
PLAINTEXT映射到SASL_PLAINTEXT时,它还需要JAAS配置。您可以使用例如:
listener.name.PLAINTEXT.scram-sha-256.sasl.jaas.config: org.apache.kafka.common.security.scram.ScramLoginModule需要username=“用户”“password=”密码;PLAINTEXT侦听器实际上是没有SASL的纯文本,则需要更新侦听器映射:
listener.security.protocol.map:-纯文本:纯文本,EXTERNAL:SASL_PLAINTEXThttps://stackoverflow.com/questions/52314964
复制相似问题