随着用户在本地数据保护和异地数据保护机制的完善和应用,越来越多的用户开始更关心已保护数据的可用性,即如何确保已备份的数据是可用的,以及确保更早之前的数据也是可用的,甚至如何自动的去确保数据的可用。这对备份厂商提出新的需求和挑战,让我们一起来看一下 AnyBackup 是如何去解决这些问题的。
一、已保护数据面临的新痛点及场景
已保护数据的新痛点:
1.定期演练困难且无法发现隐患
- 当前SLA是否合理,磁盘损坏更换后数据是否恢复可用,无法确认
- 准备工作繁多,没有足够的人力支撑定期的演练
- 大量生产系统没有对应的资源可以用于定期演练
2.监管和合规性不满足行业审计要求
- 灾难恢复演练是头部客户所处行业法规等保的必须要求,演练覆盖率,SLO达成率是合规核心关注点
- 灾难恢复是否满足监管要求,缺乏中立验证和客观依据
- 人工对恢复过程和结果进行分析和记录,压力大
3. 平台/应用系统性的灾难恢复演练难以落地执行
- 平台/应用系统厂商繁杂、构建结构非常复杂,通常由各种数据库、中间件、配置文件、应用软件等组成,很难有厂商能完全完整支持数据中心的各类平台/应用级的数据保护,需要多备份任务进行编排演练
- 平台/应用系统级的灾难恢复演练,通常在对数据依次编排演练完,还需要对平台/应用系统配置、网络和存储切换,才能完成整个平台/应用系统级的灾难恢复演练
4.灾备运维团队的运维成果和灾备建设的ROI不易体现
- 制定的灾难恢复预案是否行之有效?组织过多少场灾难恢复演练?对多少灾备数据进行了灾难恢复演练?度量不了
- 主导投资建设的灾备系统是否物有所值?能否对业务系统连续性进行保障?
灾难恢复演练方案需要支持的场景:
- 支持各种保护类型的数据进行自动演练,比如定时数据保护、副本数据管理、实时备份等
- 支持保护在各种介质的数据进行自动演练,比如本地磁盘、OBS对象存储、磁带、蓝光等
- 支持灾备架构下异地的数据进行自动演练,比如远程复制
- 支持对各类数据和生产系统自动进行数据/应用可用性验证
- 演练前,必须支持流程审批满足安全等保要求
- 演练中,减少实践复杂度需支持全向导式、画布拖拽式的操作并可以支持策略实现演练自动化,支持演练验证确保安全可靠
- 演练后,输出演练验证报告,对灾备的可用性、SLA具备可视能力
- 支持通过邮件将灾备设备中的灾难恢复演练概览,发送给用户,做到完全的无值守掌控演练情况
- 演练过程中的操作都可通过系统日志和操作日志审计追溯,失败有告警能通过SNMP上报到监控系统和邮件告警及时通知
- 具备演练报表并支持导出归档,用于查看阶段性演练情况和用于满足监管要求
二、方案设计
AnyBackup 提出的解决方案是:DRM(IT Disaster Recovery Management,灾难恢复管理)
AnyBackup 通过自身的备份能力保护不同SLA要求的数据,这些已保护的数据通过灾难恢复编排引擎对数据进行自动的策略性的数据验证、清理和报告,实现数据自动化灾难恢复演练。
数据的抓取:
在整个方案中,首先在数据源的获取上,AnyBackup 和 Veeam/Veritas/Commvault都是抓取自身保护的数据,备份方案和灾难恢复管理方案深度融合,减少了不同产品间的适配、磨合等问题,而IBM的方案是两个完全不同产品间的结合,稳定性相对较差。
恢复资源的灵活性:
DRM方案中需要用户侧具备可用于验证的资源,比如数据恢复目的地所在的数据库/云平台/操作系统等。AnyBackup支持的方式是外置资源和内置资源均支持,当用户环境没有条件提供用于恢复的资源时,可以基于生产环境在AnyBackup软件中生成恢复资源。其他厂商中Veeam/Veritas/Commvault使用外置资源,Veeam提供内置资源(虚拟实验室)。
恢复策略的多样性:
在恢复策略方面,各厂商相差不大,可以按照不同的时间规划恢复策略,也可以依据产生时间点的时间进行恢复验证。
应用场景的多样性:
在适配不同的应用场景时,可以对不同的应用系统进行适配,支持各种复杂的应用场景:
- 单应用,适用于常见业务场景
- 串行应用,适用于多业务系统有依懒的场景
- 并行应用,适用于同类型的多个应用的并行场景
可恢复数据的兼容性:
AnyBackup由于备份平台和灾难恢复管理平台的深度融合,灾难恢复管理支持备份的各种数据的验证,Veritas/Commvault也是如此,Veeam由于自身产品定位主要在虚拟化领域,对物理机环境支持相对较弱;
在国产化数据库和国产化虚拟化平台等环境的验证上,由于Veeam/Veritas/Commvault/IBM对国产化环境支持很少,AnyBackup相对更适用于国内使用场景。
验证和清理脚本的易用性:
AnyBackup在验证脚本和清理脚本方面,支持多种语言的验证脚本(C、C++、Python、Golang、Shell),脚本修改和二次开发都很简单,有shell经验的用户就可以基于业务系统进行自助式验证/清理脚本的定制。
脚本主要在经历3个流程,已Oracle数据库验证正常启库和统计大小为例:
0.自动执行恢复流程
1.获取参数(读取不同业务平台的环境信息)

2.业务判断(对恢复完成的数据进行业务/数据可用性判断)

3.结果返回

其他厂商则主要提供预定义的功能,用户环境的不同细节需求的实现相对比较闭源,AnyBackup在简单易修改的情况下,也支持默认内置脚本,提供基本的验证/清理等能力。
合适的报告体现:
AnyBackup的恢复验证过程和结果支持在Web界面的查看,也支持附件的导出,还支持邮件的自动传递;生成的报告可以自定义需要的模板。
恢复方案的扩展能力:
除了实现数据的自动恢复验证功能,保障数据可用外,AnyBackup灾难恢复管理还支持故障检测处理场景、勒索病毒防御场景、非结构化数据验证场景、病毒查杀场景。
业务系统故障检测自动切换:
勒索病毒防御:
非架构话数据验证:
病毒查杀: