温馨提示×

ubuntu hbase配置步骤

小樊
35
2025-12-26 12:47:07
栏目: 智能运维

Ubuntu 下 HBase 配置步骤

一 环境准备与版本选择

  • 操作系统建议:Ubuntu 20.04/22.04 LTS
  • Java 版本:HBase 2.x 建议使用 Java 8(1.8.x),更高版本可能不兼容。
  • 依赖组件:
    • 单机模式:仅需 Java 8
    • 伪分布式/集群模式:需 Hadoop HDFS 正常运行;ZooKeeper 可使用内置(HBASE_MANAGES_ZK=true)或外部集群。
  • 基础工具:SSH(本地免密建议配置)、解压工具、编辑器。
  • 版本建议:选择与 Hadoop 版本匹配的 HBase 2.4.x/2.5.x 稳定版,便于兼容与社区支持。

二 安装与环境变量

  • 下载并解压(示例为 2.5.4):
    • 下载地址:Apache HBase 官网下载页,选择 hbase-2.5.4-bin.tar.gz
    • 解压至 /usr/local
      sudo tar -zxf ~/下载/hbase-2.5.4-bin.tar.gz -C /usr/local
      sudo chown -R $USER:$USER /usr/local/hbase-2.5.4
  • 配置环境变量(~/.bashrc 或 /etc/profile):
    export HBASE_HOME=/usr/local/hbase-2.5.4
    export PATH=$PATH:$HBASE_HOME/bin
    source ~/.bashrc
  • 验证安装:
    hbase version
    出现版本信息即表示安装成功。

三 单机模式配置

  • 编辑 $HBASE_HOME/conf/hbase-env.sh
    export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 # 按实际路径修改
    export HBASE_MANAGES_ZK=true # 使用内置 ZooKeeper
  • 编辑 $HBASE_HOME/conf/hbase-site.xml


    hbase.rootdir
    file:///usr/local/hbase-2.5.4/hbase-tmp

  • 启动与验证:
    start-hbase.sh
    hbase shell
    status
    stop-hbase.sh
  • 说明:rootdir 使用本地文件系统目录,避免默认 /tmp 重启后数据丢失。

四 伪分布式模式配置

  • 前提:Hadoop HDFS 已启动(如 start-dfs.sh),NameNode 默认 9000 端口。
  • 编辑 $HBASE_HOME/conf/hbase-env.sh
    export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
    export HBASE_MANAGES_ZK=true

    如与 Hadoop 依赖冲突,可添加:

    export HBASE_DISABLE_HADOOP_CLASSPATH_LOOKUP=true
  • 编辑 $HBASE_HOME/conf/hbase-site.xml


    hbase.rootdir
    hdfs://localhost:9000/hbase


    hbase.cluster.distributed
    true


    hbase.unsafe.stream.capability.enforce
    false

  • 启动与验证:
    start-hbase.sh
    jps # 应看到 HMaster、HRegionServer(及内置 HQuorumPeer)
    hbase shell
    status
    stop-hbase.sh
  • 常见问题:
    • 启动后看不到 HMaster:检查是否设置 hbase.unsafe.stream.capability.enforce=false
    • 停止卡住:先执行 hbase-daemon.sh stop master,再执行 stop-hbase.sh。
    • 启停顺序:先 Hadoop → 再 HBase → 先停 HBase → 再停 Hadoop。

五 常见问题与排查

  • Java 版本不兼容:HBase 2.x 建议使用 Java 8;更高版本可能报错或行为异常。
  • 端口与主机名:伪分布式使用 localhost:9000 作为 HDFS 入口;多机集群需将 localhost 改为 NameNode 主机名/IP,并在所有节点保持一致配置。
  • 日志定位:异常时优先查看 $HBASE_HOME/logs/ 下的日志文件(如 hbase--master-.log)。
  • Web UI:HMaster Web UI 默认端口 16010(如无法访问,检查防火墙与绑定地址)。
  • 依赖冲突:如出现类加载或版本冲突,可设置 HBASE_DISABLE_HADOOP_CLASSPATH_LOOKUP=true

0