随着IT基础架构在新时代中的发展,采用云计算替代传统基础架构的趋势已日渐明显。其中以OpenStack为首的开源云正在逐步靠近各类IT业务系统的核心,承担起更加重要的角色。
随着OpenStack内部架构的逐步完善,对于核心业务的容灾需求也应当被加入到整个架构当中。在以OpenStack为基础的容灾架构中不仅涵盖业务的数据和应用,还包括云主机配置,认证授权,网络等等容灾云的元素。OpenStack容灾架构的部署,对于提高IT业务的可靠性,可用性和连续性至关重要。
本文主要介绍OpenStack在DR灾难恢复场景下对应的技术解决方案,以及OpenStack灾难恢复服务DRaaS的规划、实施和建设。
一、DRaaS的思想和原则
(一)几个概念
灾难(Disaster)是由于人为或自然的原因,造成一个数据中心内的信息系统运行严重故障或瘫痪,使信息系统支持的业务功能停顿或服务水平不可接受、达到特定的时间的突发性事件,通常导致信息系统需要切换到备用场地运行。
灾难恢复(Diaster Recovery)是指当灾难破坏生产中心时在不同地点的数据中心内恢复数据、应用或者业务的能力。
容灾是指除了生产站点以外,用户另外建立的冗余站点,当灾难发生,生产站点受到破坏时,冗余站点可以接管用户正常的业务,达到业务不间断的目的。为了达到更高的可用性,许多用户甚至建立多个冗余站点。
衡量容灾系统有两个主要指标:RPO(Recovery Point Objective)和 RTO(Recovery Time Object),其中 RPO代表 了当灾难发生时允许丢失的数据量,而 RTO 则代表了系统恢复的时间。RPO 与 RTO 越小,系统的可用性就越高,当然用户需要的投资也越大。
(二)容灾级别
级别 | 定义 | RTO |
数据级 | 指通过建立同城/异地容灾中心和数据的远程备份/复制,在灾难发生之后要确保原有的数据不会丢失或者遭到破坏。容灾切换时需要重新部署云主机,利用备份/复制数据恢复业务运行。 | RTO 最长(若干小时) |
应用级 | 在数据级容灾的基础之上,在备份站点同样构建一套相同的OpenStack云,通过数据复制技术,保证关键应用在允许的时间范围内恢复运行,尽可能减少灾难带来的损失。 | RTO 中等(若干分钟) |
业务级 | 全业务的灾备,将灾备的范围扩大到整个Animbus OpenStack云。通过对控制节点元数据的复制,恢复一个完整的云环境,以及云上的所有组件和业务系统。 | RTO 最小(若干分钟或者秒) |
(三)设计目标
设计的目标是通过部署DRaaS服务,能够满足并支撑:
- 实现云主机与云硬盘数据跨站点备份/复制,确保灾难发生后,防止数据丢失或遭到破坏。
- 实现OpenStack云容灾能力,云主机和数据具有异地恢复能力,提高系统的可靠性和连续性。
- 优化DRaaS部署方式,提供模块化,可选择,可扩展的部署方式。提供一体化管理界面和可视化管理能力。
二、架构与设计
(一)DRaaS容灾架构
DRaaS容灾架构通过将Animbus OpenStack划分成三个层次,虚拟化层,控制层,管理层。虚拟化层集合了Animbus OpenStack的虚拟化资源,包括计算,存储和网络资源,属于容灾架构的核心层;控制层融合了Animbus OpenStack的管理组件,包括计算,认证,网络,存储,镜像等,属于容灾架构的中间层;管理层提供了对于整个DRaaS容灾环境的集中管理与监控,属于容灾架构的管理层。
在主备容灾两个Animbus OpenStack 环境之间,采用分层的容灾技术结构,包括云存储复制技术,云系统复制技术,云管理同步技术。通过整体容灾架构的部署,使得主备Animbus OpenStack环境具备容灾切换的能力。
DRaaS架构示意图
(二)DRaaS容灾分级
DRaaS容灾架构可以根据业务场景和需求,实现三个不同等级的容灾级别。包括:
数据级容灾DRaaS of Data
通过采用云存储复制技术,实现对Animbus OpenStack的数据级容灾。在灾难发生时,需重新部署云主机,利用Animbus OpenStack存储上的容灾数据实现数据恢复。这种方案价格最为低廉,RTO时间较长(若干小时)
应用级容灾DRaaS of Application
通过采用云系统复制技术,实现对Animbus OpenStack的应用级容灾。在灾难发生时,可以直接恢复云主机以及Animbus OpenStack后台存储的数据,局部或者全部恢复业务应用系统环境。这种方案价格相对经济,RTO时间较短(若干分钟)
业务级容灾DRaaS of Business
通过采用云管理同步技术,实现对Animbus OpenStack云环境的业务级容灾。在灾难发生时,通过容灾转移一键切换,可以快速的恢复整个Animbus OpenStack云平台环境。这种方案价格相对昂贵,RTO时间最短(若干分钟或秒)
三、容灾DRaaS的应用
(一)灾难定义
在信息系统服务时间段内,生产环境出现严重故障,系统中断,无法在短时间内本地恢复,可以通过启用同城灾备(异地灾备)环境实现业务的接管,可以根据灾难决策,实施灾难切换操作。
由于每次灾难产生的原因,影响的范围和时间长度,以及应对措施的差异。需要在制定容灾方案中,事先假设对于灾难场景的预设,然后可以根据不同的灾难场景,制定容灾方案以及灾难恢复计划。
(二)灾难场景
在DRaaS的容灾架构中,已经预设了多样的灾难场景,以及与之对应的容灾架构设计和容灾方案。通过这些容灾体系的建设,可以使整个Animbus OpenStack应对多样的灾难场景,实现快速的,安全的容灾切换。
- 第一类-自然灾害,例如:火灾,水灾,地震……
- 第二类-核心基础架构故障,例如:数据中心停电、核心存储宕机、广域网络中断、内部网络瘫痪、空调系统宕机……
- 第三类-单个系统故障,例如:操作系统或者数据库系统崩溃、服务器硬件故障造成的宕机……
(三)DRaaS在实际灾难场景中的应用例子
某公司数据中心停电
案情:
由于电力故障,使其数据中心机房大面积停电。决定将IT业务系统整体容灾切换到位于另一处的备用数据中心。
在主备数据中心之间部署了基于Animbus OpenStack的DRaaS for Bussiness容灾环境,通过启用容灾环境的Animbus OpenStack云,迅速恢复原有的业务系统。保证业务应用的持续运行。
容灾恢复过程
灾难发生,业务应用出现无响应状态。
收集系统信息辅助决策,触发容灾切换方案。
关闭主中心Animbus OpenStack应用服务,断开数据复制线路。
恢复Animbus OpenStack备中心,并恢复业务访问。
DRaaS在实际灾难场景中的应用示意图
本文作者:九州云
来源:51CTO