Hbase集群迁移方案

一、领域

领域

说明

Approved

Y

金融

涉及收银台、支付网关、对账等金融领域

Y

大数据

涉及业务数据化、数据资产化和数据业务化等大数据领域

Y

算法

算法、策略等

Y

营销

营销体系

Y

基础架构

基础组件

Y

QA

涉及质量保障、系统稳定性、测试工具等相关

Y

SRE

涉及CI/CD工具、系统保障等相关

二、背景

  1. 现有cdh/hbase/tsdb 和kafka 依赖的zk集群共存,相互影响较大

  1. hbase/tsdb资源占用较多,共涉及8台物理机,3 台SSD物理主机,5台大数据物理机

  1. hbase 数据不均衡,数据在40T左右,hdfs01 02 03 和04 05 数据不均匀

  1. hbase/tsdb 数据多数未压缩,未开启同步功能

  1. hbase 健康检查存在异常,存在RIT 问题

  1. ES-op-log 有向hdfs 备份数据需要,目前保存时间大约1个月

  1. clouder-manager 无法登陆

  1. 和线上业务相关,hbase /tsdb 故障疑似会影响线上业务

三、目标

  • 节约资源, 对hbase 表进行压缩,实现hbase稳定高效服务

  • 业务拆分,降低风险 ,避免影响线上kafka 集群

  • 业务拆分,降低风险 ,避免影响线上kafka 集群

四、价值评估

  • 线上业务最主要的Kafka集群更加稳定,避免因资源竞争引起的服务稳定性问题。

  • 迁移完成后增加LBS轨迹服务的稳定性。

五、检测标准

数据迁移完成后,对同步的表进行逐个count比对以及随机同一rowKey下的数据值比对

六、详细设计(执行方案)

1.搭建新的hbase集群,并对regionServer内存等进行重新分配

2.cdh配置打开新老集群的 hbase.replication, 且同步cdh上老集群的非默认配置至新集群 (需重启)

3.配置集群间所有机器的hosts

4.进入老集群的hbase shell, 将需要同步的表中所有的column family的 REPLICATION_SCOP设为1

alter '$table_name',{NAME=>'columnFamilyName1',REPLICATION_SCOP=>'1'},{NAME=>'columnFamilyName2',REPLICATION_SCOP=>'1'}

5.在老集群添加一条disabled 的复制链路,提前把主集群正在写入的Hlog堵在复制队列中

add_peer '$peer_id', CLUSTER_KEY => "x.x.x.x:2181:/hbase"

disable_peer '$peer_id'

6.在老集群对$table_name做一个SnapShot, 并用hbase内置的 ExportSnapshot工具把快照拷贝至新集群上

snapshot '$table_name', '$snapshotName'

list_snapshots

vim /etc/passwd

hbase用户末尾修改为/bin/bash (此举是为了hbase用户的登录)

su hbase 切换至hbase用户

hbase org.apache.hadoop.hbase.snapshot.ExportSnapshot -snapshot $snapshotName -copy-to hdfs://x.x.x.x:8022/hbase/ -mappers 8 -bandwidth 200

7.待拷贝完成后,从快照中恢复一个表至新集群

a.老集群集群 desc '$table_name'

b.去除建表语句中的", TTL => 'FOREVER' ",并且设置COMPRESSION => 'Snappy', 新集群 create '$table_name','ddl'

c.新集群 disable '$table_name'

d.新集群 restore_snapshot '$snapshotName'

e.新集群 enable '$table_name'

8.打开步骤5中的 add_peer

enable_peer '$peer_id'

9.待同步延迟为0时整个同步过程完成

10.数据校验

11.将老集群的读写切换至新集群

12.老集群机器资源释放回收

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

远方有海,小样不乖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值