开源一套数据异地备份系统

简介

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

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

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

支持任意备份

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

备份脚本规范

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

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

脚本日志生成规范:

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

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

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

支持如下报警类型

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

  • 超过规定时间未备份数据库

  • 非法备份后端

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

支持后端集群线性扩展

  • 集群支持拉取数据调整,权重调整,集群容量能够经过简单的增长节点进行增长spa

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

支持多纬度数据分析

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

一键恢复

  • 配合恢复脚本能够实现查询备份位置,下载,恢复一鼓作气


github地址:

https://github.com/lustlost/ubackup

gitoschina地址:

http://git.oschina.net/lustlost/ubackup

相关文章
相关标签/搜索