如何在单个节点hadoop中设置han over hbase

时间:2014-04-09 17:15:04

标签: hadoop hbase titan

我有一个节点hadoop,并且在我的ubuntu 12.04上也安装了hbase。现在我想在hbase上安装titan。我已经设置了hadoop-1.0.3和hbase-0.94.18以及titan / hbase-0.4.2

我添加了一个用户mnit.My / usr / local /文件夹包含hadoop2,hbase2,titan2。首先我使用命令bin / start-all.sh启动我的hadoop然后使用命令bin / start-hbase启动hbase .sh。之后,当我做jps时,我发现了以下内容:

mnit@aman:/usr/local$ jps
9921 DataNode
11386 HRegionServer
11041 HQuorumPeer
11537 Jps
11115 HMaster
10153 SecondaryNameNode
10252 JobTracker
9691 NameNode
10483 TaskTracker

现在我使用命令bin / gremlin.sh在titan2中启动gremlin.sh。 我应用了以下命令

mnit@aman:/usr/local/titan2$ bin/gremlin.sh
gremlin> conf = new BaseConfiguration();
==>org.apache.commons.configuration.BaseConfiguration@19288c2
gremlin> conf.setProperty("storage.backend","hbase");
==>null
gremlin> conf.setProperty("storage.hostname","127.0.0.1");
==>null
gremlin> g = TitanFactory.open(conf);

WARN  org.apache.zookeeper.ClientCnxn  - Session 0x0 for server null, unexpected error, closing socket connection and attempting reconnect
java.net.ConnectException: Connection refused
    at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
    at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:739)
    at org.apache.zookeeper.ClientCnxnSocketNIO.doTransport(ClientCnxnSocketNIO.java:350)
    at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1068)
WARN  org.apache.hadoop.hbase.zookeeper.RecoverableZooKeeper  - Possibly transient ZooKeeper exception: org.apache.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode = ConnectionLoss for /hbase/hbaseid
WARN  org.apache.zookeeper.ClientCnxn  - Session 0x0 for server null, unexpected error, closing socket connection and attempting reconnect
java.net.ConnectException: Connection refused
    at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
    at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:739)
    at org.apache.zookeeper.ClientCnxnSocketNIO.doTransport(ClientCnxnSocketNIO.java:350)
    at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1068)

当我搜索这个问题时,我发现有一个名为pom.xml的文件,但我下载的titan不包含pom.xml。请告诉我这是否是由于pom.xml引起的问题。或者我做错了什么或者还有其他问题。

提前致谢

zk由我系统中的hbase管理。我在bin / hbase-env.sh

中添加了以下行
export HBASE_MANAGES_ZK=true

我的hbase-site.xml的内容如下:

<configuration>
    <property>
        <name>hbase.rootdir</name>
        <value>hdfs://localhost:54310/user/hbase</value>
    </property>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
         <property>
        <name>hbase.cluster.distributed</name>
        <value>true</value>
    </property>
    <property>
        <name>hbase.zookeeper.property.clientPort</name>
        <value>2222</value>
    </property>
    <property>
        <name>hbase.zookeeper.quorum</name>
        <value>localhost</value>
    </property>
    <property>
        <name>hbase.zookeeper.property.datadir</name>
        <value>/app/hadoop/tmp/zookeeper</value>
    </property>
</configuration>

1 个答案:

答案 0 :(得分:1)

您的Titan和HBase配置似乎不一致。您的hbase-site.xml会覆盖默认的ZK端口(2181)到2222,但是您似乎没有通过在Titan配置文件中设置storage.port来告诉Titan使用此非默认ZK端口。当然,他们不能在那个州互相交谈。这与pom.xml没有任何关系。

顺便说一句,请不要同时跨越SO和Google Group的aureliusgraph。它们都是目的略有不同的好地方,但你似乎只是在这个SO问题和your subjectless thread on the aureliusgraphs list之间进行了复制粘贴。