ZStack如何实现混合云灾备?看这篇就懂了

 本文以轻松诙谐的风格为你深入浅出解读ZStack混合云灾备的实现机制。

1. “吃狗粮”的灾备危机

在我司的工程实践中,最为常见的一个做法就是“吃狗粮”。也就是说,所有工程师的开发环境、测试环境都是由ZStack搭建的。最开始的时候,工程师们还蜗居在两间不大的办公室,其乐也融融。某天,随着一声声哀嚎,大家发现有位工程师不慎把主存储给误删掉了。

得益于ZStack的设计,整个环境半个小时成功恢复。原因有两点:

  1. 系统自动部署了备份服务,数据库每小时有定期备份;
  2. ZStack本身无状态,只要数据库在,环境就能恢复。

有惊无险,上了一次“云头条”。

2. 灾备很重要,但为何是混合云灾备?

自己吃狗粮碰到的问题,用户必然也会遇到。进一步引申下来,在这个“删库跑路”、“误操作导致数据丢失”等消息常年霸占媒体头条的时代,我们需要严肃地思考一个问题:如果被删除的不仅仅是数据库记录,而是真实存储系统的数据,或者存储出了故障,怎么办?

我们需要灾备,但灾备不仅仅是数据备份。数据备份是最自然、最基础的需求。完成数据恢复后,用户真正需要恢复的是业务。在私有云的场景下,业务恢复的资源粒度可以是一台虚拟机,甚至是一个集群。如果说,“ You cannot sell a platform without a killing application running on it.” 那么,ZStack的灾备功能将会是混合云平台的一个杀手级应用。

通过在ZStack 中引入混合云灾备,用户可以将虚拟机镜像以及相关元数据备份到公有云。即使本地数据丢失,也可以抓取指定的云端备份进行重建。甚至,用户可以直接在公有云以备份数据创建一台虚拟机。灾备云。

在进一步回答为何是通过混合云实现灾备之前,我们先回顾一下私有云。

私有云

单纯的私有云环境是一个闭环,整个系统的资源在私有云内部调配。系统管理员通过IaaS软件为公司各个部门提供应用环境,IaaS软件解决的是基础设施的监控可视化,资源的灵活分配,和可维护性。

简单私有云场景

图1是一张最简化的私有云场景。私有云将IT人员的生产力从繁复琐碎的配置中解放出来。从此IT人员更多关心的是交付,而不是如何交付。IaaS软件理解系统中的所有资源关系,其中一个重要的观念是:计算机(虚拟机)不再是分离的硬件设施,而是一个独立、完整的资源交付单元。

在缺乏 IaaS 软件的环境下,灾备的主要资源实体是存储,它以对象存储、块存储或者文件系统的方式,做异地备份。但存储只是计算的诸多层面之一,如何快速、有效地将恢复的数据投入运用,还是离不开IaaS这样的上层管理软件。

混合云

混合云灾备应运而生。首先,相比于公有云 ,通常的私有云规模很难有足够大的资源池。资源过多会导致浪费,这是企业不愿意看到的情况。资源过少则无法应对突发需求,这也是企业的痛点。其次,公有云都会提供完善的IaaS应用编程接口,私有云可以通过编程接口延伸IaaS框架内的各种资源需求。由此可见,在打通了公有云的数据和网络层面后,公有云不但可以应对突发的计算需求,还是一个非常合适的灾备载体,主要原因如下:

  1. 完备的应用编程接口
  2. 良好的弹性计算能力;
  3. 近乎无限的存储空间。

混合云场景

图2展示了对接公有云后的混合云场景。对比图1和图2,我们也许会发现,这两者的区别和Subversion与Git之间的区别有些许神似之处 —— 即:系统资源的存取是否集中。

3. 混合云灾备如何实现?

ZStack自有的镜像仓库设计,是实现混合云灾备的核心。

镜像仓库设计思想

