50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

OpenStack 云平台中如何进行灾难恢复

  • 2016-05-18
  • 本文字数:1773 字

    阅读完需:约 6 分钟

IT 基础设施的故障会出现在很多层面上,例如某台服务器或磁盘,甚至整个数据中心在面对灾难事故(例如地震、洪水、断电等)后均可能出现故障。如果由于一些大范围灾难导致整个数据中心故障,我们会使用“灾难恢复”所定义的措施,确保应用可以在备份数据中心内继续运行,同时将可能的中断降至最低。

为保护数据中心内存储的数据,必须在数据中心遇到故障前制定妥善的灾难恢复规划。

环境

假设你有一个主数据中心和一个备份数据中心。每个数据中心都包含使用 OpenStack 云管理的物理和虚拟资源,并通过虚拟机、网络连接(包括私有子网)、区块设备 (Block device) 等资源以集合的方式定义了工作负载,所有这一切都使用标准的 OpenStack 组件(Nova、Neutron、Cinder 等)进行管理。

通常来说,一个工作负载及其所有依存组件都可以使用 Heat Orchestration Template (HOT) 来定义。这样做目的在于对主数据中心内运行的工作负载创建副本,以便在主数据中心遭遇故障后在备份数据中心运行这个工作负载。

解决方案概况

这种方案的主要意图在于,在备份数据中心内为工作负载的 Heat 模板以及所需的全部资源创建副本。Heat 模板包含相关作业的虚拟机,将虚拟机连接在一起的网络拓扑,以及虚拟机所使用的区块设备。在主数据中心遭遇故障之前,恢复所需的全部必要信息在备份数据中心必须处于可用状态。

例如,为了能在备份数据中心运行虚拟机,我们需要准备该虚拟机运行所需的映像。因此除了工作负载的 Heat 模板,还需要存储该作业中虚拟机的映像,并使其在备份数据中心内可用。如果作业同时还包含数据卷,那么我们或者需要偶尔对该数据卷创建快照并将其发送至备份数据中心,或者需要对该卷进行某种形式的远程复制,这样才能在恢复后通过备份数据中心访问该卷中的数据。

这些工作可以通过 Dragon 实现

我们实施了一种名为 Dragon 的框架,管理员可以借助该框架定义能够为工作负载提供保护的工作负载策略。对于每个工作负载策略,管理员可以对各种资源(例如虚拟机、卷)进行分组,并提供统一的保护。每个工作负载策略可独立触发,以执行该工作负载策略所涉及资源的保护操作。

每次触发一条策略后,会生成一个 Heat 模板以记录被保护资源之间的关系,并会针对这些资源执行相关操作(例如创建快照)。所有这些相关内容(Heat 模板、快照等)会存储在一个可被备份数据中心访问的 Swift 对象存储容器中。容器会添加工作负载策略名称和时间戳组成的标签。

一旦主数据中心故障,即可在备份数据中心启动恢复操作。随后将从该工作负载策略的 Swift 容器中提取 Heat 模板和相关数据,并对 Heat 模板进行一些调整,使其可以在备份数据中心内运行,接下来便可在备份数据中心内启动该工作负载。

针对具体的受保护资源,可能需要执行不同的操作。例如,对于虚拟机来说,可能只需要保存克隆后虚拟机的原始映像就够了。在某些情况下,随着时间的流逝,虚拟机映像可能会逐渐进行大量的定制,因此可能就要在执行过定制操作后重新为映像创建快照。对于数据卷,可能需要对卷执行一次创建快照的操作。但对于持续复制的卷,就无需创建快照。

Dragon 可供您为多种类型的资源定义多个操作。管理员可以在受保护的工作负载策略中选择针对每种资源所需执行的操作。例如对于虚拟机,我们提供了一个对克隆后的虚拟机保存原始映像的操作,并提供了一个在策略被触发时为虚拟机的映像创建独立快照的操作。Dragon 框架是可扩展的,因此您可以针对不同资源定义并实施各种新操作。

