ubuntu

Ubuntu上HBase集群如何搭建

小樊
36
2025-10-14 09:41:59
栏目: 智能运维

Ubuntu上搭建HBase集群详细步骤

一、准备工作

1. 环境要求

2. 下载并解压HBase

在主节点(如hadoop100)下载HBase安装包(选择与Hadoop版本兼容的HBase版本,如Hadoop 3.x对应HBase 2.4.x),解压到/usr/local目录:

wget https://downloads.apache.org/hbase/2.4.9/hbase-2.4.9-bin.tar.gz
tar -zxvf hbase-2.4.9-bin.tar.gz -C /usr/local/
mv /usr/local/hbase-2.4.9 /usr/local/hbase  # 重命名目录

设置HBASE_HOME环境变量(在/etc/profile中添加):

export HBASE_HOME=/usr/local/hbase
export PATH=$PATH:$HBASE_HOME/bin

执行source /etc/profile使配置生效。

二、配置HBase文件

1. 修改hbase-env.sh

编辑$HBASE_HOME/conf/hbase-env.sh,设置Java路径并关闭HBase自带Zookeeper(使用外部Zookeeper集群):

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64  # 根据实际JDK路径修改
export HBASE_MANAGES_ZK=false  # 设为false,表示使用外部Zookeeper

若需调整HBase日志或PID目录,可修改HBASE_LOG_DIRHBASE_PID_DIR参数。

2. 配置hbase-site.xml

编辑$HBASE_HOME/conf/hbase-site.xml,添加以下核心配置(关键参数说明见注释):

<configuration>
    <!-- 指定HBase以分布式模式运行 -->
    <property>
        <name>hbase.cluster.distributed</name>
        <value>true</value>
    </property>
    <!-- 指定HBase在HDFS上的存储路径(需与Hadoop core-site.xml中的fs.defaultFS一致) -->
    <property>
        <name>hbase.rootdir</name>
        <value>hdfs://hadoop100:9000/hbase</value>  # 替换为你的Hadoop NameNode地址
    </property>
    <!-- 指定Zookeeper集群地址(多个节点用逗号分隔) -->
    <property>
        <name>hbase.zookeeper.quorum</name>
        <value>hadoop100,hadoop200,hadoop201</value>  # 替换为你的Zookeeper节点地址
    </property>
    <!-- 指定Zookeeper数据存储目录 -->
    <property>
        <name>hbase.zookeeper.property.dataDir</name>
        <value>/usr/local/hbase/zk</value>  # Zookeeper数据目录
    </property>
</configuration>

注意hbase.rootdir需与Hadoop的core-site.xmlfs.defaultFS值一致,hbase.zookeeper.quorum需与Zookeeper的zoo.cfgserver.x值一致。

3. 配置regionservers

编辑$HBASE_HOME/conf/regionservers,添加所有RegionServer节点(负责存储数据的节点):

hadoop100
hadoop200
hadoop201

若需设置备用Master节点(提高集群高可用),可创建backup-masters文件(位于conf目录),添加备用Master节点(如hadoop200)。

三、分发HBase到从节点

将主节点的HBase目录同步到所有从节点(使用scp命令,需提前配置免密登录):

scp -r /usr/local/hbase/ hadoop@hadoop200:/usr/local/
scp -r /usr/local/hbase/ hadoop@hadoop201:/usr/local/

确保从节点的HBASE_HOME环境变量与主节点一致(可通过echo $HBASE_HOME验证)。

四、启动HBase集群

1. 启动顺序

HBase依赖Hadoop和Zookeeper,启动顺序必须为:Hadoop → Zookeeper → HBase

2. 验证集群状态

五、常见问题排查

0
看了该问题的人还看了