4

編集:私はこれを機能させることができました。方法を示すチュートリアルを作成しました: http ://www.dreamsyssoft.com/blog/blog.php?/ archives / 5-How-to-use-HBase-Hadoop-Clustered.html

hbase-site.xmlプロパティを設定すると、HBaseを正常に動作させることができます。

<name>hbase.rootdir</name>
<value>file:///app/hbase/hbase/</value>

これは問題なく機能し、期待どおりにディレクトリにデータを保存しますが、ローカルファイルを使用する代わりに、実行中のhadoopインスタンスに接続する必要があります。に設定しました

<value>hdfs://localhost:9000/</value>

ローカルファイルの代わりに、それは機能しません。これをサポートするためにHadoop側で行う必要のある追加の構成はありますか?Hadoopは実行されており、ポート9000を使用しています。

これがhadoopのcore-site.xmlです。

<configuration>
        <property>
                <name>fs.default.name</name>
                <value>hdfs://localhost:9000</value>
        </property>
</configuration>

また、hbaseシェルで「リスト」を実行しようとしたときのエラーは次のとおりです。

hbase(main):001:0> list
TABLE
12/06/28 15:26:29 ERROR zookeeper.RecoverableZooKeeper: ZooKeeper exists failed after 3 retries
12/06/28 15:26:29 WARN zookeeper.ZKUtil: hconnection Unable to set watcher on znode /hbase/master
org.apache.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode = ConnectionLoss for /hbase/master
        at org.apache.zookeeper.KeeperException.create(KeeperException.java:99)
        at org.apache.zookeeper.KeeperException.create(KeeperException.java:51)
        at org.apache.zookeeper.ZooKeeper.exists(ZooKeeper.java:1021)
        at org.apache.hadoop.hbase.zookeeper.RecoverableZooKeeper.exists(RecoverableZooKeeper.java:154)
        at org.apache.hadoop.hbase.zookeeper.ZKUtil.watchAndCheckExists(ZKUtil.java:226)
        at org.apache.hadoop.hbase.zookeeper.ZooKeeperNodeTracker.start(ZooKeeperNodeTracker.java:76)
        at org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.setupZookeeperTrackers(HConnectionManager.java:580)
        at org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.<init>(HConnectionManager.java:569)
        at org.apache.hadoop.hbase.client.HConnectionManager.getConnection(HConnectionManager.java:186)
        at org.apache.hadoop.hbase.client.HBaseAdmin.<init>(HBaseAdmin.java:98)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
        at org.jruby.javasupport.JavaConstructor.newInstanceDirect(JavaConstructor.java:275)
        at org.jruby.java.invokers.ConstructorInvoker.call(ConstructorInvoker.java:91)
        at org.jruby.java.invokers.ConstructorInvoker.call(ConstructorInvoker.java:178)
4

3 に答える 3

0

Hbase は Zookeeper クォーラムを見つけられないと思います。hbase-site.xml で hbase.zookeeper.quorum プロパティを設定する必要があります。また、クラスパスが適切に設定されているかどうかを確認するには、このドキュメントを確認してください

http://hbase.apache.org/apidocs/org/apache/hadoop/hbase/mapreduce/package-summary.html#classpath

于 2012-09-03T03:00:34.320 に答える
0

http://hbase.apache.org/book.html#zookeeperで提案されている構成を使用して、 Ipatables を停止し、root モードで hbase を開始しました。

于 2012-09-28T15:31:04.113 に答える