图3展示了ZStack镜像仓库的高层次构架。与 Opentack Glance ,以及 Docker Registry类似,ZStack 镜像仓库(以下简称镜像仓库)并不负责实际的存储,只是完成镜像的管理工作,以及元数据的维护。

ZStack镜像仓库架构

但是镜像仓库采用的数据组织方式与前述两者完全不同。简单来说,镜像仓库的数据存储方式与git类似,是一个内容可寻址存储。所有存储入口都通过一层中间件封装,实际的存储工作则由后台存储插件完成。可以对接本地存储,或者Aliyun OSS 等云存储。

这种设计有如下好处:

  1. 数据存储和管理逻辑分离;
  2. 因为内容可寻址,客户端和服务器可以分别对所有数据(包括元数据)做哈希验证,互不信任;
  3. 数据不可更改(包括元数据),任何更改都会改变哈希值。

说到镜像的组织,ZStack镜像仓库通过元数据维护了镜像之间的关系,对于镜像的格式并不关心。仓库中的镜像来源可以是qcow2 文件,也可以是 RBD 镜像,重建整个镜像的工作由客户端负责。比如,对于 qcow2 文件可以用 qemu-img 工具,而对于 RBD 镜像则可以使用rbd工具进行管理。

如何用镜像仓库实现混合云灾备

现在我们来看看,如何用镜像仓库实现混合云灾备。

具体来说,我们在镜像仓库上实现了 push 和 pull 操作,使得不同镜像仓库之间可以方便地同步指定镜像。和git类似:

  • push 是将本地的镜像推送到远程;
  • pull 是将远程的镜像抓取到本地。

ZStack镜像仓库的push和pull

对于任意备份在公有云上的镜像仓库,其中包含的镜像和本地镜像仓库并无二致。同样由于内容可寻址,在镜像的传输过程中可以避免大量不必要的数据传输。这一点是非常关键的:

  1. 数据的完整性可以轻松验证;
  2. 极大地提高了镜像传输速度,节省了时间;
  3. 节省了出数据中心的流量,节约客户成本。

在具体实现中,还需要考虑如何处理读写冲突、写写合并以及横向扩展等问题。限于篇幅,细节不再赘述。

以下是ZStack基于镜像仓库的几个典型灾备策略。

备份策略

用户可以对需要备份的虚拟机执行手动备份,或者指定备份策略执行自动备份。比如,备份间隔时间等等。手动备份能力是必要的,这使得用户可以及时对虚拟机做备份,避免时间窗口的风险。

恢复虚拟机

当用户对根云盘进行备份之后,恢复虚拟机只需要将远程的备份抓取到本地镜像仓库,然后创建虚拟机即可。就像开启了时光隧道,用户使虚拟机回到任意的备份点。

恢复数据盘

同样的逻辑也适用于数据盘。镜像仓库并不区分根云盘或者数据盘。恢复数据盘只需要将远程的备份抓取到本地,然后加载到虚拟机。

镜像仓库就是这只“魔戒”

综前所述,镜像仓库对本地、异地,rbd 以及 qcow2,以及不同的存储后端,都呈现了统一的服务接口。这是策略与机制分离的典型应用,镜像仓库只提供镜像的存储和维护机制,而对如何使用镜像毫不关心。另外,由于镜像仓库的数据组织特性,仓库间的数据可以按需指定资源同步。正是这种灵活的设计,为ZStack的灾备能力提供了坚实的基础条件。

如果没有公有云

退一步,用户没有对接公有云环境的状况下,只要数据通道的速度有充分保证,用户可以异地(比如IDC机房)部署镜像仓库,同样可以很容易地实现异地备份。唯一的缺点在于,如果本地私有云突然发生灾难,没有办法利用公有云的能力,快速恢复关键应用。

小结

