大数据相关论文我爱编程

Hbase集群搭建

2016-12-23  本文已影响585人  先生_吕

【集群设计】
在原有的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
<configuration> 
    <!-- 指定hbase在HDFS上存储的路径 --> 
    <property> 
        <name>hbase.rootdir</name> 
        <value>hdfs://ns1/hbase</value> 
    </property> 
    <!-- 指定hbase是分布式的 --> 
    <property> 
        <name>hbase.cluster.distributed</name>
        <value>true</value> </property> 
    <!-- 指定zk的地址,多个用“,”分割 --> 
    <property> 
        <name>hbase.zookeeper.quorum</name>  
        <value>hadoop2005:2181,hadoop2006:2181,hadoop2004:2181,hadoop2003:2181</value> 
    </property>
</configuration>

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配置简介.png hbase-env.sh.png hbase-site.sh.png 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不能启动

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】:进程校验

2001.png 2002.png 2003.png

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

web页面查看
hadoop2001:60010

60010.png 详细信息.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'
coll.png

去hdfs上查看hbase数据

2016-12-23_113913.png

去hbase页面查看 : hadoop2001:60010

2016-12-23_114026.png

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

上一篇 下一篇

猜你喜欢

热点阅读