无法在Centos上启动HBase。无法从hbase.zookeeper.quorum解析主机名bivm

时间:2016-04-27 18:55:09

标签: hbase

我正在关注Hadoop for Dummies的书。本书的说明修改HBase中的文件hbase-site.xml,如下所示:

    <configuration>
      <property>
        <name>hbase.rootdir</name>
        <value>file:///home/biadmin/my-local-hbase/hbase-data</value>
      </property>
      <property>
        <name>hbase.cluster.distributed</name>
        <value>true</value>
      </property>
      <property>
        <name>hbase.zookeeper.property.clientPort</name>
        <value>2222</value>
        <description>Property from ZooKeeper's config zoo.cfg.
        The port at which the clients will connect.
        </description>
      </property>
      <property>
        <name>hbase.zookeeper.property.dataDir</name>
        <value>/home/biadmin/my-local-hbase/zookeeper</value>
      </property>
      <property>
        <name>hbase.zookeeper.quorum</name>
        <value>bivm</value>
      </property>
    </configuration>

它说:

  

使用hbase.rootdir属性,在本地文件系统中指定一个目录来存储HBase数据。在生产环境中,此属性将指向数据存储的HDFS。您还将hbase.cluster.distributed属性设置为true,这会导致HBase以伪分布模式启动。如果您选择不将此属性设置为true,则HBase将在单个Java虚拟机(JVM)中运行所有必需的进程。但是,为了便于说明,伪分布式模式将导致HBase启动RegionServer实例,MasterServer实例和Zookeeper进程。此外,您需要指定hbase.zookeeper。 property.clientPort,Zookeeper将存储其数据的目录(hbase.zookeeper.property.dataDir)以及Zookeeper将运行以形成仲裁(hbase.zookeeper.quorum)的服务器列表。对于独立服务器,仅指定单个Zookeeper服务器bivm。

当我启动hbase时,我收到此错误:

Bivm: ssh: Could not resolve hostname bivm.

有人可以建议如何解决这个问题吗?感谢!!!

1 个答案:

答案 0 :(得分:0)

HBase依赖于名为Zookeeper的服务来管理其状态。默认情况下,HBase为您管理Zookeeper服务(除非您更改HBASE_MANAGES_ZK变量),但您需要对其进行配置。其中一个选项直接在hbase-site.xml中 - 这是hbase.zookeeper.*属性的用途。

由于Zookeeper可以作为分布式服务运行,因此hbase.zookeeper.quorum包含运行Zookeeper的主机上以逗号分隔的列表。我假设您只在一台计算机上运行,​​因此您应将其值设置为localhost

<property>
  <name>hbase.zookeeper.quorum</name>
  <value>localhost</value>
</property>

您之前已将其设置为bivm,这是一个在您的网络上不存在的主机名,您无法解析它。

我建议您在HBase documentationthis question了解有关该主题的更多信息。