Hbase集群搭建

作者: 先生_吕 | 来源:发表于2016-12-23 11:42 被阅读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

    相关文章

      网友评论

        本文标题:Hbase集群搭建

        本文链接:https://www.haomeiwen.com/subject/ftkkvttx.html