UBackup游族异地备份系统

联合创作 · 2023-09-27 18:25

此系统解决游族2w+个数据库实例(包括mysql,redis,ssdb)的异地灾备

每天大概40w+个备份文件(99%的数据库实例进行每小时备份策略)

每天40TB+数据量进行异地传输

支持任意备份

  • 此系统只负责备份异地传输,不负责如何备份 具体备份脚本用户自行编写,只要按照要求把备份信息写入对应日志文件即可

备份脚本规范

1.每次都是全备的方式 (例如redis通过RDB每次都是全备)

2.全备+增量 的方式(例如Mysql通过Xtrabackup)

脚本日志生成规范:

    备份成功:back_log 第一行为ok,第二行为文件名

    备份失败:back_log 第一行为wrong,第二行为错误信息

如果是第2种方式,则在生成back_log的时候,同时生成一份相同的日志信息在last_all_log 日志中
  • 备份队列优先级控制,重要的备份优先拉取到异地

支持以下报警类型

  • 正常备份脚本出错(脚本退出码非0)

  • 超过规定时间未备份

  • 非法备份

针对报警做了一个chrome插件提醒的功能

支持后端集群线性扩展

  • 集群支持拉取数据调整,权重调整,集群容量可以通过简单的增加节点进行增加

  • 节点根据配置预留空间,超过预留空间自动暂停,暂停后只要集群中还尚有正常工作的节点,整个集群就能继续工作

支持多纬度数据分析

  • 元数据存储在ES,根据需要进行数据分析

一键恢复

  • 配合恢复脚本可以实现查询备份位置,下载,恢复一气呵成

架构介绍

架构图

架构图

统计数据页面

static1static2

报警页面

alert

集群管理页面

alert

浏览 16
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报