【问题标题】:Zookeeper quorum issue with external hbase client when running hbase on Amzon EMR在 Amzon EMR 上运行 hbase 时,外部 hbase 客户端的 Zookeeper 仲裁问题
【发布时间】:2015-03-28 02:22:06
【问题描述】:

我在 Amazon EMR 上运行 HBase。

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
  <property><name>fs.hdfs.impl</name><value>emr.hbase.fs.BlockableFileSystem</value></property>
  <property><name>hbase.regionserver.handler.count</name><value>100</value></property>
  <property><name>hbase.zookeeper.quorum</name><value>ip-xx-xxx-aa-aa.us-west-1.compute.internal</value></property>
  <property><name>hbase.rootdir</name><value>hdfs://xx.xxx.aa.aa:9000/hbase</value></property>
  <property><name>hbase.cluster.distributed</name><value>true</value></property>
  <property><name>hbase.tmp.dir</name><value>/mnt/var/lib/hbase/tmp-data</value></property>
  <property><name>hbase.master.wait.for.log.splitting</name><value>true</value></property>
</configuration>

以上是配置。 现在我正在尝试使用以下方法启动一个新的 hbase 客户端:

val zk_quoroum = "xx.xxx.aa.aa"
val hBaseClient = new HBaseClient(zk_quoroum)

我无法以某种方式连接到动物园管理员:

6:04:54.238 [main-SendThread()] INFO  org.apache.zookeeper.ClientCnxn - Opening socket connection to server /xx.xxx.aa.aa:2181
16:04:59.264 [main-SendThread(xx.xxx.aa.aa:2181)] INFO  org.apache.zookeeper.ClientCnxn - Client session timed out, have not heard from server in 5026ms for sessionid 0x0, closing socket connection and attempting reconnect

重新连接不断尝试,但从未建立连接。这与 quorum 是内部 url 的事实有关吗?客户不住在 AWS。有人遇到过这种情况吗?

【问题讨论】:

    标签: amazon-web-services hbase apache-zookeeper emr


    【解决方案1】:

    所以问题是不允许从外部 ips 访问端口 2181。添加一个 tcp 规则解决了这个问题。

    【讨论】:

    • 您是否将规则添加到主节点的安全组?
    猜你喜欢
    • 1970-01-01
    • 2013-06-14
    • 1970-01-01
    • 2011-09-03
    • 2017-05-22
    • 2017-05-18
    • 1970-01-01
    • 2016-04-08
    • 1970-01-01
    相关资源
    最近更新 更多