当前位置: 首页 > 知识库问答 >
问题:

向kafka broker添加SASL _明文身份验证时出现Java . lang . illegalargumentexception

陆沈浪
2023-03-14

我正在尝试将SASL_PLAINTEXT身份验证配置为kafka代理,下面是我的配置。

advertised.listeners=SASL_PLAINTEXT://127.0.0.1:9092
listeners=SASL_PLAINTEXT://127.0.0.1:9092

security.inter.broker.protocol=SASL_PLAINTEXT
sasl.mechanism.inter.broker.protocol=PLAIN
sasl.enabled.mechanisms=PLAIN
sasl.jaas.config=/var/lib/kafka/config/kafka_jaas.conf

在开始动物园管理员和Kafka之后,我得到了以下例外

kafka.Kafka.main:要求失败:Kafka.scala必须是在advertised.listeners.中定义的侦听器名称基于当前配置的侦听器的有效选项是PLAINTEXTjava.lang.IllegalArgumentException:要求失败:inter.broker.listener.name必须是在advertised.listeners.中定义的侦听器名称基于当前配置的侦听器的有效选项是PLAINTEXT在scala.Predef$.要求(Predef.scala:233)在kafka.server.KafkaConfig.validateValues(KafkaConfig.scala:1089)在kafka.server.KafkaConfig.(KafkaConfig.scala:1065)在kafka.server.KafkaConfig$. fromProps(KafkaConfig.scala:795)在kafka.server.KafkaConfig$. fromProps(KafkaConfig.scala:792)在kafka.server.KafkaServerStartable$. fromProps(KafkaServerStartable.scala:28)在kafka.Kafka$. main(Kafka.scala:58)在java.lang.IllegalArgumentException(inter.broker.listener.name)

共有1个答案

孙志
2023-03-14

我在Kubernetes上设置kafka_listeners时遇到了类似的问题。以下是一个有效的kafka配置yaml片段:

    env:
    ...
   - name: ALLOW_PLAINTEXT_LISTENER
     value: “yes”
   - name: KAFKA_LISTENER_SECURITY_PROTOCOL_MAP
     value: INSIDE:PLAINTEXT
   - name: KAFKA_LISTENERS
     value: INSIDE://0.0.0.0:9092
   - name: KAFKA_ADVERTISED_LISTENERS
     value: INSIDE://localhost:9092
   - name: KAFKA_INTER_BROKER_LISTENER_NAME
     value: INSIDE

这里讨论的类似问题与 ssl 配置:无法找出具有 ssl 的 kafka 中代理间侦听器名称的设置

这个合流页面也会很有帮助。

 类似资料:
  • 我想添加只允许经过身份验证的用户在Jitsi会议中创建会议的功能。我看到了外部API的jwt参数、config.tokenAuthUrl和lib-jitsi-met令牌文档,但我对如何将它们放在一起感到非常困惑。 现在,我的工作流程如下: 用户通过自定义应用程序登录谷歌。 用户被重定向到一个新的Jitsi会议,使用从Google登录信息派生的jwt参数。 我遇到的问题是验证这个令牌,以及如何设置它

  • 尝试将Azure AD身份验证添加到具有. net核心2.1后端的Angular 7 webapp。 然而,我在请求过程中收到了CORS错误。 “访问位于的XMLHttpRequest”https://login.microsoftonline.com/.......“(重定向自”https://localhost:5001/api/auth/login“)起源”https://localhost

  • 问题内容: 我需要将表的主键更改为标识列,并且表中已经有许多行。 我有一个脚本来清理ID,以确保它们从1开始是连续的,在我的测试数据库上可以正常工作。 将列更改为具有标识属性的SQL命令是什么? 问题答案: 您无法更改现有的标识列。 您有2种选择, 创建一个具有标识的新表并删除现有表 创建一个具有标识的新列并删除现有列 方法1.( 新表 )在这里,您可以将现有数据值保留在新创建的标识列上。请注意,

  • 我已经安装了OpenLDAP服务器。 如何在LDAP服务器中添加用户(条目)?以及如何打开该服务器的命令窗口,以便在其上运行ldap命令: :我的要求是:在我的应用程序中,我想对Openldap服务器中添加的用户进行身份验证,但我只能在windows os上安装Openldap服务器,但如何添加用户我无法获得方法。在Windows7操作系统上安装openLDAP whic时添加用户的方法是什么?这

  • 跟随后匕首+改装。在运行时添加身份验证头我试图配置okHttp并通过添加拦截器将jwt身份验证密钥添加到okHttp中,为此我创建了单独的拦截器并将其添加到Dagger的组件中,以便它可以在任何地方公开。 组件 JWTauthenticationInterceptor.java

  • 我正在laravel中创建一个多身份验证系统,其中有两种类型的用户:管理员(由我创建)和用户(使用本地laravel身份验证系统)。 如果我以用户身份登录,当我尝试访问登录页面时,当我已经登录,它会将我重定向回仪表板,但如果我以管理员身份登录,当我再次访问管理员登录页面时,它会让我再次登录,尽管已经作为管理员登录。 以下是我的重定向身份验证类代码: 有人能解释一下发生了什么事吗?