Hbase完全分佈式環境搭建

Hbase的使用依賴於hadoop環境和zookeeper,後二者的安裝請參考本人博客:HADOOP 2.x 完全分佈式集羣環境搭建 。

具體安排
         本文中準備node~4 四臺虛擬機:
                    node1:  192.168.111.101
                    node2 : 192.168.111.102
                    node3 : 192.168.111.103
                    node4 : 192.168.111.104
          用這四臺虛擬機搭建起分佈式環境,具體的部署如下:
                            NN    DN     JN    ZK    ZKFC     RS     NM        Master       RegionServers
          node1         1                  1     1       1                                    1(備)                  1
          node2         1        1        1     1       1                     1                                        1
          node3                   1        1     1                    1        1                                         1
          node4                   1                                     1        1             1(主)
軟件版本: 
          系統版本:
                    CentOS6.5
          軟件版本:
                    JDK:jdk-7u67-linux-x64.rpm
                    Hadoop:hadoop-2.5.1_x64.tar.gz
                    Zookeeper:zookeeper-3.4.6.tar.gz
                    hbase-0.98.12.1-hadoop2-bin.tar
注意:1、由於hbase在運行時,會讀取hdfs的文件,所以在開始搭建hbase集羣之前,需將hdfs啓動起來。
           2、zookeeper也需要提前啓動,因爲hbase需要使用zookeeper做集羣管理。
搭建步驟
       1、 node4與其它主機(node1~node4)的免密鑰登錄設置(node1也需要與其它主機做免密鑰處理,但是在搭建hadoop完全分佈式環境的時候,已經做過免密鑰了)。node4的密鑰在搭建hadoop集羣的時候已經生成了。
[root@node4 home]# ssh-copy-id node1 
The authenticity of host 'node1 (192.168.111.101)' can't be established.
RSA key fingerprint is 58:a8:f6:72:de:e5:e4:ba:f8:e9:f7:76:f5:c5:eb:01.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'node1,192.168.111.101' (RSA) to the list of known hosts.
root@node1's password:
---輸入密碼,回車。
       2、上傳hbase安裝包到/home/software,並解壓到/home/目錄下,修改文件夾名稱(不改也可以,隨意),node1~node4執行相同操作。
[root@node1 software]# tar zxf  /home/software/hbase-0.98.12.1-hadoop2-bin.tar  -C /home/
[root@node1 software]# mv/home/hbase-0.98.12.1-hadoop2 hbase-0.98  /home/hbase-0.98
       3、修改hbase的環境變量,修改文件/etc/profile,在末尾添加:
export HBASE_HOME=/home/hbase-0.98
export PATH=$PATH:$HBASE_HOME/bin
            保存退出。執行 source /etc/profile 命令刷新到內存。node1執行相同操作。
      4、修改node4的配置文件。進入 /home/hbase-0.98/conf 目錄,找到 hbase-env.sh文件,修改其java環境變量和zookeeper的配置信息:
export JAVA_HOME=/usr/java/jdk1.7.0_67
...
export HBASE_MANAGES_ZK=false
             說明:HBASE_MANAGES_ZK 參數的含義是:是否使用hbase自帶的zookeeper ,此處改爲false,即不使用自帶的zookeeper,而是使用單獨的zookeeper集羣。
        5、繼續修改node4的配置文件 hbase-site.xml,在configuration標籤之間添加如下配置
<property>
          <name>hbase.rootdir</name>
          <value>hdfs://myhadoop/hbase</value>    ----此處填寫nameservice名稱
    </property>
    <property>
          <name>hbase.cluster.distributed</name>
          <value>true</value>
    </property>
    <property>
          <name>hbase.zookeeper.quorum</name>
          <value>node1,node2,node3</value>
    </property>
        6、繼續修改node4的配置文件 regionservers,刪除原有內容,添加以下配置:
node1
node2
node3
        7、繼續修改node4的配置文件 backup-masters(安裝包中不提供,自行創建)。指定master的備份節點
node1
        8、繼續修改node4。將hadoop的配置文件hdfs-site.xml拷貝至hbase的conf目錄下。
[root@node4 conf]# cp /home/hadoop-2.5.1/etc/hadoop/hdfs-site.xml /home/hbase-0.98/conf/

至此,node4上的配置已修改修改完畢。將conf下的配置文件同步到其它的節點上。
[root@node4 conf]# scp /home/hbase-0.98/conf/* node1:`pwd`
配置完畢!下一步可以啓動hbase了。

啓動
在master節點(node4)上,啓動hbase:
[root@node4 bin]# start-hbase.sh
starting master, logging to /home/hbase-0.98/logs/hbase-root-master-node4.out
node2: starting regionserver, logging to /home/hbase-0.98/bin/../logs/hbase-root-regionserver-node2.out
node1: starting regionserver, logging to /home/hbase-0.98/bin/../logs/hbase-root-regionserver-node1.out
node3: starting regionserver, logging to /home/hbase-0.98/bin/../logs/hbase-root-regionserver-node3.out
啓動完畢後,在node4節點上會出現一個 HMaster進程,在node1~node3節點上會出現一個HRegionServer進程。
在瀏覽器中也可以訪問hbase,訪問端口是60010:

同時,在hdfs的根目錄下,會多出一個hbase文件夾,這是我們在hbase-site.xml中配置的。






發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章