3

Ubuntu イメージに HBase 0.94.9 をダウンロードしてインストールしました。Apache の Getting Started の手順に従いました。hbase-site.xml を変更するように言われましたが、私のプロパティには定義されていないことがわかりました。というわけで2つ追加。完全なファイルは次のとおりです。

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
    <property>
        <name>hbase.rootdir</name>
        <value>file:///home/dan/hbase</value>
    </property>
    <property>
        <name>hbase.zookeeper.property.dataDir</name>
        <value>/home/dan/zookeeper</value>
    </property>
</configuration>

/etc/hosts に 127.0.1.1 の問題がないことも確認しました。

127.0.0.1   localhost
127.0.0.1   ubuntu

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

私の理解が正しければ、このセットアップでは、ローカル ファイル システムを使用して HBase を完全に単独で実行する必要があります。Hadoop は関与しません。(Hadoop はこのマシンにインストールされていますが、現在は実行されていません。)しかし、HBase を起動するたびに、ログに次のように表示されます。

2013-07-17 07:24:51,121 ERROR org.apache.hadoop.hbase.master.HMasterCommandLine: Failed to start master
java.net.ConnectException: Call to localhost/127.0.0.1:9000 failed on connection     exception: java.net.ConnectException: Connection refused
    at org.apache.hadoop.ipc.Client.wrapException(Client.java:1099)
    at org.apache.hadoop.ipc.Client.call(Client.java:1075)
    at org.apache.hadoop.ipc.RPC$Invoker.invoke(RPC.java:225)
    at sun.proxy.$Proxy11.getProtocolVersion(Unknown Source)

HDFS に接続する必要があるかのように、ポート 9000 を探しています。それでも、/home/dan/hbase にはフォルダーとファイルがあります。HBase フォルダー内のすべてを「9000」で検索しましたが、それがリストされているのはドキュメントまたは src ディレクトリだけで、分散環境または疑似分散環境のセットアップの例が示されています。このインスタンスがポート 9000 を探している理由がわかりません。

何が原因なのか誰にも分かりますか?

4

3 に答える 3

2

Hadoop を実行する必要があったことがわかりました。ローカル ファイル システムのみを使用するように HBase をセットアップしたため、理由はわかりません。しかし、Hadoop、次に HBase を開始することを最終的に決定するまで、何時間もこの問題に頭を悩ませ、HBase はすぐに機能し始めました。これは、HDFS がポート 9000 ではなくポート 8020 にあるにもかかわらずです。完全に混乱していますが、少なくとも HBase は実行されています。

于 2013-07-18T02:05:39.223 に答える
2

では、 がのようなものではなく、次のようなローカル ファイル システム ディレクトリを指してhbase-site.xmlいることを確認してください。hbase.rootdirhdfs://.../home/myuserid/hbase

hbase.cluster.distributedまた、そうあるべきだと思いますfalse

于 2013-07-17T13:33:36.130 に答える
0

つい最近、この問題に遭遇しました。hbase スクリプトがパス内の hadoop 実行可能ファイルを探し、それを使用して構成ファイルを魔法のように見つけているようです。hbase を開始する前にパスから hadoop を削除して、作業を開始することができます。

私は断続的にしか Hadoop を使用しないので、core-site.xml からすべてをコメントアウトして、hbase を再開しました。

于 2016-04-29T23:18:35.383 に答える