前面两篇文章介绍了基于阿里云备份的跨云备份和云存储网关的跨云复制,两者主要是解决文件粒度的备份与恢复问题。如果用户需要保护一个云上的数据库应用,而不仅仅是数据库的数据文件;如果用户需要保护整个云主机,而不止一些文件和目录;且用户对于保护同样是有实时性要求的。那么,混合云容灾就是为这些用户需求量身打造的拳头产品。
基于混合云容灾的跨云容灾架构
下图描述了从云厂商T的一台Oracle服务器,通过混合云容灾恢复网关,备份到阿里云上的云灾备库中,再恢复(fail-over)到阿里云ECS的过程。混合云容灾恢复网关同时还支持将在云灾备库的最新数据恢复回(fail-back)到云厂商T的Oracle主机中。通过这张架构图,用户可以了解到,容灾的部署在源端和目的端是对称的。需要用户注意的一点是,图中云灾备库是虚线画的。不同于云备份库和OSS,云灾备库对用户是不可见的。
接下来,就让我们看下,如何一步一步的操作实现Oracle服务器的容灾备份和恢复。
混合云容灾跨云容灾架构图
基于混合云容灾的跨云容灾实施
首先,用户登陆阿里云控制台进入‘混合云容灾’即可轻松开通。
混合云容灾主页
之后,用户可以进入‘容灾中心’-‘容灾中心’去创建一个‘云端灾备恢复网关’。除去给网关取名和选取一个规格外,对于‘专有网络’和‘交换机’如何配置,涉及到容灾方案的设计与规划。最简单的做法就是将阿里云上的专有网络配置的跟受保护的源端一样就可以了。如果用户有疑问,可以随时咨询混合云存储团队专业的容灾架构师。点击‘确认’即完成容灾网关的创建。
部署容灾网关
网关的部署一般耗时30分钟左右。部署成功的容灾恢复网关如下图所示。‘状态未知’意味着该网关还没有完成配置。
部署完成
这里需要提及的一点:虽然创建和配置混合云备份网关是一步完成,但是实际上,在用户的该区域ECS主机列表里,会增加两台ECS主机:1台控制器(即MC)和1台网关(即Store)。
混合云容灾ECS主机
点击网关名称会跳转到容灾恢复网关的管理界面。输入账号的AK信息(处于安全考虑,建议用户使用子账号配置灾备网关),并提交。
灾备恢复网关主页
之后,用户会看到备份加密配置,以决定备份的数据是否是加密的。混合云容灾通过AES256加密算法保障用户写入到灾备网关的落盘数据的绝对安全。用户可以根据自身业务特点来决定是否开启加密。保持默认关闭的状态,提交。
备份加密配置
提交完成后,用户就进入了混合云容灾网关的管理主页。在主页上,用户不仅能够轻松地配置备份和恢复任务,而且还能直观地了解和监控各个任务的实时状态。此时,容灾网关的状态会变成‘正常运行’。
容灾恢复网关主页
然后,回到云厂商T的控制台,可以根据混合云容灾提供的混合云容灾控制器和网关的镜像文件来创建两台虚拟机:控制器主机是Windows 2012 R2 64位的系统,双核CPU,4G内存,128GB的SSD云盘做系统盘;网关主机是Ubuntu 14.04 64位的系统,4核CPU,8G内存,128GB的SSD云盘做系统盘,500GB的SSD云盘做数据盘。导入镜像和通过镜像创建云主机的过程请参见“基于云存储网关的跨云复制”这篇文章的相关步骤即可。生成的云主机如下图所示:
云厂商T内部署的容灾网关
部署完成之后,用户就可以在浏览器直接输入控制器主机(Windows主机)的IP,即可看到前面配置线上的容灾网关一样的界面。因为步骤类似,需要用户提供阿里云账号的AK,网关的账号和密码等信息,此处省略。
配置完成,再次进入,就能够看到云厂商T内的容灾网关(线下)的登陆界面。在阿里云上创建的线上网关和线下网关,在登陆的时候步骤不同。阿里云控制台已经集成了自动登录功能,所以用户无需通过输入用户名密码的方式登录容灾网关。输入之前配置的用户名密码即可登陆。
容灾网关登陆界面
登陆之后,用户看到的容灾网关的主页和线上版本没有任何区别。
云厂商T内的容灾网关主页
接下来一步就是打通容灾网关与用户的Oracle服务器,将数据库主机通过容灾网关备份到云灾备库中。我们先来查看一下Oracle数据库中的表的信息及内容。通过下面的一些查询可以看到Oracle数据库中有971张用户表,以及数据文件的大小。用户需要注意一点是Oracle服务器的主机名。我们发现一些云厂商的主机名有以数字开头的情况,这会导致在恢复到阿里云ECS的时候导致创建ECS实例失败的情况。阿里云的云主机名有约束条件:长度为[2, 128]个英文或中文字符。必须以大小字母或中文开头,不能以http://和https://开头。可以包含数字、半角冒号(:)、下划线(_)或者连字符(-)。
Oracle数据表总数
Oracle数据文件大小
在备份Oracle主机之前,需要执行一次precheck脚本,用以检查Oracle主机的配置是否满足备份的前提条件。用户可以根据脚本的检查结果,来对环境做相应的修改和配置,以满足混合云容灾备份的前提条件。
precheck脚本执行
precheck执行结果
让我们来备份这台Oracle主机。回到云厂商T的容灾网关管理主页。选择‘备份’。
容灾网关备份
在弹出的‘保护服务器’页面中,选择主机类型,输入服务器IP及服务器的用户名与密码。在这个例子中,我们选择‘Windows服务器’。需要注意一点的是,服务器IP应该要填Oracle主机的内网IP地址。这样备份和恢复的流量都是走高带宽的内网。
配置保护服务器
提交之后,可以去‘监控’-‘任务’里查看进度。因为任务从添加到完成,需要几分钟的时间,用户也可以点击‘操作’栏的‘任务详情’,也就是i图标来查看任务详情。
添加保护服务器任务
下图就是添加成功的详细信息。各个步骤的状态都是OK的。如果遇到任务失败,这个页面也会提示用户出错信息。可以酌情处理,也可以咨询混合云容灾的工程师以寻求帮助。
任务详情
关闭任务详情,可以去‘备份’页查看刚刚添加的被保护的Oracle服务器。可以看到该主机的信息已经都被容灾网关获取,诸如磁盘数据和Oracle数据库数据等。针对这些信息,可以做不同的备份。
Oracle主机磁盘信息
Oracle主机数据库数据
在开始备份之前,需要先去‘备份策略’中创建一个备份策略。这个备份策略最主要的作用是定义排程。另外,‘开启上云复制’需要勾选,否则备份数据,只会留在备份网关本地,而不会上传到云灾备库。‘本地拷贝’和‘云上复制’的天数定义了备份数据在本地和云上保持的天数。保存即可。
创建备份策略
保存策略之后,到‘备份’页面,点击‘计划’(软盘图标),即创建一个备份计划。在该备份计划中,需要绑定一个备份策略,就是我们刚才创建的策略。之后,就可以提交了。这里需要提及不同备份策略的组合:将全量备份和增量/差异备份组合,组成一个合理且RTO小的备份计划。我们建议用户每周做一次全量备份,再根据不同应用,每天适时地做增量或差异备份。‘再次备份时延’定义了两次备份的时间间隔。如果本次备份开始时,前一次备份还在进行,则本次备份会跳过执行(skipped)。
备份策略组合
创建计划
提交之后,就可以‘立即运行’首次备份。
立即运行
首次备份,备份类型为‘Full’,意为全量备份。提交后,全量备份任务就会执行。
提交立即运行
回到‘监控’-‘任务’中,可以查看备份任务的执行细节与详情。
备份详情
在‘仪表盘’中,也可以看到该备份任务正在执行中。
仪表盘信息
当备份开始一段时间后,数据拷贝就会开始。这个时候,去Oracle主机的网络中查看备份上传到网关的速度。如下图所示,上传到容灾网关的速度为800Mbps,即100MB/s。与Disk 1(D盘)读性能(105MB/s)匹配。
Oracle主机上传性能
等待一段时间后,从下面的备份任务详情可以看出来,148.4GB的数据花费了36分29秒,平均性能在69.42MB/s。
备份任务详情
回到仪表盘里,存储信息里可以看到148.4GB的原始备份在本地存储占用了130.36GB的空间。因为在上传过程中,混合云容灾网关对备份数据做了重删。如同混合云网关那样,重删不仅节省网关存储空间和提升备份效率,而且还提高了之后公网上传备份到阿里云的效率。
备份空间占用
此时,你一定注意到了‘云存储’还没有任何数据。实际上,当上传到容灾网关完成后,对应的‘上传’任务已经被自动创建执行了。
上传备份至云灾备库
点击该上传任务,就会跳转到上传任务列表。用户同样可以查看上传的进度与详情。
上传任务
从云主机的监控可以查看当前从备份网关到阿里云上的云灾备库的上传性能。当前,上传瞬时速度为100Mbps,即12.5MB/s。
上传性能
当上传完成之后,同样可以在任务详情中查看上传的数据与总时长。本次上传耗时3小时11分20秒,计算得出平均上传速度为13.24MB/s。
上传任务详情
此时,仪表盘上就会显示成功上传1次和云存储所占空间的相关信息。
混合云容灾综述页面
切换到‘容灾中心’-‘受保护服务器’页面,看到受保护主机的详细信息。
受保护服务器
打开阿里云上的容灾网关,可以看到云存储已经显示了与云厂商T内的那台网关相同的存储大小。至此,从云厂商T的Oracle服务器,到云厂商T内的容灾网关,再到阿里云的灾备库,最后到阿里云上的容灾网关的这条链路已经打通。如果用户想要将灾备库内被保护的服务器恢复到阿里云上的ECS主机,通过阿里云上的容灾网关即可;如果用户想要将被保护的服务器恢复回云厂商T内的原Oracle服务器,走云厂商T内部署的那个容灾网关就可以了。这里需要注意两个地方:首先,本地存储是2.69TB。记得之前我们创建了阿里云上的灾备网关,会自动创建一台MC主机和一台Store主机。Store主机会自带3块1TB的云盘,这里的2.69TB空间就是来自于这3块云盘。其次,本地存储空间并没有被使用。这是因为阿里云上的容灾网关并没有从云灾备库中实际拉去被保护的数据到本地。
阿里云上的容灾网关存储空间
接下来,我们选择将云灾备库的被保护数据恢复到阿里云上的ECS上。还是在阿里云上的容灾网关页面,进入‘恢复’页面。可以看到云灾备库内被保护的Windows服务器,也就是在云厂商T内的那台Oracle服务器。这里有一个细节:列表中的备份的字体颜色也可以区分备份的不同状态。例如,现在字体颜色是蓝色,代表上云。意味着备份仅仅在云灾备库中。如果是绿色字体,则意味着数据在本地和云灾备库中;而黑色表示备份数据只在本地。
恢复页面
点击上图‘恢复’页面里‘操作’栏的恢复按钮。在‘恢复配置’页面填一些项目,比如实例类型,磁盘类型及VPC网络信息。因为之前我们创建的Oracle服务器是4核8G内存,这里我们选择ecs.hfc5.xlarge刚好匹配。确认无误后,提交。另外,需要提醒的是,如果云厂商T那边的私有网络IP跟阿里云这端的VPC网络不同的话,需要勾选‘输入私有IP’,并定义好‘私有IP’。
恢复配置页面
恢复任务被提交后,在‘监控’-‘任务’里可以看到该恢复任务。同样,可以查看恢复任务的详情与细节。
恢复配置页面
恢复任务被提交后,在‘监控’-‘任务’里可以看到该恢复任务。同样,可以查看恢复任务的详情与细节。
恢复任务详情
通过上面的任务详情,可以看出恢复已经完成。这时候,混合云容灾网关会在所在域,也就是‘上海’区,自动创建一台ECS,并且内容和源端被保护的Oracle主机一模一样。
恢复完成的ECS主机
登陆到这台ECS中,也就是Windows系统里,查看Oracle的数据文件,与源端的文件一样,包括元数据,比如文件修改时间等信息。如果不放心,还可以检查下文件的MD5值。
恢复后的Oracle数据文件
这个时候进入Oracle里查一下表的数目是否跟源端一样,也是156张表。当然,用户可以在灾备ECS中继续业务,当云厂商T的灾难恢复时,可以再将灾备ECS主机恢复回云厂商T的Oracle服务器中。也就是架构图中描述的第6条路径。因为操作类似,这里就不再演示了。
恢复后的Oracle表数目
小结
从上面的备份场景——从云厂商T的Oracle服务器备份整机到云厂商T的容灾网关,再到阿里云的灾备库中,和恢复场景——从云灾备库到阿里云上的容灾网关,再到自动创建的ECS主机并原样复制云厂商T的Oracle主机,可以验证混合云容灾实现了跨云/多云场景中的应用和整机的备份和恢复。整个流程十分简单。混合云容灾支持整机和主流的企业应用,如各版本的Oracle(Oracle RAC近期即将支持)和SQL Server等。同时,先进的压缩重删服务节约了备份时的网络带宽和空间占用,云灾备库的按需分配和弹性无限扩展,灾备ECS可关机不付费,从多个维度将用户成本降到最低。让传统高昂的容灾方案变成了0门槛开箱即用的简单服务,实现了云计算普惠中小企业的目标。
最后,欢迎用户前往阿里云控制台激活混合云容灾产品,让阿里云的先进技术为您的业务保驾护航!
混合云存储的跨云容灾备份大图及总结
结合之前的两篇文章和本篇文章,我们可以将混合云备份,云存储网关和混合云容灾这三个产品汇聚成一张跨云灾备(多云容灾/多云灾备)大图,从而为第三方云厂商的客户构建了一份完整而高效的跨云容灾备份方案。RTO从高到低,用户可以依次选择混合云备份,混合云存储网关和混合云容灾。其中,混合云备份和混合云网关支持文件的备份和恢复;混合云容灾不仅支持文件,还支持应用与整机的备份和恢复。
当然,我们需要在第三方云内部署一些主机和应用。RTO越低的产品方案,成本相对也高一些。但是,从之前的步骤看,操作依旧非常简单,而且成本比传统方案也要便宜不少。为了最大化的提升备份性能和降低用户成本,我们建议用户为跨云容灾备份在第三方云内部署的主机的网络配置成最高的带宽和按流量付费的模式。这样源端的数据可以非常快速地到达备份目的端,且不会为跨云备份容灾支付过多的成本。
混合云存储跨云容灾备份大图