hbase分佈式集羣安裝

hbase,zookeeper分佈式集羣安裝

  • jar包選用
  hadoop - 2.7.3
  zookeeper - 3.4.8
  hbase - 1.2.5

Zookeeper分佈式安裝

  • 在etc/hosts中配置集羣節點
  192.168.56.100 master
  192.168.56.101 slave1
  192.168.56.102 slave2
  • 將zookeeper/conf目錄下面的 zoo_sample.cfg修改爲zoo.cfg 添加內容:
  1.    tickTime=2000  
  2.    dataDir=/home/hadoop/storage/zookeeper  
  3.    clientPort=2181  
  4.    initLimit=5  
  5.    syncLimit=2  
  6.    server.1=slave-01:2888:3888  
  7.    server.2=slave-02:2888:3888  
  8.    server.3=slave-03:2888:3888 
  • 遠程複製分發安裝軟件
scp -r  hbase root@192.168.56.103:/usr/local/
  • 設置myid
在我們配置的dataDir指定的目錄下面,創建一個myid文件,裏面內容爲一個數字,用來標識當前主機,conf/zoo.cfg文件中配置的server.XX爲什麼數字,則myid文件中就輸入這個數字
  • etc/profile中添加Path
export ZOOKEEPER_HOME=/usr/local/zookeeper
export PATH=$PATH:$ZOOKEEPER_HOME/bin
  • 啓動Zookeeper集羣
zkServer.sh start
  • 安裝驗證
zkServer.sh status

HBASE分佈式安裝

  • 在etc/profile中配置hbasepath
  export HBASE_HOME=/usr/local/hbase
  export PATH=$PATH:$HBASE_HOME/bin
  • 更改hbase/conf hbase-site.xml
     <!--hbase.rootdir 對應hdfs中的 core-site.xml中的fs.defaultFS-->
     <configuration>
          <!-- 指定HBase在HDFS上面創建的目錄名hbase -->
         <property>
             <name>hbase.rootdir</name>
             <value>hdfs://master:9000/hbase</value>
     </property>
        <property>
            <name>hbase.master.info.port</name>
            <value>60010</value>
        </property>
     <!—對應zookeeper zoo.cfgdataDir路徑 -->
     <property>
         <name>hbase.zookeeper.property.dataDir</name>
         <value>/opt/zookeeper</value>
         <description>Property from ZooKeeper config zoo.cfg.
         The directory where the snapshot is stored.
         </description>
       </property>
         <!-- 開啓集羣運行方式 -->
         <property>
             <name>hbase.cluster.distributed</name>
             <value>true</value>
         </property>
         <property>
             <name>hbase.tmp.dir</name>
             <value>/var/hbase</value>
         </property>
         <property>
             <name>hbase.zookeeper.quorum</name>
             <value>master,slave1,slave2</value>
         </property>
     </configuration>

   hbase.zookeeper.property.dataDir 一定要配置 我入了這個坑
   不配置啓動hbase會報ERROR: Can't get master address from ZooKeeper; znode data == null錯誤
   網上說的報錯原因基本我都試過了 。沒用 這是找不到zookeeper得節點位置。

  [官網配置更詳細](http://hbase.apache.org/book.html#quickstart_fully_distributed)
  • 修改hbase-env.sh
   export JAVA_HOME=/usr/java/default
   <!--對應 hbase.tmp.dir 中得路徑 不配置關閉hbase找不到pid -->
   export HBASE_PID_DIR=/var/hbase/pids
   <!--關閉內置zk-->
   export HBASE_MANAGES_ZK=false
  • 修改regionservers
 <!--我這裏配置得兩臺-->
 slave1 slave2
  • 創建backup-masters文件 這個是當hbase主宕掉後備份的master 裏面寫 salve3,當master宕掉 salve3就是主

  • 將hadoop中的 core-site.xml hdfs-site.xml複製到hbase/conf的路徑下

  • 啓動hbase 先啓動hadoop ZK

  啓動HBase集羣:
  bin/start-hbase.sh
  單獨啓動一個HMaster進程:
  bin/hbase-daemon.sh start master
  單獨停止一個HMaster進程:
  bin/hbase-daemon.sh stop master
  單獨啓動一個HRegionServer進程:
  bin/hbase-daemon.sh start regionserver
  單獨停止一個HRegionServer進程:
  bin/hbase-daemon.sh stop regionserver

至此 hbase就配置完了

發佈了30 篇原創文章 · 獲贊 2 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章