HBase纪要(下)

本文涉及的产品
云原生网关 MSE Higress,422元/月
注册配置 MSE Nacos/ZooKeeper,118元/月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: HBase纪要(下)

滚动重启


使用greceful_stop.sh脚本来重启region服务器,并将之前属于他的region移回原位。


Balance_switch  false
  $for  I   in   ‘cat  conf/regionservers|sort’;
      Do     ./bin/graceful_stop.sh  -- restart --reload  --debug  $i;
      Done  &>   /tmp/log.txt  &
  Balance_switch  true


使用tail –f 命令查看/tmp/log.txt中脚本运行的进度。以上操作只对region服务器有效。


同时请确保在执行上述操作之前已禁用负载均衡。


实现滚动重启的步骤:


1.      解压用户的发行版,将配置调整好后分发到整个集群



2.      运行hbck以确认集群数据的一致性(主要验证meta表),如果有不一致的情况要修复一下。


 Hbase hbck



3.      重启master


  Hbase-daemon.sh  stop master;  hbase-daemon.sh   start  master



4.      关闭region均衡器


Echo  “balance_switch  false” | hbase  shell



5.      在每个region服务器上运行graceful_stop.sh脚本


$for I   in   ‘cat conf/regionservers|sort’;


    Do     ./bin/graceful_stop.sh  -- restart --reload  --debug  $i;


    Done   &>   /tmp/log.txt &


6.      再次重启master。这样会清除其保存的崩溃的服务器列表,并同时启动负载均衡


Hbase-daemon.sh  stop master;  hbase-daemon.sh   start  master


Echo  “balance_switch  true” | hbase shell


7.运行hbck以确认集群一致性。





新增服务器


1.       伪分布式模式


 在一台服务器上模拟整个集群的运行状态。所有进程都要分享本地资源。


适合少量数据的测试。


添加本地备份master:


Local-master-backup.sh   start  1


命令最后的数字指定了master的RPC端口和WebUI端口与默认配置值的偏移量。两个端口的默认值分别是60000和60010,偏移量会被加到相应的默认值上。


上面的命令执行后,一个新的master进程将会启动,与原来的配置一样,不过监听的端口号分别是60001和60011.


启动多个备份master


Local-master-backup.sh   start 1   3  5


3个用于备份的master的RPC端口分别是60001,60003和60005


WebUI监听端口为60011,60013和60015。


停止备份master

Local-master-backup.sh   stop 1


用户可以一次停止多个备份master,用户指定的端口偏移量用于停止对应的master。


添加本地region服务器


  使用local-regionservers.sh,和启动本地master服务器类似,指定偏移量即可


Region服务器默认使用60200作为RPC端口,使用60300作为Web UI端口。


Local-regionservers.sh    start  1
   Local-regionservers.sh    start  1   2   3
   Local-regionservers.sh   stop  1


2.完全分布式集群


添加一个备份master


  通过备份master节点避免master出现故障而造成Hbase单点失效。


Master进程使用Zookeeper来协商哪一个是当前活动的进程。Zookeeper中有一个所有master进程都会竞争的专用znode。第一个竞争到的master会创建这个znode。当集群启动时,竞争获胜的master会成为当前提供服务的master,其他master进程只是轮询检查这个znode,当它消失时再次竞争。


/hbase/master  znode是临时znode。Region服务器对于的znode节点也是临时节点,用于报告他们的存在状态。


通常master服务器的配置与集群的其他机器相同,一旦用户确认配置没有问题,用一下命令启动一个备份master:


Hbase-daemon.sh  start  master


假设已经有master正在运行,这条命令就会启动一个新的master进程等待Zookeeper中的Znode被移除。


  使用--backup参数指定备份的master


Hbase-daemon.sh   start  master  --backup


会新启动一个master来等待一个专有的master,即使用start-hbase.sh脚本启动,或不加—backup参数启动的master在ZooKeeper中创建/hbase/master这个znode。


启动的备份master会进入轮询选举阶段。



在Hbase0.90.x开始,可以通过conf目录下添加backup-masters文件来指定备份服务器。


如:添加3个备份master运行在Zookeeper所在的服务器上


  Conf/backup-masters中的内容:

Zk1.foo.com
Zk2.foo.com
Zk3.foo.com


注意:在backup-masters中的节点会使用—backup选项来启动备份master进程。并且是在start-hbase.sh脚本启动主master和region服务器之后,备份master才会启动。


添加region服务器


  步骤:


