ZkException:无法连接到zNode01:2181

时间:2015-04-02 22:14:04

标签: exception hadoop apache-zookeeper apache-kafka znodes

我是hadoop的新手很抱歉,如果这看起来很愚蠢,但现在正在发生的事情。

我正在设置一个多节点kakfa代理,以便测试实时摄取,并且因为kafka需要ZK,所以建议最好运行复制的ZK。

在Zookeeper端,我可以看到1个Leader和2个Followers.so我想用这三个节点创建一个quorom然后可以传递给我的kakfa(通过在kafka的server.properties文件中添加一个条目)

按照以下建议创建此quorom

http://zookeeper.apache.org/doc/r3.1.2/zookeeperStarted.html#sc_RunningReplicatedZooKeeper

我编辑了我的zoo.cfg文件以添加下面的

server.5=zNode01:2888:3888
server.2=zNode02:2888:3888
server.1=zNode03:2888:3888

其中server.1,2,3将是我在三个ZK实例中的myid文件的值。

注意:我还没有重新启动任何东西

所以当我去卡夫卡尝试跑步时

./kafka-topics --zookeeper zNode01:2181 --list(to see if any topics exist)

it gives me 

Exception in thread "main" org.I0Itec.zkclient.exception.ZkException: Unable to connect to zNode01:2181
        at org.I0Itec.zkclient.ZkConnection.connect(ZkConnection.java:66)
        at org.I0Itec.zkclient.ZkClient.connect(ZkClient.java:876)
        at org.I0Itec.zkclient.ZkClient.<init>(ZkClient.java:98)
        at org.I0Itec.zkclient.ZkClient.<init>(ZkClient.java:84)
        at kafka.admin.TopicCommand$.main(TopicCommand.scala:51)
        at kafka.admin.TopicCommand.main(TopicCommand.scala)
Caused by: java.net.UnknownHostException: zNode01: Name or service not known
        at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)
        at java.net.InetAddress$1.lookupAllHostAddr(InetAddress.java:901)
        at java.net.InetAddress.getAddressesFromNameService(InetAddress.java:1293)
        at java.net.InetAddress.getAllByName0(InetAddress.java:1246)
        at java.net.InetAddress.getAllByName(InetAddress.java:1162)
        at java.net.InetAddress.getAllByName(InetAddress.java:1098)
        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 org.I0Itec.zkclient.ZkConnection.connect(ZkConnection.java:64)

对我所缺少的任何帮助都会很棒 - 我是否必须重新启动XK或kafka以接受这些更改?

1 个答案:

答案 0 :(得分:0)

在/ etc / hosts文件中添加主机名及其地址。 系统无法翻译 zNode01 。 在/ etc / hosts文件中添加 zNode01 条目。