ubuntu

HBase在Ubuntu下如何实现高可用

小樊
44
2025-12-28 11:35:01
栏目: 智能运维

在 Ubuntu 上实现 HBase 高可用的关键思路

架构与端口规划

部署步骤

  1. 前置准备

    • 安装 JDK 1.8+,配置 JAVA_HOME;所有节点配置 SSH 免密登录(主节点可免密登录各节点)。
    • 部署并验证 HDFS HA(fs.defaultFS、JournalNode/ZKFC 等已正确配置并能正常启动)。
    • 部署并验证 ZooKeeper 集群(奇数台,myid 与 server.x 一致,集群状态正常)。
  2. 安装与分发 HBase

    • 下载解压 HBase(如 2.4.x/2.5.x)至 /usr/local/hbase,配置环境变量:
      • export HBASE_HOME=/usr/local/hbase
      • export PATH=$PATH:$HBASE_HOME/bin
    • 将 HBase 目录与环境变量分发到所有节点。
  3. 关键配置($HBASE_HOME/conf)

    • hbase-env.sh
      • 设置 JAVA_HOME
      • 设置 HBASE_MANAGES_ZK=false(使用外部 ZK)
      • 可选:调整 HBASE_HEAPSIZE、GC 参数、日志/PID 目录
    • hbase-site.xml(示例)
      • 启用分布式:hbase.cluster.distributed=true
      • 指定 HDFS:hbase.rootdir=hdfs://<nameservice_or_nn_host>:8020/hbase(与 Hadoop core-site.xml 的 fs.defaultFS 一致)
      • 指定 ZK:hbase.zookeeper.quorum=zk1,zk2,zk3
      • 指定 ZK 数据目录:hbase.zookeeper.property.dataDir=/var/lib/zookeeper
    • 集群清单
      • regionservers:列出所有 RegionServer 主机名
      • backup-masters(新建):列出 备用 Master 主机名(如 master2)
  4. 启动与验证

    • 启动顺序:HDFS → ZooKeeper → HBase
      • start-dfs.sh(确保 NameNode/DataNode、ZKFC 正常)
      • 每台 ZK 节点:zkServer.sh start
      • 在 HBase Master 节点:start-hbase.sh
    • 验证
      • jps:Master 节点可见 HMaster(备用节点也会出现 HMaster),RegionServer 节点可见 HRegionServer
      • Web UI:访问 http://:16010,查看 Master/RegionServer 列表与集群健康
      • HBase Shell:status ‘simple’ 或 status 查看集群状态

验证高可用与常见故障排查

0
看了该问题的人还看了