1.      修改conf目录下的regionservers文件,这样可以使启动脚本能够添加新服务器。


简单地在文件中添加一行,内容为对应要添加的region服务器的主机名



2.      将修改的配置文件复制到集群中所有的机器上



3.      确认新添加的机器上已经安装Hbase,且配置正确



4.      在master机器上执行start-hbase.sh脚本,会跳过所有以已经启动region服务器的服务。


另一种,直接在新的机器上执行

Hbase-daemon.sh   start regionserver


日志分析


不同服务种类创建的日志文件


服务器类型                                                  log文件


HBase  Master                                           $HBASE_HOME/logs/HBase-<user>-master-<hostname>.log                                


HBase   RegionServer                             $HBASE_HOME/logs/HBase-<user>-master-<hostname>.log


ZooKeeper                                                 只在控制台打印日志


NameNode                                                 $HADOOP_HOME/logs/hadoop-<user>-namenode-<hostname>.log


DataNode                                                   $HADOOP_HOME/logs/hadoop-<user>-datanode-<hostname>.log


JobTracker                                                 $HADOOP_HOME/logs/hadoop-<user>-jobtracker-<hostname>.log


TaskTracker                                                $HADOOP_HOME/logs/hadoop-<user>-jobtracker-<hostname>.log

相关实践学习
lindorm多模间数据无缝流转
展现了Lindorm多模融合能力——用kafka API写入,无缝流转在各引擎内进行数据存储和计算的实验。
云数据库HBase版使用教程
&nbsp; 相关的阿里云产品:云数据库 HBase 版 面向大数据领域的一站式NoSQL服务,100%兼容开源HBase并深度扩展,支持海量数据下的实时存储、高并发吞吐、轻SQL分析、全文检索、时序时空查询等能力,是风控、推荐、广告、物联网、车联网、Feeds流、数据大屏等场景首选数据库,是为淘宝、支付宝、菜鸟等众多阿里核心业务提供关键支撑的数据库。 了解产品详情:&nbsp;https://cn.aliyun.com/product/hbase &nbsp; ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库&nbsp;ECS 实例和一台目标数据库&nbsp;RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&amp;RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
|
存储 缓存 分布式计算
HBase纪要(中)
HBase纪要(中)
106 0
|
负载均衡 Java Shell
HBase纪要(上)
HBase纪要(上)
136 0
|
6月前
|
Java Shell 分布式数据库
【大数据技术Hadoop+Spark】HBase数据模型、Shell操作、Java API示例程序讲解(附源码 超详细)
【大数据技术Hadoop+Spark】HBase数据模型、Shell操作、Java API示例程序讲解(附源码 超详细)
154 0
|
2月前
|
分布式计算 Java Hadoop
java使用hbase、hadoop报错举例
java使用hbase、hadoop报错举例
84 4
|
29天前
|
分布式计算 Hadoop Shell
Hadoop-35 HBase 集群配置和启动 3节点云服务器 集群效果测试 Shell测试
Hadoop-35 HBase 集群配置和启动 3节点云服务器 集群效果测试 Shell测试
65 4
|
29天前
|
SQL 分布式计算 Hadoop
Hadoop-37 HBase集群 JavaAPI 操作3台云服务器 POM 实现增删改查调用操作 列族信息 扫描全表
Hadoop-37 HBase集群 JavaAPI 操作3台云服务器 POM 实现增删改查调用操作 列族信息 扫描全表
30 3
|
29天前
|
分布式计算 Hadoop Shell
Hadoop-36 HBase 3节点云服务器集群 HBase Shell 增删改查 全程多图详细 列族 row key value filter
Hadoop-36 HBase 3节点云服务器集群 HBase Shell 增删改查 全程多图详细 列族 row key value filter
55 3
|
29天前
|
SQL 分布式计算 Hadoop
Hadoop-34 HBase 安装部署 单节点配置 hbase-env hbase-site 超详细图文 附带配置文件
Hadoop-34 HBase 安装部署 单节点配置 hbase-env hbase-site 超详细图文 附带配置文件
66 2
|
29天前
|
存储 分布式计算 Hadoop
Hadoop-33 HBase 初识简介 项目简介 整体架构 HMaster HRegionServer Region
Hadoop-33 HBase 初识简介 项目简介 整体架构 HMaster HRegionServer Region
49 2
|
5月前
|
存储 分布式计算 Hadoop
Hadoop节点文件存储HBase设计目的
【6月更文挑战第2天】
57 6