CentOS7 Hbase-1.3.1 分散式部署

liuhelong發表於2017-09-24

基礎安裝

免密碼登入

cd /root/.ssh/
ssh-keygen -t rsa

ssh-copy-id hd211
ssh-copy-id hd212
ssh-copy-id hd214

編輯hbase-env.sh

export HBASE_MANAGES_ZK=false
# 修改日誌儲存目錄
export HBASE_LOG_DIR=/data/hbase/logs
# pid儲存目錄
export HBASE_PID_DIR=/data/hbase/pids

編輯hbase-site.xml

<configuration>
  <!--HBase資料目錄位置-->
  <property>
    <name>hbase.rootdir</name>
    <value>hdfs://hb212:9000/hbase</value>
  </property>
  <!--開啟 hbase 分佈模式-->
  <property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>
  </property>
  <!--指定 hbase 叢集主控節點-->
  <property>
    <name>hbase.master</name>
    <value>hb211</value>
  </property>
  <!--hbase的一些臨時檔案存放目錄-->
  <property>
    <name>hbase.tmp.dir</name>
    <value>file:///data/hbase/tmp</value>
  </property>
  <!--指定 zookeeper 叢集節點名 , 因為是由 zookeeper 表決演算法決定的-->
  <property>
    <name>hbase.zookeeper.quorum</name>
    <value>hb211,hb212,hb214</value>
  </property>
  <!--hbase連線到zookeeper的埠,預設是2181-->
  <property>
    <name>hbase.zookeeper.property.clientPort</name>
    <value>2181</value>
  </property>
  <!--zookeeper臨時資料目錄-->
  <property>
    <name>hbase.zookeeper.property.dataDir</name>
    <value>/data/hbase/tmp/zk/data</value>
  </property>
</configuration>

配置regionservers

hb211
hb212
hb214

建立目錄

mkdir /data/hbase/tmp
mkdir /data/hbase/tmp/zk
mkdir /data/hbase/tmp/zk/data

同步到其它伺服器

scp -r /usr/hbase hb211:/usr
scp -r /usr/hbase hb214:/usr

啟動

bin/start-hbase.sh

控制檯

bin/hbase shell

其它

1.hbase stopping hbasecat: /tmp/hbase-root-master.pid: 沒有那個檔案或目錄
修改hadoop-env.sh ,指定pid_dir

export HADOOP_PID_DIR=/data/hadoop/pids
export HADOOP_SECURE_DN_PID_DIR=/data/hadoop/pids

2.ERROR: org.apache.hadoop.hbase.PleaseHoldException: Master is initializing
防火牆設定問題,可以選擇關閉防火牆

Hbase分散式可以不需要Hadoop

相關文章