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

通过TLS将Kafka生产者/消费者连接到broker

汲永嘉
2023-03-14

现在我正面临着连接生产者/消费者的问题。

>

  • 我使用以下命令创建了一个客户端密钥存储库,

    keytool -keystore client.keystore.jks -alias localhost -validity 365 -keyalg RSA -genkey
    

    将CA证书添加到密钥库,

    keytool -keystore client.keystore.jks -alias CARoot -import -file ca-cert
    
    keytool -keystore client.truststore.jks -alias CARoot -import -file ca-cert
    keytool -keystore client.keystore.jks -alias localhost -validity 365 -keyalg RSA -genkey
    keytool -keystore client.keystore.jks -alias CARoot -import -file ca-cert
    
    security.protocol=SSL
    ssl.truststore.location=path to client.truststore.jks
    ssl.truststore.password=<password>
    ssl.keystore.location=path to client.keystore.jks
    ssl.keystore.password=<password>
    ssl.key.password=<password>
    

    警告与节点-1的连接在身份验证期间终止。这可能表明身份验证由于凭据无效而失败。(org.apache.kafka.clients.NetworkClient)

    怀疑我在客户端配置中缺少了什么。如有任何帮助,将不胜感激。

  • 共有1个答案

    仉臻
    2023-03-14

    是否尝试使用客户端证书?相反,我建议,尝试没有客户证书。在这种情况下,您只需要下面的条目,

    producer.properties文件:-

    security.protocol=SSL
    ssl.truststore.location=/<path-to>/truststore.jks
    ssl.truststore.type=JKS
    

    欲了解更多信息,请访问:http://kafka.apache.org/documentation/#security_configclients

     类似资料:
    • 我目前正在开发Kafka模块,我正在使用Kafka通信的抽象。我能够集成生产者 Spring Boot测试类 监听器类 我的问题是:在测试类中,我断言分区、有效负载等是从BlockingQueue轮询的,然而,我的问题是如何验证用KafkaListener注释的类中的业务逻辑是否得到正确执行,并根据错误处理和其他业务场景将消息路由到不同的主题。在一些示例中,我看到了CountDownLatch的断

    • 向Kafka推送100,000条消息 在使用者使用所有100,000条消息之前,使用Ctrl-C关闭zookeeper和kafka服务(这是通过在consumer方法中使用来模拟的)。 发现 在zookeeper和kafka服务被关闭后,消费者继续在控制台上写消息。 问题 我如何使消费者从上次消费的消息的索引+1继续。 向Kafka推送100,000条消息 在使用者使用所有100,000条消息之前

    • 我很感激你在这方面的帮助。 我正在构建一个ApacheKafka消费者,以订阅另一个已经运行的Kafka。现在,我的问题是,当我的制作人将消息推送到服务器时。。。我的消费者没有收到。。我在打印的日志中得到以下信息: 我不确定我是否遗漏了任何重要的配置。。。但是,我可以使用WireShark看到一些来自我的服务器的消息,但是我的消费者没有消费这些消息。。。。 我的代码是示例消费者示例的精确副本:ht

    • 我们有一个制作人 在开发过程中,我重新部署了producer应用程序,并做了一些更改。但在此之后,我的消费者没有收到任何消息。我尝试重新启动消费者,但没有成功。问题可能是什么和/或如何解决? 消费者配置: 生产者配置: 编辑2: 5分钟后,消费者应用程序死亡,但以下情况除外:

    • 在这种情况下,我是否需要求助于Kafka事务API来在消费者轮询循环中创建事务生产者,在该循环中,我在事务中执行:(1)处理消耗的记录和(2)在关闭事务之前提交它们的偏移量。在这种情况下,普通的commitsync/commitasync是否有效?

    • 我正在尝试使用NodeJS从远程机器连接到远程Apache Kafka服务器。我无法从nodejs代码中生成所需的kafka主题的消息。我也无法消费任何数据从主题以及。 我使用的是Apache-kafka版本2.122.2.1和Java8。我也在使用节点版本8.11.0。我还启动了zookeeper服务器和kafka服务器。我在ubuntu机器上本地创建了一个主题和一个生产者和消费者,以检查apa