相关疑难解决方法(0)

无法建立与节点 -1 (/127.0.0.1:9092) 的连接。经纪人可能不可用

我正在研究Spring Boot KafkaConfluence 的示例并运行简单的生产者示例并出现以下错误。我使用 Windows 机器并在 Windows 上安装了 ubunt 14.04 LTS。

注意 - 即使我使用 localhost,它仍然无法通过代码工作。

[2m2021-05-30 21:14:23.916[0;39m [32m INFO[0;39m [35m10300[0;39m [2m---[0;39m [2m[           main][0;39m [36mo.s.i.endpoint.EventDrivenConsumer      [0;39m [2m:[0;39m started bean '_org.springframework.integration.errorLogger'
[2m2021-05-30 21:14:23.928[0;39m [32m INFO[0;39m [35m10300[0;39m [2m---[0;39m [2m[           main][0;39m [36mc.e.demo.HelloWorldKafkaApplication     [0;39m [2m:[0;39m Started HelloWorldKafkaApplication in 2.619 seconds (JVM running for 3.694)
[2m2021-05-30 21:14:23.931[0;39m [32m INFO[0;39m [35m10300[0;39m [2m---[0;39m [2m[           main][0;39m [36mcom.example.demo.KafkaProducerService   [0;39m [2m:[0;39m Producing Message- Key: 1, Value: {"name": "John", "age": 48}
[2m2021-05-30 21:14:23.970[0;39m [32m INFO[0;39m [35m10300[0;39m [2m---[0;39m [2m[           main][0;39m [36mo.a.k.clients.producer.ProducerConfig …
Run Code Online (Sandbox Code Playgroud)

apache-kafka spring-kafka

8
推荐指数
2
解决办法
2万
查看次数

Kubernetes pod 将 coredns 中的外部 kafka 主机名解析为 pod 内的主机别名

我有 Spring Boot 应用程序,application.property我们在其中指定了以下属性。kafka 安装在带有自签名证书的远程机器上(在 kubernete 集群之外)。

camel.component.kafka.configuration.brokers=kafka-worker1.abc.com:9092,kafka-worker2.abc.com:9092,kafka-worker3.abc.com:9092
Run Code Online (Sandbox Code Playgroud)

在应用程序启动时,它会尝试寻找 kafka 代理。现在,如果我将主机别名添加到部署中,它将像下面一样正常工作

  hostAliases:
  - ip: 10.76.XX.XX
    hostnames:
    - kafka-worker1.abc.com
  - ip: 10.76.XX.XX
    hostnames:
    - kafka-worker2.abc.com
  - ip: 10.76.XX.XX
    hostnames:
    - kafka-worker3.abc.com
Run Code Online (Sandbox Code Playgroud)

它会正常工作,但我不希望这是拥有主机别名的不好做法,如果 IP 更改,我们可能需要重新启动 pod。我们希望主机名解析发生在 coredns 上,或者在不将 ip 添加到 pod 的主机文件的情况下进行解析。

如何实现这一目标。遵循此无法从 kubernetes pod服务端点内部连接到外部数据库,如下所示为 kafka-worker2 和 kafka-worker3 使用各自的 IP 创建

    kind: Service
    apiVersion: v1
    metadata:
     name: kafka-worker1
    spec:
     clusterIP: None
     ports:
     - port: 9092
       targetPort: 9092
     externalIPs:
       - 10.76.XX.XX
Run Code Online (Sandbox Code Playgroud)

并将其添加到属性文件中

camel.component.kafka.configuration.brokers=kafka-worker1.default:9092,kafka-worker2.default:9092,kafka-worker3.default:9092
Run Code Online (Sandbox Code Playgroud)

仍然收到同样的警告

2020-05-13T11:57:12.004+0000 Etc/UTC docker-desktop …
Run Code Online (Sandbox Code Playgroud)

apache-kafka docker kubernetes kube-dns coredns

7
推荐指数
1
解决办法
1302
查看次数