正如同鸡蛋不能放在同一只篮子里,重要的数据也不能全都放在本地。随着硬件能力的不断进步,用户拥有单位资源的成本在不断降低,但是数据的潜在价值却在不断攀升。数据越庞大,业务规模越庞大,导致的代价也随之越来越高昂。拥有灾备能力,拥有系统化恢复业务的能力,才能全无后顾之忧。在云的世界里,“后悔药”其实是存在的。

李群,ZStack首席工程师。统筹负责ZStack研发工作,在云计算以及安全领域有丰富的研发经验。2007年加入EMC云计算基础设施部,负责通用Appliance平台的研发工作;2010年加入Intel开发者产品部,负责SGX指令集的SDK研发;2015年加入微软中国云计算创新中心,负责Azure中国区CDN服务的研发。

作者简介

李群,ZStack首席工程师。统筹负责ZStack研发工作,在云计算以及安全领域有丰富的研发经验。2007年加入EMC云计算基础设施部,负责通用Appliance平台的研发工作;2010年加入Intel开发者产品部,负责SGX指令集的SDK研发;2015年加入微软中国云计算创新中心,负责Azure中国区CDN服务的研发。

本文作者:李群

来源:51CTO

时间: 2024-10-31 12:01:15

ZStack如何实现混合云灾备?看这篇就懂了的相关文章

Veritas联手阿里云,提供混合云灾备解决方案

本文作者: Veritas,转载自Veritas中文社区微信公众号. 最近,大家一定都在关注阿里云栖大会吧!对于云计算从业者们来说,这场全球云计算Top级峰会,可是一年中的大事件,不知道你们有没有亲临现场呢?DT时代最强大脑汇聚一起,共同探索云计算.大数据.人工智能等的发展力量,以及各种云计算干货信息,真是让人脑洞大开,无限拓展了想象力边界! 在本次峰会上,Veritas可是带着重磅消息来哒!什么?你竟然还不知道?快让我来告诉你 Veritas与阿里云合作啦!联合推出企业混合云灾备解决方案! 想

Zerto:技术能力+服务能力,打造云灾备里的大乾坤

随着云端战略布局几乎成为未来IT的共同需求,无论是私有云.公有云.混合云还是托管云,获得强大的IT弹性,以应对各种变化和灾难,保证企业业务的持续性是企业谋求云战略的主要原因. 云灾备市场欣欣向荣 在企业面向云端转型的过程中,同时面临着很多挑战:例如数据丢失给客户业务造成的严重影响,如何保证新项目的顺利进行等等.因此,大部分企业都会面临着如何实现高效.安全的应用迁移问题,在此背景下,云灾备服务市场欣欣向荣. 云灾备服务是采用当前最先进.安全.可靠的数据备份和数据复制技术,建设可管理.可运营的灾备服

和力记易独一份的异地云灾备方案

   计算机问世以来,随着计算能力的不断提高,种类日渐繁多,功能日趋强大,变化日新月异.云计算的出现不仅仅是每秒10万亿次的运算能力,更会对社会甚至整个信息时代产生巨大而深远的影响.云计算的快速发展使得全球范围内涌现出越来越多的云计算技术和服务提供商和云平台品牌,比如:亚马逊的AWS.阿里云.百度云.腾讯云等. 其中,阿里云是国内起步较早.应用较为广泛的云平台,阿里主办的每年一度的云栖大会更是业内人士的专业盛会.2016年,和力记易(北京和力记易科技有限公司)新研发的国产云平台备份与恢复系统"数

云时代,CIO如何玩转云灾备,实现“数据零丢失”?

云计算.大数据的兴起与普及,带来企业数据存储量的飙升,安全隐患更加凸显.因此,无论我们所在的企业是传统金融行业或是其他的领域.当前的科技发展对现阶段企业内部的灾备建设都提出了新的挑战. 目前,企业灾备建设所采取的惯常做法从保障程度上一般分为三个级别:数据级.应用级和业务级.其中前两种的着眼点都在IT系统范畴之内,而业务级则需要考虑到IT系统之外的业务因素,包括企业多种办公场所及办公人员等. 不同层面的灾备建设其关注点迥异.比如,数据级灾备的关注点在于数据,即灾难发生后可以确保用户原有数据不会丢失

