构建大数据平台(五)Hbase集群搭建

一、前提:

(1)Hbase服务,是基于zookeeper的,虽然本身自带,但是在这里我们并不使用自带的,而是单独部署。

(2)Hbase使用稳定版本:hbase-1.3.1-bin.tar.gz;

(3)可在master上安装后,scp到其他slave机器上。

二、配置Hbase:

首先要注意在生产环境中目录结构要定义好,防止在项目过多的时候找不到所需的项目

  1. 目录统一放在/home下面 ,首先创建hbase项目目录
cd /home

#创建项目目录
mkdir hbase
cd /home/hbase
  1. 将 hbase-1.3.1-bin.tar.gz 放在 /home/hbase下,并解压缩,解压缩完成后可删除安装包:
#解压缩
tar -zxvf hbase-1.3.1-bin.tar.gz

#完成后可删除
rm -f hbase-1.3.1-bin.tar.gz
  1. 修改配置文件

(1)环境变量配置:
为方便以后操作,在/etc/profile文件中主要增加的内容是:

export  HADOOP_HOME=/home/hadoop/hadoop-2.9.0 
export  HADOOP_CONF_DIR=${HADOOP_HOME}/etc/hadoop  
export  HADOOP_COMMON_LIB_NATIVE_DIR=${HADOOP_HOME}/lib/native  
export  HADOOP_OPTS="-Djava.library.path=${HADOOP_HOME}/lib"
export  ZK_HOME=/home/zookeeper/zookeeper-3.4.10  
export  HBASE_HOME=/home/hbase/hbase-1.3.1

PATH中增加:

export PATH=.:${JAVA_HOME}/bin:${HADOOP_HOME}/bin:${HADOOP_HOME}/sbin:${HBASE_HOME}:${ZK_HOME}/bin:$PATH 

执行命令生效

source /etc/profile

(2)修改 hbase-env.sh:

在 /home/hbase/hbase-1.3.1/conf/hbase-env.sh 中找到配置文件注释的这行# export JAVA_HOME=/usr/java/jdk1.6.0/,在下面添加jdk环境变量:

export JAVA_HOME=/usr/local/java/jdk1.8.0_161

(3)修改配置文件hbase-site.xml:

<configuration>
    <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.property.clientPort</name>    
        <value>2181</value>    
    </property>    
    <property>    
        <name>hbase.zookeeper.quorum</name>    
        <value>master,slave1,slave2,slave3</value>    
    </property>
    <property>    
        <name>dfs.support.append</name>    
        <value>true</value>    
    </property>
    <property>
        <name>hbase.zookeeper.property.dataDir</name>    
        <value>/home/zookeeper/zkdata</value>    
    </property>    
</configuration>

(4) 修改regionservers文件:
和与hadoop的slave文件相同
添加hadoop slave中的数据节点信息:

slave1
slave2
slave3

(5) 因为Hadoop和Hbase都调用slf4j-log4j,且都存在这个jar包。因此,删掉其中一个,避免冲突:

cd /home/hbase/hbase-1.3.1/lib/
rm -f slf4j-log4j12-1.7.5.jar

(6) 将安装配置好的hbase目录复制到所有slave节点中:

scp -r /home/hbase/ root@slave1:/home/
scp /etc/profile root@slave1:/etc/

scp -r /home/hbase/ root@slave2:/home/
scp /etc/profile root@slave2:/etc/

scp -r /home/hbase/ root@slave3:/home/
scp /etc/profile root@slave3:/etc/

说明:各slave节点,环境变量配置完后,要执行source /etc/profile才能生效。

(7)关闭所有节点的防火墙,防止hbase访问失败。

 #停止firewall
systemctl stop firewalld.service
 #禁止firewall开机启动
systemctl disable firewalld.service
#查看默认防火墙状态(关闭后显示notrunning,开启后显示running)
firewall-cmd --state 

 #停止iptables
service iptables stop
 #禁止iptables 开机启动
chkconfig iptables off 

三、启动Hbase:

启动的顺序一般是hadoop -> zookeeper -> hbase,停止顺序相反!
hbase只在master机器上启动就可以!

  1. 启动hbase集群,命令如下:
 cd /home/hbase/hbase-1.3.1/bin/
./start-hbase.sh
  1. 执行hbsae shell命令,进入hbase控制台:
[root@master bin]# hbase shell
HBase Shell; enter 'help<RETURN>' for list of supported commands.
Type "exit<RETURN>" to leave the HBase Shell
Version 1.3.1, r930b9a55528fe45d8edce7af42fef2d35e77677a, Thu Apr  6 19:36:54 PDT 2017

hbase(main):001:0> 
  1. 输入list命令,如果正常执行,表示hbase启动成功:
hbase(main):001:0> list
TABLE                                                                                        
0 row(s) in 0.4390 seconds

至此,Hbase集群搭建完成

    原文作者:Mr_ZhaiDK
    原文地址: https://www.jianshu.com/p/2fbd8f5790d6
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