2013-07-17 64 views
3

我已經在Ubuntu映像中下載並安裝了HBase 0.94.9。我遵循Apache的入門步驟。它說修改hbase-site.xml,雖然我發現我沒有定義它的屬性。所以我加了兩個。下面是完整的文件:在獨立模式下啓動HBase時出錯

<?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是isntalled這臺機器上,但當前未運行。)但是,每當我開始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) 

它尋找端口9000,因爲如果它認爲它應該連接到HDFS。然而,在/ home/dan/hbase中有文件夾和文件。我已經在HBase文件夾中搜索了「9000」的所有內容,並且我看到它列出的唯一位置在文檔或src目錄中,顯示了設置分佈式或僞分佈式環境的示例。所以我難住爲什麼這個實例正在尋找端口9000.

任何人有任何想法是什麼原因造成這種情況?

回答

2

事實證明,我必須運行Hadoop。我不知道爲什麼,因爲我設置HBase只使用本地文件系統。但幾個小時之前,我一直反對這個問題,直到我最終決定啓動Hadoop,然後HBase和HBase立即開始工作。儘管HDFS在8020端口而不是9000端口,但我至少感到困惑,但至少HBase正在運行。

+0

如果您不使用Hadoop,請將其卸載。我有同樣的問題,我卸載Hadoop並重新安裝新的HBase獨立 – sunskin

+0

謝謝sunskin。我實際上也在使用Hadoop(它只是一個沙箱圖像,我在做各種事情),所以我只記得啓動hadoop,但我也會記住你的建議以備將來參考。 – dnuttle

2

hbase-site.xml,確保hbase.rootdir不是像hdfs://...,而是指向本地文件系統的目錄,如​​

另外,我覺得hbase.cluster.distributed應該false

+0

我上面展示了hbase-site.xml,它指定了一個本地文件路徑。此後我也添加了一些更多的屬性,包括hbase.cluster.distributed爲false。它沒有幫助。 – dnuttle

0

我剛剛遇到了這個問題。它看起來像hbase腳本在你的路徑中查找hadoop可執行文件,並用它來神奇地定位配置文件。在啓動hbase之前,您可能會從您的路徑中刪除hadoop以使其工作。

我只是間歇性地使用hadoop,所以我剛剛評論了一切,我的core-site.xml和hbase再次啓動。

相關問題