用于 Kibernetes 的 Bitnami Kafka - java.net.UnknownHostException: kafka-0.kafka-headless.kafka.svc.cluster.local

Bitnami Kafka for Kibernetes - java.net.UnknownHostException: kafka-0.kafka-headless.kafka.svc.cluster.local

我已经在我的 k8 集群上安装了 bitnami kafka。但我不断看到错误 java.net.UnknownHostException: kafka-0.kafka-headless.kafka.svc.cluster.local 在 kafka-o 日志中。

我登录到 pod (kafka-o) 并 运行 nslookup for kafka-0.kafka-headless.kafka.svc.cluster.local 但是 IP 没有问题得到解析

root@kafka-0:/# nslookup  kafka-0.kafka-headless.kafka.svc.cluster.local
Server:         10.43.0.10
Address:        10.43.0.10#53

Name:   kafka-0.kafka-headless.kafka.svc.mosip02.local
Address: 10.42.4.123

来自 kafka-0 pod 的 netstat 日志

root@kafka-0:/# netstat -lntp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:35267           0.0.0.0:*               LISTEN      -
tcp        0      0 0.0.0.0:9092            0.0.0.0:*               LISTEN      -
tcp        0      0 0.0.0.0:9093            0.0.0.0:*               LISTEN      -

kubectl -n kafka 记录 kafka-0 的错误堆栈

[2021-07-26 07:59:29,350] WARN [Controller id=0, targetBrokerId=0] Error connecting to node kafka-0.kafka-headless.kafka.svc.cluster.local:9093 (id: 0 rack: null) (org.apache.kafka.clients.NetworkClient)
java.net.UnknownHostException: kafka-0.kafka-headless.kafka.svc.cluster.local
        at java.base/java.net.InetAddress$CachedAddresses.get(InetAddress.java:797)
        at java.base/java.net.InetAddress.getAllByName0(InetAddress.java:1509)
        at java.base/java.net.InetAddress.getAllByName(InetAddress.java:1368)
        at java.base/java.net.InetAddress.getAllByName(InetAddress.java:1302)
        at org.apache.kafka.clients.DefaultHostResolver.resolve(DefaultHostResolver.java:27)
        at org.apache.kafka.clients.ClientUtils.resolve(ClientUtils.java:111)
        at org.apache.kafka.clients.ClusterConnectionStates$NodeConnectionState.currentAddress(ClusterConnectionStates.java:512)
        at org.apache.kafka.clients.ClusterConnectionStates$NodeConnectionState.access0(ClusterConnectionStates.java:466)
        at org.apache.kafka.clients.ClusterConnectionStates.currentAddress(ClusterConnectionStates.java:172)
        at org.apache.kafka.clients.NetworkClient.initiateConnect(NetworkClient.java:985)
        at org.apache.kafka.clients.NetworkClient.ready(NetworkClient.java:311)
        at org.apache.kafka.clients.NetworkClientUtils.awaitReady(NetworkClientUtils.java:65)
        at kafka.controller.RequestSendThread.brokerReady(ControllerChannelManager.scala:292)
        at kafka.controller.RequestSendThread.doWork(ControllerChannelManager.scala:246)
        at kafka.utils.ShutdownableThread.run(ShutdownableThread.scala:96)

尝试编辑 clusterDomain 参数,在部署图表时将其设置为 mosip02.local 而不是 cluster.local