@Liam, the hostname is removed from dns server due to the node is no longer alive, so kafka is unable reolve IP for zookeeper-2 thus an NullPointerException is thrown. @Manikumar, ZOOKEEPER-2184 is to re-resolve IP for new instance of zookeeper-2, however, zookeeper-2 stays down hence now IP to be resolved. Or does it also work for this case?
Thanks for your responses. This is a UTF-8 formatted mail ----------------------------------------------- James C.-C.Yu +886988713275 +8615618429976 2018-09-26 19:36 GMT+08:00 Manikumar <manikumar.re...@gmail.com>: > You can try using Kafka 2.0 release. Original issue is handled in > ZOOKEEPER-2184 and corresponding > zookeeper version is used in Kafka 2.0. > > > On Wed, Sep 26, 2018 at 3:58 PM Liam Clarke <liam.cla...@adscale.co.nz> > wrote: > > > Hi James, > > > > That's not an unresponsive node that's killing Kafka, that's a failure to > > resolve the address that's killing it - my personal expectation would be > > that even though zookeeper-2.zookeeper.etc may be down, its name should > > still resolve. > > > > Regards, > > > > Liam Clarke > > > > > > > > On Wed, Sep 26, 2018 at 10:02 PM James Yu <cyu...@gmail.com> wrote: > > > > > Hi, > > > > > > I fail to start kafka broker when the corresponding zookeeper cluster > is > > in > > > working but unhealthy state. > > > > > > The zookeeper cluster is made of 3 nodes: zookeeper-0, zookeeper-1, > > > zookeeper-2. > > > > > > I put all 3 zookeeper nodes into kafka's server.properties, > specifically > > > for zookeeper.connect attribute as as: > > > > > > > > zookeeper.connect=zookeeper-0.zookeeper.default.svc.cluster. > local:2181,zookeeper-1.zookeeper.default.svc.cluster. > local:2181,zookeeper-2.zookeeper.default.svc.cluster.local:2181 > > > > > > I intentionally terminate zookeeper-2 and let zookeeper cluster work > with > > > only two nodes (zookeeper-0, zookeeper-1). Then I start start kafka and > > get > > > the following error message: > > > [2018-09-26 09:57:23,841] INFO Initiating client connection, > > > > > > > > connectString=zookeeper-0.zookeeper.default.svc.cluster. > local:2181,zookeeper-1.zookeeper.default.svc.cluster. > local:2181,zookeeper-2.zookeeper.default.svc.cluster.local:2181 > > > sessionTimeout=6000 > > > watcher=kafka.zookeeper.ZooKeeperClient$ZooKeeperClientWatcher$@ > 49ec71f8 > > > (org.apache.zookeeper.ZooKeeper) > > > [2018-09-26 09:57:24,100] ERROR Fatal error during KafkaServer startup. > > > Prepare to shutdown (kafka.server.KafkaServer) > > > java.net.UnknownHostException: > > > zookeeper-2.zookeeper.default.svc.cluster.local: 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:445) > > > at org.apache.zookeeper.ZooKeeper.<init>(ZooKeeper.java:380) > > > at > > kafka.zookeeper.ZooKeeperClient.<init>(ZooKeeperClient.scala:86) > > > at kafka.zk.KafkaZkClient$.apply(KafkaZkClient.scala:1538) > > > at > > > > > > > > kafka.server.KafkaServer.kafka$server$KafkaServer$$ > createZkClient$1(KafkaServer.scala:345) > > > at kafka.server.KafkaServer.initZkClient(KafkaServer. > scala:369) > > > at kafka.server.KafkaServer.startup(KafkaServer.scala:202) > > > at > > > kafka.server.KafkaServerStartable.startup( > KafkaServerStartable.scala:38) > > > at kafka.Kafka$.main(Kafka.scala:92) > > > at kafka.Kafka.main(Kafka.scala) > > > [2018-09-26 09:57:24,104] INFO shutting down (kafka.server.KafkaServer) > > > [2018-09-26 09:57:24,107] WARN (kafka.utils.CoreUtils$) > > > java.lang.NullPointerException > > > at > > > > > > > > kafka.server.KafkaServer$$anonfun$shutdown$5.apply$mcV$ > sp(KafkaServer.scala:569) > > > at kafka.utils.CoreUtils$.swallow(CoreUtils.scala:85) > > > at kafka.server.KafkaServer.shutdown(KafkaServer.scala:569) > > > at kafka.server.KafkaServer.startup(KafkaServer.scala:326) > > > at > > > kafka.server.KafkaServerStartable.startup( > KafkaServerStartable.scala:38) > > > at kafka.Kafka$.main(Kafka.scala:92) > > > at kafka.Kafka.main(Kafka.scala) > > > [2018-09-26 09:57:24,112] INFO shut down completed > > > (kafka.server.KafkaServer) > > > [2018-09-26 09:57:24,112] ERROR Exiting Kafka. > > > (kafka.server.KafkaServerStartable) > > > [2018-09-26 09:57:24,115] INFO shutting down (kafka.server.KafkaServer) > > > > > > I thought we can start a kafka as long as the zookeeper cluster is > > > working.regardless there is one zookeeper node (3 in total) fails to > run? > > > > > > > > > This is a UTF-8 formatted mail > > > ----------------------------------------------- > > > James C.-C.Yu > > > +886988713275 > > > +8615618429976 > > > > > >