Hbase - 集群搭建

作者: 大猪大猪 | 来源:发表于2019-05-09 20:41 被阅读11次

    Hbase 在大数据的体系中扮演着DB角色,不得不说是重要的一员,在上一篇,大猪 已经给大家演示了 Hadoop 3.2 集群搭建 了,本次我们将继续紧接着搭建Hbase集群。

    由于我们安装是Hbase的集群版本,这里将会使用到独立的 Zookeeper。

    Zookeeper 与 Hbase 使用的版本也将都是最新版本,坑嘛,自然由大猪来趟。

    服务器一

    下载 zookeeper-3.4.14.tar.gz

    curl -O http://apache.mirrors.ionfish.org/zookeeper/stable/zookeeper-3.4.14.tar.gz
    

    解压更名

    tar -zxvf zookeeper-3.4.14.tar.gz
    mv zookeeper-3.4.14 zookeeper
    

    配置PATH环境

    echo -e 'export ZK_HOME=/soft/zookeeper \nexport PATH=$PATH:$ZK_HOME/bin' >> /etc/profile
    # 立即生效
    source /etc/profile
    

    coo.cfg 配置

    tickTime=2000
    initLimit=10
    syncLimit=5
    dataDir=/soft/zookeeper/data
    dataLogDir=/soft/zookeeper/logs
    clientPort=2181
    server.1=m1.example.com:2888:3888
    server.2=m2.example.com:2888:3888
    

    创建目录

    mkdir -p /soft/zookeeper/data
    mkdir -p /soft/zookeeper/logs
    

    配置zk的日志输出路径

    # 在第二行添加下面语句到 bin/zkServer.sh 中
    export ZOO_LOG_DIR=/soft/zookeeper/logs
    

    创建zk id标识

    echo 1 > /soft/zookeeper/data/myid
    

    服务器二

    复制zookeeper到服务器二soft目录上

    scp -r zookeeper root@m2.example.com:/soft
    

    创建zk id标识

    echo 2 > /soft/zookeeper/data/myid
    

    创建目录 => 同上
    配置PATH环境 => 同上

    ZK启动

    # 服务器一
    zkServer.sh start
    # 服务器二
    zkServer.sh start
    
    # 成功如下
    [root@m1 data]# zkServer.sh status
    ZooKeeper JMX enabled by default
    Using config: /soft/zookeeper/bin/../conf/zoo.cfg
    Mode: follower 或 leader
    

    Hbase操作

    下载 hbase-2.1.4-bin.tar.gz

    curl -O https://www.apache.org/dyn/closer.lua/hbase/2.1.4/hbase-2.1.4-bin.tar.gz
    

    解压更名

    tar -zxvf hbase-2.1.4-bin.tar.gz
    mv hbase-2.1.4 hbase
    

    配置PATH环境

    echo -e 'export export HBASE_HOME=/soft/hbase \nexport PATH=$PATH:$HBASE_HOME/bin' >> /etc/profile
    # 立即生效
    source /etc/profile
    

    hbase-site.xml 配置

        <property>
            <name>hbase.rootdir</name>
            <value>hdfs://m1.example.com:9000/hbase</value>
        </property>
        <property>
            <name>hbase.unsafe.stream.capability.enforce</name>
            <value>false</value>
        </property>
        <property>
             <name>hbase.master</name>
             <value>16010</value>
        </property>
        <property>
            <name>hbase.cluster.distributed</name>
            <value>true</value>
        </property>
        <property>
            <name>hbase.zookeeper.quorum</name>
            <value>m1.example.com,m2.example.com</value>
        </property>
        <property>
            <name>hbase.zookeeper.property.dataDir</name>
            <value>/soft/zookeeper/data</value>
        </property>
        <property>
            <name>hbase.zookeeper.property.clientPort</name>
            <value>2181</value>
        </property>
    

    regionservers 添加

    m1.example.com
    m2.example.com
    

    backup-masters 添加

    m1.example.com
    

    下载 htrace-core-3.2.0-incubating.jar 到 hbase/lib 目录中

    curl -O http://central.maven.org/maven2/org/apache/htrace/htrace-core/3.2.0-incubating/htrace-core-3.2.0-incubating.jar
    

    bin/hbase-env.sh 添加

    export JAVA_HOME=/soft/jdk1.8
    export HBASE_MANAGES_ZK=false
    

    复制hbase到另一台服务器上

    scp -r hbase root@m2.example.com:/soft
    

    另一台的环境配置跟上面一样

    可以启动Hbase了

    start-hbase.sh
    

    尝试创建一张表

    hbase shell
    create 'logTable',{NAME => 'info',TTL => '3 DAYS',CONFIGURATION => {'SPLIT_POLICY' => 'org.apache.hadoop.hbase.regionserver.KeyPrefixRegionSplitPolicy','KeyPrefixRegionSplitPolicy.prefix_length'=>'2'}},SPLITS => ['20','80']
    

    访问 http://m1.example.com:16010

    提示

    如果日志中出现下面的错误

    Master startup cannot progress, in holding-pattern until region onlined
    

    则执行zkCli.sh删除meta信息,重启Hbase即可

    zkCli.sh -server 127.0.0.1
    rmr /hbase/meta-region-server
    

    相关文章

      网友评论

        本文标题:Hbase - 集群搭建

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