2016-11-22 7 views
1

を解決することはできません私はカフカ0.10.1.0クラスタ(2ノード)を持っており、飼育係3.4.6(3節)カフカがZookeperのDNS名

クラスタはthis tutorial次Kubernetes上でホストされています。カフカのserver.propertiesから

関連エントリ:

listeners=PLAINTEXT://0.0.0.0:9092 
advertised.listeners=PLAINTEXT://kafka.internal.<companyname>.com:9092 
zookeeper.connect=zookeeper-1:2181,zookeeper-2:2181,zookeeper-3:2181 

サーバの起動時には、各カフカブローカーは、以下ですぐに失敗します。私には、DNS名zookeeper-1を解決できないようです。私もzookeeper.connectからポートを削除しようとしましたが、私の読書はthe relevant codeでしたが、それは違いを生むとは思いません。

もちろん、私はzookeeper-1がクラスタ内から解決できることを確認しました。クラスタ内の他のコンテナが名前を解決できます。

サービスのDNS名やZookeeperのロードバランサなどの別の一連のエイリアスも試してみましたが、そのすべてが独立して動作確認されています。どちらの場合も、カフカだけがName or service not knownと報告しました。カフカの画像に関連する

[2016-11-22 19:55:45,506] INFO Initiating client connection, connectString=zookeeper-1:2181,zookeeper-2:2181,zookeeper-3:2181 sessionTimeout=6000 [email protected] (org.apache.zookeeper.ZooKeeper) 
[2016-11-22 19:56:05,571] INFO Terminate ZkClient event thread. (org.I0Itec.zkclient.ZkEventThread) 
[2016-11-22 19:56:05,572] FATAL Fatal error during KafkaServer startup. Prepare to shutdown (kafka.server.KafkaServer) 
org.I0Itec.zkclient.exception.ZkException: Unable to connect to zookeeper-1:2181,zookeeper-2:2181,zookeeper-3:2181 
    at org.I0Itec.zkclient.ZkConnection.connect(ZkConnection.java:71) 
    at org.I0Itec.zkclient.ZkClient.connect(ZkClient.java:1227) 
    at org.I0Itec.zkclient.ZkClient.<init>(ZkClient.java:156) 
    at org.I0Itec.zkclient.ZkClient.<init>(ZkClient.java:130) 
    at kafka.utils.ZkUtils$.createZkClientAndConnection(ZkUtils.scala:76) 
    at kafka.utils.ZkUtils$.apply(ZkUtils.scala:58) 
    at kafka.server.KafkaServer.initZk(KafkaServer.scala:327) 
    at kafka.server.KafkaServer.startup(KafkaServer.scala:200) 
    at kafka.server.KafkaServerStartable.startup(KafkaServerStartable.scala:39) 
    at kafka.Kafka$.main(Kafka.scala:67) 
    at kafka.Kafka.main(Kafka.scala) 
Caused by: java.net.UnknownHostException: zookeeper-1: Name or service not known 
    at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method) 
    at java.net.InetAddress$2.lookupAllHostAddr(InetAddress.java:928) 
    at java.net.InetAddress.getAddressesFromNameService(InetAddress.java:1323) 
    at java.net.InetAddress.getAllByName0(InetAddress.java:1276) 
    at java.net.InetAddress.getAllByName(InetAddress.java:1192) 
    at java.net.InetAddress.getAllByName(InetAddress.java:1126) 
    at org.apache.zookeeper.client.StaticHostProvider.<init>(StaticHostProvider.java:61) 
    at org.apache.zookeeper.ZooKeeper.<init>(ZooKeeper.java:446) 
    at org.apache.zookeeper.ZooKeeper.<init>(ZooKeeper.java:380) 
    at org.I0Itec.zkclient.ZkConnection.connect(ZkConnection.java:69) 
    ... 10 more 
[2016-11-22 19:56:05,575] INFO shutting down (kafka.server.KafkaServer) 
[2016-11-22 19:56:05,616] INFO shut down completed (kafka.server.KafkaServer) 

その他の情報:それはオフwurstmeister/kafka-docker基づいていますが、openjdk:8-jreを継承するように更新されます。

+0

これらのPetSetsに完全修飾ドメイン名を使用してみましたか? 多くの場合、解決方法は短い名前では機能しません。 – MrE

+0

'zookeeper-1'にpingできますか?ホスト名を解決できますか? – bsd

答えて

0

これはKubernetes自身の問題であることが判明しました。

v1.4.6に無関係にアップグレードした後、他の変更を加えなかった場合、名前は正常に解決できました。

関連する問題