设置regionserver和zookeeper仲裁的最佳做法是什么?

我有一个带有16个节点的小型hadoop集群。按照http://hbase.apache.org/book/example_config.html中给出的示例,我选择16个节点和这些节点的子集作为Zookeeper作为Regionserver。

但是,当一个作业由不在与hbase.zookeeper.quorum对应的列表中的节点启动时,出现以下错误:



因此,它尝试先持续600秒,然后返回



经过几次尝试后,它更改了节点,如果偶然新节点属于Zookeeper列表,则该作业成功完成。

这正常吗?

我最终将所有节点添加到zookeeper列表中,但我想知道这是否是一个好习惯。还有在任何情况下regionserver的列表应与节点列表不同吗?

谢谢

最佳答案

不,看来您正在做的事情不是好习惯。对于16 RS群集,一个ZK节点应该就可以了。

查看ZK Admin guide:



尽管这里没有说明,但ZK群集的大小不得超过7个节点。如果建议使用奇数个节点,则可以选择1、3、5和7。对于像您这样的小型集群,1应该足够,但是3可以提供 flex 。 5可能是过大的杀伤力。 7绝对是。

另外,查看您粘贴的错误:

java.net.ConnectException: Connection refused

这似乎表明:
  • Hadoop配置错误:您指向了错误的服务器/端口,或者该服务当前未运行,或者更有可能-
  • 网络配置错误,例如运行
  • 的iptables之类的防火墙

    关于hadoop - 如何选择Zookeeper和RegionServer,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18404855/

    10-16 02:52