可以保护哪些类型的工作负载?

在上述解决方案中,我们并不试图保存工作负载的内存状态,而是会假设工作负载可以在无需恢复内存状态的情况下在备份数据中心内重启动并继续运行。对于绝大部分云服务来说,这种假设都是合理的。如果涉及数据卷,并且使用了快照保护操作,随后恢复后的工作负载便可通过数据快照继续运行,但在最新快照创建完成后,针对主数据中心内数据所进行的任何更新均会丢失。如果数据卷可以持续复制到备份站点,即可进一步降低丢失的数据总量。

致谢

该方案的部分工作成果得到了 ORBIT 项目EU Grant ICT FP7-609828 的资助。

阅读英文原文: How disaster recovery works in an OpenStack cloud


感谢陈兴璐对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2016-05-18 17:592704
用户头像

发布了 283 篇内容, 共 121.1 次阅读, 收获喜欢 63 次。

关注

评论

发布
暂无评论
发现更多内容

青椒云桌面玩转AIGC应用部署

青椒云云电脑

云桌面 AIGC

基于istio实现多集群流量治理

华为云开发者联盟

istio 华为云 华为云开发者联盟 多集群 企业号2024年4月PK榜

从零开始搭建云呼叫中心之FreeSwitch实战

京东科技开发者

新质生产力与数字化转型:驱动经济转型升级的双引擎

天津汇柏科技有限公司

数字化转型 新质生产力

Redis Pipelining 底层原理分析及实践

vivo互联网技术

redis pipelining

云桌面厂商哪一个更好?

青椒云云电脑

云桌面 云桌面厂家

聚焦工业边缘需求,英特尔与阿普奇携手发布创新解决方案

E科讯

如何在云电脑串流中实现多屏操作

青椒云云电脑

云电脑 云电脑平台

直观易用的大模型开发框架LangChain,你会了没?

京东科技开发者

华为云发布CodeArts API,为API护航

华为云开发者联盟

API 华为云 华为云开发者联盟 华为云CodeArts 企业号2024年4月PK榜

大模型工程化落地,足够细分的优质数据是关键

澳鹏Appen

AI工程化 数据标注 训练数据 大模型 LLM

企业架构设计原则之品质均衡性(三)

凌晞

企业架构 架构设计

Meta Earth:模块化公链的技术革新与市场潜力解析

股市老人

Meta Earth:模块化公链的技术革新与市场潜力解析

股市老人

电脑配置差卡顿?试试云电脑

青椒云云电脑

云桌面 云电脑平台

活动预告|NineData 创始人&CEO叶正盛将参加QCon全球软件开发大会,共话AI大模型技术在数据库DevOps的实践

NineData

数据库 DevOps Qcon AI大模型 NineData

企业架构设计原则之品质均衡性(二)

凌晞

企业架构 架构设计 架构设计原则

几个编程、创新和AI领域的网站

算AI

人工智能 编程 创新

一键生成视频!用 PAI-EAS 部署 AI 视频生成模型 SVD 工作流

阿里云大数据AI技术

人工智能

SQL事前巡检插件

京东科技开发者

从商品图到海报生成 京东广告AIGC创意技术应用

京东零售技术

广告 AIGC 企业号 4 月 PK 榜

户外LED电子广告屏市场

Dylan

技术 广告 应用 LED LED显示屏

【论文速读】| CHEMFUZZ: 大语言模型辅助模糊测试用于量子化学软件缺陷检测

云起无垠

Automation Anywhere 在 Google Cloud 上为数百家企业带来 Gemini 模型驱动的流程自动化

财见

国内低代码哪家强?深入探讨低代码选型关键指标和评估模型

牛刀专业低代码

低代码开发平台 国内低代码 低代码选择 低代码平台比较 低代码排名

OpenStack云平台中如何进行灾难恢复_语言 & 开发_OSHRIT FEDER_InfoQ精选文章