GDS携云灾备方案参加第十届灾备论坛 助力大数据价值挖掘

ZDNet至顶网服务器频道 05月28日 新闻消息:5月26日-27日,第十届中国灾难恢复行业高层论坛在贵州举行,作为国内灾备服务的领军企业和开创者,以及国家灾备标准的制定者,万国数据(GDS)副总裁刘东红于论坛上做了题为<大数据时代下的灾备建设和管理体系>,介绍了大数据时代下的灾备需求.国家灾备体系现状.企业灾备体系建设和管理要点,并展示了GDS云灾备解决方案.在大数据时代背景下,该解决方案将帮助用户高效.低成本地建立安全.可靠的灾难恢复体系,保证数据的安全性.可用性.完整性. 万国数据副总

“云灾备”服务提供商深蓝云海完成Pre-A轮融资

今日,"云灾备"服务提供商深蓝云海告诉36氪,公司已经完成Pre-A轮融资,资方为东霖资本和峰谷资本,具体金额未透露.此前深蓝云海曾获得来自光环新网天使轮投资.据悉,新资金将用于产品后续研发.销售团队建立和商业模式的落地执行. 目前灾备市场中,数据灾备类产品占据市场的主导,通过对数据的复原.加密等手段来满足用户灾备需求.但是传统灾备有建设周期长.投入成本高.运维难度大等弊端,而这些弊端可以借助云平台进行优化升级.深蓝云海就提出了应用级云灾备解决方案. 深蓝云海为用户提供端对端的灾备服务

万兆云灾备虚拟化数据中心NETGEAR与众鸿科技协同构筑

   用户需求 众鸿科技作为一家国家高新技术企业,参与了"北斗"等国家战略课题的研发,因此对企业内部数据安全和保护格外的关注.企业办公工作站采用Citrix桌面虚拟化,对员工各项应用实行集中交付.桌面虚拟化可将应用及时交付给任何地点的用户,既满足了员工移动办公.按需交付的需求,又利用集中化控制和安全访问能力增强了安全性,同时还降低了企业应用管理成本. 为实现桌面虚拟化低延时.高吞吐的数据传输,众鸿科技的数据中心需要一速万兆数据中心交换机为服务器和存储设备之间提供高速万兆互联,也需要2台

电网调度云灾备系统优化分析与设计

电网调度云灾备系统优化分析与设计 李立新,谢巧云,袁荣昌,林静怀,狄方春,李大鹏 智能电网的提出对电网可靠性与容灾能力提出了新的要求,迫切需要建立电网调度自动化灾备系统,以提高电网运行的防灾能力.首先,建立了电网调度灾备系统的评价模型,然后,针对电网系统中存在的各种备用方案进行优化分析,提出了基于统一调度数据网构建集控/调度互备的备用方案.针对一体化互备的方案搭建了基于云平台的灾备系统结构,结合虚拟化.服务化等云计算技术,有效地兼容与保护了现有灾备软硬件资源,并面向灾备基础软件.基础服务.支撑应

ZStack推出“无缝混合云”战略,无缝连接公有云和专有云

8月23日,创新开源云计算技术的云服务商ZStack在京重磅发布"无缝混合云"战略及产品,通过与国内最大的云计算厂商阿里云的战略融合,新品将更好地实现"互连"."灾备"."一键迁云"等混合云应用场景,提供全新的混合云解决方案. ZStack&阿里云混合云战略及产品发布会现场 来自行业主管单位的领导和专家.行业第三方机构的分析师.行业测评中心的专家,以及像饿了么.富力·环贸港等行业标杆客户,同时还有ZStack&