显然,我需要在其中一台集群机器上启动zookeeper服务器,然后我需要其他客户端机器连接到该服务器。我这样做的方式是使用ssh连接到headnode,我发现一个zk服务器在2181端口上运行。因此,我使用ifconfig获取机器的IP地址(例如10.0.0.8),然后让我的工作节点连接到:10.0.0.8:2181。然而,我的MR工作现在完成了,但工作缓慢,输出不正确。我怀疑我在Zookeeper上做错了什么,尤其是我没有遵循教程,而是即兴完成了我的步骤。
HDInsight有多个动物园管理员服务器。不确定指定一个是否可能是您看到的问题的原因。
不久前,我写了一个例子,使用Storm写入HBase(同一Azure虚拟网络上的两个服务器),作为配置的一部分,我必须为写入HBase的组件指定三个zookeeper服务器。(https://azure.microsoft.com/en-us/documentation/articles/hdinsight-storm-sensor-data-analysis/是文章。)
从集群头节点,您可能可以ping zookeeper0、zookeeperC1和zookeeper2来查找每个节点的IP地址。