Hbase 0.98集群搭建的詳細步驟


  • 准備工作

Hbase的搭建是依賴於Hadoop的,Hbase的數據文件實際上存儲在HDFS文件系統中,所以我們需要先搭建hadoop環境,之前的博文中已經搭建過了(詳見http://www.cnblogs.com/bxljoy/p/3880250.html ),這里就不在贅述。

  • 版本選擇

由於之前搭建的hadoop2.2.0社區版,hadoop和hbase之間存在版本的兼容性問題,並不是所有的版本都可以相互兼容,所以在此我選擇:Hbase 0.98版本,能夠完美兼容hadoop2.2.0版本。我們進入hbase的lib目錄中可以看到jar包的版本:

如果不是以上的2.2.0版本的jar包,需要與hadoop的jar包版本保持一致,從hadoop的share/hadoop目錄中找到相對應的jar包進行替換。

  • 配置文件

進入hbase的conf目錄下,對配置文件進行修改:

regionservers文件:

vi regionservers

master
slave1
slave2

hbase-env.sh文件:

export JAVA_HOME=/opt/jdk1.7

# The directory where pid files are stored. /tmp by default.
export HBASE_PID_DIR=/var/hadoop/pids

# Where log files are stored.  $HBASE_HOME/logs by default.
# export HBASE_LOG_DIR=${HBASE_HOME}/logs

 

hbase-site.xml文件:

<configuration>
<property>  
    <name>hbase.rootdir</name>   
    <value>hdfs://master:9000/hbase</value>  
</property>  
<property>
    <name>hbase.master</name>
        <value>hdfs://master:60000</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>master, slave1, slave2</value>  
</property>  
<property>  
    <name>hbase.zookeeper.property.dataDir</name>  
    <value>/home/hadoop2/zookeeper</value>  
</property>
<property>
    <name>hbase.regionserver.handler.count</name>
    <value>100</value>
</property>
</configuration>  
  • 分發hbase並啟動

將以上配置好的hbase文件夾,整個分發到集群的各個機器中,然后使用命令啟動hbase:bin/start-hbase.sh。

然后使用jps命令查看hbase啟動必須的進程:

[hadoop2@master conf]$ jps
7586 DataNode
2968 HRegionServer
2728 HQuorumPeer
7894 ResourceManager
8002 NodeManager
2827 HMaster
9331 Jps
7463 NameNode
7750 SecondaryNameNode

其中,標紅的3個進程為hbase啟動后,master主機中會出現的進程,HMaster進程為master進程,在普通的slave機器中只會出現,HRegionServer和HQuorumPeer兩個Hase相關的進程,前者為RegionServer的進程,后者則是hbase自啟動的ZooKeeper的進程。當然了,啟動hbase之前必須先啟動hadoop,所以必然存在DataNode、NodeManager等hadoop相關的進程。

值得一提的是,hbase的運行必須依賴於Zookeeper,默認情況下,hbase啟動的時候會自啟動Zookeeper,其中的配置選項存在於/conf/hbase-env.sh:

# Tell HBase whether it should manage it's own instance of Zookeeper or not.
export HBASE_MANAGES_ZK=true

默認為true,表示hbase自己管理Zookeeper,如果修改為false,則需要在hbase-site.xml中配置Zookeeper, 並自行安裝Zookpeer集群。

 

轉載請注明出處:http://www.cnblogs.com/bxljoy/p/3939600.html 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM