当前位置:首页 > 修改聊天记录 > 正文内容

HBase完全分布式部署详细教程(含HA高可用版+普通非HA版)

网页编辑6个月前 (04-28)修改聊天记录290

下面给你一套**零基础、可直接照着做**的 HBase 完全分布式部署教程,包含**普通非HA版**和**HA高可用版(主备HMaster)**,基于 Hadoop 3.x + Zookeeper 3.5+ + HBase 2.2.x/2.4.x,生产可用、步骤完整、可直接复制命令。 --- ## 一、集群规划(3节点示例,可扩5节点) ### 节点角色(主机名+IP示例) - **master(192.168.1.100)**:HMaster、RegionServer、Zookeeper - **slave1(192.168.1.101)**:HMaster(备)、RegionServer、Zookeeper - **slave2(192.168.1.102)**:RegionServer、Zookeeper > 非HA版:仅 master 跑 HMaster;HA版:master+slave1 双 HMaster 主备。 ### 前置条件(所有节点必须完成) 1. **JDK 1.8+** 已安装,`JAVA_HOME` 配置正确 2. **Hadoop 3.x 完全分布式** 已启动(非HA/HA均可) 3. **Zookeeper 3.5+ 集群** 已启动(3节点,myid=1/2/3) 4. **主机名解析**:`/etc/hosts` 配置所有节点IP+主机名 5. **SSH免密互通**:master 能免密登 slave1/slave2 6. **时间同步**:所有节点时间差 < 30秒(chrony/NTP) --- ## 二、安装 HBase(所有节点执行) ### 1. 下载解压(master节点操作,再分发) ```bash # 下载(推荐2.4.18稳定版) wget https://archive.apache.org/dist/hbase/2.4.18/hbase-2.4.18-bin.tar.gz # 解压到 /opt tar -zxvf hbase-2.4.18-bin.tar.gz -C /opt/ mv /opt/hbase-2.4.18 /opt/hbase # 分发到 slave1/slave2 scp -r /opt/hbase slave1:/opt/ scp -r /opt/hbase slave2:/opt/ ``` ### 2. 配置环境变量(所有节点) ```bash vim /etc/profile # 添加以下内容 export HBASE_HOME=/opt/hbase export PATH=$HBASE_HOME/bin:$PATH # 生效 source /etc/profile # 验证 hbase version ``` --- ## 三、普通非HA版部署(单HMaster) ### 1. 核心配置文件(master节点配置,再分发) #### ① hbase-env.sh ```bash vim /opt/hbase/conf/hbase-env.sh # 取消注释并修改 export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk  # 你的JDK路径 export HBASE_MANAGES_ZK=false  # 禁用内置ZK,使用独立集群 ``` #### ② hbase-site.xml(核心) ```bash vim /opt/hbase/conf/hbase-site.xml # 添加以下配置 <configuration>  <!-- 开启完全分布式 -->  <property>    <name>hbase.cluster.distributed</name>    <value>true</value>  </property>  <!-- HBase数据存储在HDFS -->  <property>    <name>hbase.rootdir</name>    <value>hdfs://master:8020/hbase</value>  <!-- 对应Hadoop的fs.defaultFS -->  </property>  <!-- ZK集群地址(3节点) -->  <property>    <name>hbase.zookeeper.quorum</name>    <value>master,slave1,slave2</value>  </property>  <property>    <name>hbase.zookeeper.property.clientPort</name>    <value>2181</value>  </property>  <!-- Master/RegionServer端口 -->  <property>    <name>hbase.master.info.port</name>    <value>16010</value>  </property>  <property>    <name>hbase.regionserver.info.port</name>    <value>16030</value>  </property> </configuration> ``` #### ③ regionservers(指定所有RegionServer节点) ```bash vim /opt/hbase/conf/regionservers # 删除默认内容,添加 master slave1 slave2 ``` ### 2. 分发配置到所有节点 ```bash scp /opt/hbase/conf/* slave1:/opt/hbase/conf/ scp /opt/hbase/conf/* slave2:/opt/hbase/conf/ ``` ### 3. 启动集群(顺序:ZK → Hadoop → HBase) ```bash # 1. 启动ZK集群(所有节点) zkServer.sh start # 2. 启动Hadoop(master) start-dfs.sh start-yarn.sh # 3. 启动HBase(master) start-hbase.sh ``` ### 4. 验证非HA集群 ```bash # 查看进程(master) jps # 应有:HMaster、HRegionServer # 查看进程(slave1/slave2) jps # 应有:HRegionServer # Web UI(浏览器访问) http://master:16010  # HMaster管理页 # 命令行连接 hbase shell list  # 查看表列表(空则正常) ``` --- ## 四、HA高可用版部署(双HMaster主备) ### 1. 基于非HA配置,仅新增**backup-masters**文件 ```bash # master节点操作 vim /opt/hbase/conf/backup-masters # 添加备用Master主机名(每行一个) slave1 ``` ### 2. 分发配置到所有节点 ```bash scp /opt/hbase/conf/backup-masters slave1:/opt/hbase/conf/ scp /opt/hbase/conf/backup-masters slave2:/opt/hbase/conf/ ``` ### 3. 重启HBase集群 ```bash # 停止(master) stop-hbase.sh # 启动(master) start-hbase.sh ``` ### 4. 验证HA集群 ```bash # 查看进程(master、slave1都有HMaster) jps # master:HMaster(Active)、HRegionServer # slave1:HMaster(Standby)、HRegionServer # slave2:HRegionServer # Web UI 查看备Master http://master:16010 → Backup Masters 显示 slave1 # 测试故障转移(可选) # 杀死master的HMaster kill -9 `jps | grep HMaster | awk '{print $1}'` # 观察:slave1的HMaster自动变为Active,业务无中断 ``` --- ## 五、常见问题解决(必看) ### 1. HMaster启动失败 - 原因:**时间不同步** → 所有节点执行 `chronycMakestep` 同步时间 - 原因:**HDFS未启动** → 先 `start-dfs.sh` - 原因:**ZK连接失败** → 检查 `hbase.zookeeper.quorum` 配置,ZK端口2181开放 ### 2. RegionServer启动失败 - 原因:**HBase与Hadoop日志冲突** → 删除HBase的冲突jar包 ```bash rm -f /opt/hbase/lib/client-facing-thirdparty/slf4j-reload4j-1.7.33.jar ``` ### 3. Web UI无法访问 - 关闭防火墙:`systemctl stop firewalld` - 开放端口:`firewall-cmd --permanent --add-port=16010/tcp` --- ## 六、启停命令总结 ### 启动顺序 ``` ZK集群 → Hadoop集群 → HBase集群 ``` ```bash # 一键启动(master) start-hbase.sh ``` ### 停止顺序 ``` HBase集群 → Hadoop集群 → ZK集群 ``` ```bash # 一键停止(master) stop-hbase.sh ``` ---

扫描二维码推送至手机访问。

版权声明:本文由手机数据加工厂发布,如需转载请注明出处。

本文链接:https://gaijilu.com/?id=196

“HBase完全分布式部署详细教程(含HA高可用版+普通非HA版)” 的相关文章

苹果手机微信分身全解析,一机双号,轻松实现!

苹果手机微信分身全解析,一机双号,轻松实现!

在这个快节奏的时代,微信已成为我们生活中不可或缺的一部分。无论是工作还是生活,微信都扮演着重要的角色。然而,有时我们需要在同一台手机上同时管理两个微信账号,比如一个用于工作,一个用于生活。苹果手机用户常常对此感到困惑:苹果手机是否支持微信分身?能否同时登录两个微信账号?今天,我将和大家分享一些实用的...

安卓手机设置VPN教程

安卓手机设置VPN教程

安卓手机需要使用软件,在下载软件前,先将下图二维码长按(截图)保存至相册。然后打开本链接下载软件(vpn.apk)第1步,下载后按引导完成安装,安装后如下图:第2步,打开软件,参照下图的箭头的位置“+”号添加。第3步,弹出对话框,选择“导入配置或压缩包”,找到先前保存在相册中的二维码。第4步,找到并...

微商装逼神器  微信支付宝随意截图

微商装逼神器 微信支付宝随意截图

在社交场景中,易截图2显得尤为实用,它内置了微信和支付宝的截图生成器,用户可以轻松生成微信对话、转账、红包等社交活动的截图,这些功能的设置简单,易于操作,极大地方便了需要在社交媒体上进行演示或分享的用户。它不仅提供基本的截图功能,还包括图片编辑和社交场景模拟等多种高级功能,这使得它成为微商及普通用户...

手机数据工厂对强权、制度、民主的理解

手机数据工厂对强权、制度、民主的理解

你制订一个法律,只要求我遵守,这叫强权你制订一个法律,我们一起遵守,这叫制度你和我一起制订个法律,然后我们一起遵守这叫民主...

地震突然来临怎么办?手机上这个设置关键时刻能保命,不同机型方法汇总→

地震突然来临怎么办?手机上这个设置关键时刻能保命,不同机型方法汇总→

今天,甘肃定西市陇西县(北纬34.91度,东经104.58度)发生5.6级地震,震源深度10千米。“中国地震台网”全国地震预警微信小程序向周边49万用户推送了预警信息。如何设置地震预警?地震预警功能非常重要,提前几秒钟的预警都是紧急避险的宝贵时间。如何第一时间接收到地震预警信息?第一步:微信搜索“国...

关闭这几个设置,手机瞬间杜绝监听偷窥

1. 关闭多余定位权限所有无关 APP,全部关掉定位只给地图、外卖临时用拒绝 24 小时跟踪你的行踪2. 关闭相机、麦克风权限小游戏、杂牌软件、工具箱全部禁用相机 + 麦克风防止后台偷偷录音、偷拍3. 关闭自动读取剪贴板杜绝 APP 偷看你复制的密码、验证码、聊天内容隐私再也不被偷偷收集4. 关闭后...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。