• CentOS7安装Zookeeper3.4.11+HBase1.3.3


    写在最前,本次环境搭建是在Hadoop2.6.1,三节点的基础上完成的。

    (关于搭建Hadoop环境,可参考:https://www.cnblogs.com/SysoCjs/p/10835793.html

    说明:

    #master,表示在master节点上操作;

    #master,#slave1,#slave2,表示在三个节点上都要操作;

    还有一点需要注意的是,本篇文章介绍的是Hadoop+Zookeeper+HBase,对于HBase,是自带有Zookeeper,但不使用其自带的。另外,必须得将zookeeper和hbase的安装放在一起介绍,因为这两者在启动和关闭是有次序之分。

    一、准备工作

            到官网下载:zookeeper-3.4.11.tar.gz、hbase-1.3.3-bin.tar.gz

            然后将这两个安装包mv到虚拟机指定的目录下,这里博主是放到了/usr/local/src/

    二、正式搭建环境

    1、zookeeper:

    1.1 解压安装包:

    #master

    tar -zxvf  zookeeper-3.4.11.tar.gz

    1.2 修改zookeeper配置

    #master

    当前目录为/usr/local/src/

     cd ./zookeeper-3.4.11/

    1.3 创建日志文件和数据文件夹:

    mkdir data
    mkdir log

    修改配置:

    cd conf
    cp zoo_sample.cfg zoo.cfg
    vim zoo.cfg

    添加如下内容:

    dataDir=/usr/local/src/zookeeper-3.4.11/data
    dataLogDir=/usr/local/src/zookeeper-3.4.11/log
    server.1=master:2888:3888
    server.2=slave1:2888:3888
    server.3=slave2:2888:3888

    1.4 配置环境变量

    #Master、#Slave1、#Slave2

    vim ~/.bashrc
    export ZOOKEEPER_HOME=/usr/local/src/zookeeper-3.4.11
    export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HIVE_HOME/bin:$SCALA_HOME/bin:$HBASE_HOME/bin:$ZOOKEEPER_HOME/bin

    刷新环境变量:

    source ~/.bashrc

    1.5 远程分发zookeeper文件夹数据

    #master

    scp -r /usr/local/src/zookeeper-3.4.11 root@slave1:/usr/local/src/zookeeper-3.4.11
    scp -r /usr/local/src/zookeeper-3.4.11 root@slave2:/usr/local/src/zookeeper-3.4.11

    1.6 添加ID:

    #Master

    echo "1" > /usr/local/src/zookeeper-3.4.11/data/myid

    #slave1

    echo "2" > /usr/local/src/zookeeper-3.4.11/data/myid

    #slave2

    echo "3" > /usr/local/src/zookeeper-3.4.11/data/myid

    1.5 启动Zookeeper服务

    #Master、#Slave1、#Slave2

    zkServer.sh start

    验证结果:

    zkServer.sh status

            zookeeper是采用随机选举的方式决定哪一台机器是leader,所以这里并不能保证master机器就是被选举成为zookeeper的leader节点。

    1.6 关闭集群

    #master、Slave1、Slave2

    zkServer.sh stop

    2、HBase:

    2.1 解压压缩包

    #master

    当前目录是/usr/local/src/

    tar -zxvf hbase-1.3.3-bin.tar.gz

    2.2 创建文件夹:在hbase目录中

    cd ./hbase-1.3.3/
    
    mkdir logs
    
    mkdir zookeeper
    
    mkdir -p var/hbase

    2.3 修改HBase的配置

    2.3.1 修改regionservers内容:

    cd hbase-0.98.6-hadoop2-bin/conf
    vim regionservers

    清空原有内容,添加一下内容:

    master
    slave1
    slave2

    2.3.2 修改hbase-env.sh内容:

    vim hbase-env.sh

    添加内容:

    export JAVA_HOME=/usr/local/src/jdk1.8.0_201
    export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib #注意,这里符号是.:
    
    export HBASE_MANAGES_ZK=false
    
    export HBASE_LOG_DIR=${HBASE_HOME}/logs

    HBASE_MANAGES_ZK=false 时使用独立的,为true时使用默认自带的。

    export HBASE_LOG_DIR是设置log文件存储的地方,可以直接添加此项,也可以在hbase-env.sh 里面找到这一项,将其前面的#去掉。

    2.3.3 修改hbase-site.xml内容

    <configuration>
            <property>
                    <name>hbase.tmp.dir</name>
                    <value>/var/hbase</value>
            </property>
            <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.quorum</name>
                    <value>master,slave1,slave2</value>
            </property>
            <property>
                    <name>hbase.zookeeper.property.dataDir</name>
                    <value>/usr/local/src/zookeeper</value>
            </property>
            <property>
                    <name>hbase.master.info.port</name>
                    <value>60010</value>
            </property> 
    </configuration>

    2.4 配置环境变量

    #Master、#Slave1、#Slave2

    vim ~/.bashrc
    export HBASE_HOME=/usr/local/src/hbase-1.3.3
    export HBASE_CLASSPATH=$HBASE_HOME/conf
    export HBASE_LOG_DIR=$HABSE_HOME/logs
    
    export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HIVE_HOME/bin:$SCALA_HOME/bin:$HBASE_HOME/bin:$ZOOKEEPER_HOME/bin

    刷新环境:

    source ~/.bashrc

    2.5 远程分发hbase文件

    scp -r /usr/local/src/hbase-1.3.3/ root@slave1:/usr/local/src/
    scp -r /usr/local/src/hbase-1.3.3/ root@slave2:/usr/local/src/

    2.6 启动集群

            这里必须注意了,启动HBase并不是简单的只启动HBase,因为上面已经配置了禁止使用自带zookeeper,这意味着需要启动刚才安装的zookeeper集群,然而还需要hadoop集群。因此:

    启动顺序:hadoop-->zookeeper-->hbase

    关闭顺序:hbase-->zookeeper-->hadoop

    如果不按顺序开启集群,最常见的异常就是hbase的Hmaster节点启动没几秒就掉了;如果不按顺序关闭,hbase会出现关闭异常,类似下图提示:

    hbase的启动方式是:

    #master

    start-hbase.sh

    验证:

    登录master:60010/master-status查看HBase状态:

     

  • 相关阅读:
    Spring注解开发系列Ⅵ --- AOP&事务
    Spring注解开发系列Ⅴ --- 自动装配&Profile
    Spring注解开发系列Ⅲ --- 生命周期
    Spring注解开发系列Ⅱ --- 组件注册(下)
    .net Core在过滤器中获取 系统接口方法(以IMemoryCache 为例) 及HttpContext 获取系统接口
    【旧文章搬运】炉子给的SYSTEM_HANDLE_TYPE有点错误
    【旧文章搬运】超级无敌大炉子的LzOpenProcess
    【旧文章搬运】PE重定位表学习手记
    【旧文章搬运】ZwQuerySystemInformation枚举内核模块及简单应用
    【旧文章搬运】ZwQuerySystemInformation枚举进线程信息
  • 原文地址:https://www.cnblogs.com/SysoCjs/p/11205721.html
Copyright © 2020-2023  润新知