Hbase集群搭建

【集群设计】
在原有的hadoop2.x集群上搭建Hbase集群,因为hbase集群要以来hdfs

hostname                     ip                       软件                      进程               角色
hadoop2001              192.168.1.221                Hbase                    HMASTER               主
hadoop2002              192.168.1.222                Hbase                    HMASTER               备
hadoop2003              192.168.1.223                Hbase                    regionservers         子
hadoop2004              192.168.1.224                Hbase                    regionservers         子
hadoop2005              192.168.1.225                Hbase                    regionservers         子
hadoop2006              192.168.1.226                Hbase                    regionservers         子

【前期准备】
hadoop集群要搭建好,zookeeper集群也要搭建好

【1】:下载解压

在hadoop2001机器上先搭建(2001上做了其他机器的免密码登陆)
    tar -xzvf  Hbase-0.96.2.tar.gz
    cp -r Hbase-0.96.2  /usr/local

【2】添加和修改配置

2.1>将hadoop的配置hdfs-site.xml和core-site.xml 放到hbase/conf下
    cd  /usr/local/hadoop/etc/hadoop
    cp  hdfs-site.xml  core-site.xml  /usr/local/hbase-0.96/conf

2.2>修改hbase-env.sh
    设置hbse使用外部的zk和使用的jdk
        export HBASE_MANAGES_ZK=false
        export JAVA_HOME=/usr/local/jdk1.7.0_65

2.3>修改hbase-site.xml
 
     
     
        hbase.rootdir 
        hdfs://ns1/hbase 
     
     
     
        hbase.cluster.distributed
        true  
     
     
        hbase.zookeeper.quorum  
        hadoop2005:2181,hadoop2006:2181,hadoop2004:2181,hadoop2003:2181 
    


2.4>编辑从节点regionservers启动脚本
    hadoop2003
    hadoop2004
    hadoop2005
    hadoop2006

2.5>将hbase节点cp到其他机器上
    scp -r /usr/local/hbase-0.96  root@hadoop2002:/usr/local
    scp -r /usr/local/hbase-0.96  root@hadoop2003:/usr/local
    scp -r /usr/local/hbase-0.96  root@hadoop2004:/usr/local
    scp -r /usr/local/hbase-0.96  root@hadoop2005:/usr/local
    scp -r /usr/local/hbase-0.96  root@hadoop2006:/usr/local

Hbase集群搭建_第1张图片
hbase配置简介.png
Hbase集群搭建_第2张图片
hbase-env.sh.png
Hbase集群搭建_第3张图片
hbase-site.sh.png
Hbase集群搭建_第4张图片
regionservers子节点配置.png

【3】:将hadoop目录下的core-site.xml和hdfs-site.xml复制到hbase/conf下(给每台机器都copy),这是为了让hbase知道上边所配置的ns1是谁,即知道nameService的映射(通过nameservice找到namenode),因为hbase以来hdfs,如果不copyhadoop目录下的core-site.xml和hdfs-site.xml到hbase的conf目录下,会导致HRegionserver(hbase子节点)找不到HDFS的位置,从而导致HRegionserver不能启动

Hbase集群搭建_第5张图片
2017-02-21_112541.png

【4】:启动集群

在启动hbase集群之前要确保hdfs和zookeeper集群已经打开

在2001机器上开启集群
    ./start-hbase.sh

这时(01有hmaster进程,03040506上有hregionserver进程)
所以还要在02机器上再开启一个Hmaster进程作为备的Hmaster,以达到高可靠
    ./hbase-daemon.sh start master

【5】:进程校验

Hbase集群搭建_第6张图片
2001.png
Hbase集群搭建_第7张图片
2002.png
2003.png

03,04,05,06上都会有HRegionServer进程

web页面查看
hadoop2001:60010

Hbase集群搭建_第8张图片
60010.png
Hbase集群搭建_第9张图片
详细信息.png

【6】:建表验证

./hbase shell

//建user表
create 'user','info','data'

//插数据
put 'user','rk0001','info:name','xiaojiang'
put 'user','rk0001','info:age','16'
put 'user','rk0001','info:sex','boy'

//查看数据
scan 'user'
Hbase集群搭建_第10张图片
coll.png

去hdfs上查看hbase数据

Hbase集群搭建_第11张图片
2016-12-23_113913.png

去hbase页面查看 : hadoop2001:60010

Hbase集群搭建_第12张图片
2016-12-23_114026.png

【7】:高可靠验证
将01主机上的Hmaster进程kill掉,看会不会切换到02上的Hmaster

你可能感兴趣的:(Hbase集群搭建)