Hbase1.2.2集群+Hadoop集群搭建

HBase安装

HBase的安装也有三种模式:单机模式、伪分布模式和完全分布式模式,在这里只介绍完全分布模式。前提是Hadoop集群和Zookeeper已经安装完毕,并能正确运行。 


第一步:下载安装包,解压到合适位置,并将权限分配给hadoop用户(运行hadoop的账户)
这里下载的是hbase-1.2.2,Hadoop集群使用的是2.7.2,将其解压到/usr/local下并重命名为hbase

wget http://mirror.bit.edu.cn/apache/hbase/1.2.2/hbase-1.2.2-bin.tar.gz
sudo cp hbase-1.2.2-bin.tar.gz /usr/local
sudo tar -zxf hbase-1.2.2-bin.tar.gz
sudo mv hbase-1.2.2 hbase
sudo chown -R hadoop:hadoop hbase

 第二步:配置相关的文件
(1)配置hbase-env.sh,该文件在/usr/local/hbase/conf

export JAVA_HOME=/usr/local/java/jdk1.8.0_77    #Java安装路径
export HBASE_CLASSPATH=/usr/local/hadoop/conf    #HBase类路径
export HBASE_MANAGES_ZK=true    #由HBase负责启动和关闭Zookeeper

 (2)配置hbase-site.xml,该文件位于/usr/local/hbase/conf 

<property>
           <name>hbase.master</name>
           <value>master:6000</value>
   </property>
   <property>
           <name>hbase.master.maxclockskew</name>
           <value>180000</value>
   </property>
   <property>
           <name>hbase.rootdir</name>
           <value>hdfs://master:9000/hbase</value>
   </property>
   <property>
           <name>hbase.cluster.distributed</name>
           <value>true</value>
   </property>
   <property>
           <name>hbase.zookeeper.quorum</name>
           <value>master,node1,node2</value>
   </property>
   <property>
           <name>hbase.zookeeper.property.dataDir</name>
           <value>/home/hadoop/zookeeper</value>
   </property>
   <property>
           <name>dfs.replication</name>
           <value>1</value>
   </property>
 其中,hbase.master是指定运行HMaster的服务器及端口号;hbase.master.maxclockskew是用来防止HBase节点之间时间不一致造成regionserver启动失败,默认值是30000hbase.rootdir指定HBase的存储目录;hbase.cluster.distributed设置集群处于分布式模式;hbase.zookeeper.quorum设置Zookeeper节点的主机名,它的值个数必须是奇数;hbase.zookeeper.property.dataDir设置Zookeeper的目录,默认为/tmp;dfs.replication设置数据备份数,集群节点小于3时需要修改,本次试验是一个节点,所以修改为1
(3)配置regionservers,该文件位于/usr/local/hbase/conf

设置所运行HBase的机器,此文件配置和hadoop中的slaves类似,一行指定一台机器,本次试验仅用一台机器,设置master即可。

node1
node2

 (4)设置HBase环境变量,文件位于/etc/profile在文件末尾添加:  

#hbase Env
export HBASE_HOME=/usr/local/hbase
export PATH=$PATH:$HBASE_HOME/bin

 使之生效:source /etc/profile

(5)修改hadoop集群及hbase集群pid文件存放位置(如果不设置话),停止hbase集群会报如下错误 

stopping hbasecat: /var/hadoop/pids/hbase-hadoop-master.pid: 没有那个文件或目录
  1. 在集群各个节点的/var目录下创建一个文件夹  
    sudo mkdir -p /var/hadoop/pids chown -R hadoop:hadoop /var/hadoop
  2. 修改hadoop-env.sh(/usr/local/hadoop/etc/hadoop/hadoop-env.sh)
    export HADOOP_PID_DIR=/var/hadoop/pids 
  3. 修改yarn-env.sh(/usr/local/hadoop/etc/hadoop/yarn-env.sh)
    export YARN_PID_DIR=/var/hadoop/pids
  4. 修改hbase-env.sh(/usr/local/hbase/conf/hbase-env.sh)
    export HBASE_PID_DIR=/var/hadoop/pids 

第三步:同步hbase到其他机器 

scp -r hbase hadoop@node1:/usr/local
scp -r hbase hadoop@node2:/usr/local

   

第四步:启动hadoop和hbase集群(启动顺序hadoop>hbase)

start-all.sh
start-hbase.sh

第五步:查看pid文件(/var/hadoop/pids) 

master机器 

hadoop-hadoop-namenode.pid  hadoop-hadoop-secondarynamenode.pid  
hbase-hadoop-master.pid hbase-hadoop-master.znode  
hbase-hadoop-zookeeper.pid  yarn-hadoop-resourcemanager.pid

 slave机器

hadoop-hadoop-datanode.pid  hbase-hadoop-regionserver.pid  
hbase-hadoop-regionserver.znode  hbase-hadoop-zookeeper.pid  
yarn-hadoop-nodemanager.pid

第六步:查看hbase运行情况 

hadoop@master:/var/hadoop/pids$ jps
26499 ResourceManager
26995 HQuorumPeer
27059 HMaster
27339 Jps
26123 NameNode
26335 SecondaryNameNode

hadoop@node1:/var/hadoop/pids$ jps
10678 HQuorumPeer
10775 HRegionServer
10362 DataNode
10493 NodeManager
10990 Jps

第七步:关闭hbase集群(关闭顺序hbase>hadoop)

stop-hbase.sh
stop-all.sh

相关推荐