本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
多区域基础知识 1:了解需求
如前所述,高可用性和操作连续性是采用多区域架构的常见原因。可用性指标衡量工作负载在定义的时间段内可供使用的时间百分比,而操作连续性指标则衡量大规模且持续时间通常较长的事件的恢复情况。
衡量可用性几乎是一个持续的过程。具体的衡量标准或指标可能有所不同,但通常围绕目标可用性进行汇总,通常被称为 9(例如 99.99% 的可用性)。就可用性目标而言,不能一刀切。需要在工作负载级别制定可用性目标,而不是在所有工作负载中应用单一目标,将非关键组件与关键组件分开。
为了保证操作的连续性,通常使用以下 point-in-time测量:
-
恢复时间目标 (RTO) - RTO 是服务中断和恢复服务之间可接受的最大延迟。此值决定了服务受损的可接受持续时间。
-
恢复点目标 (RPO)-RPO 是自上次数据恢复点以来的最大可接受时间量。这决定了在最新恢复点和服务中断之间哪些数据丢失被认为是可接受的。
与设置可用性目标类似,还应在工作负载级别定义 RTO 和 RPO。为了实现更严格的操作连续性或高可用性要求,需要增加投资。也就是说,并非每个应用程序都能要求或需要相同级别的弹性。创建分层机制可以帮助建立框架,使业务和 IT 所有者能够根据业务影响确定要求最苛刻的应用程序,并相应地对它们进行分层。分层的示例可在下表中找到。
表 1 — SLA 的弹性分层示例
| 可用性服务级别协议 (SLA) | 弹性等级 | 可接受的停机时间/年 |
|---|---|---|
| 99.99% | 铂 | 52.60 分钟 |
| 99.90% | 黄金 | 8.77 小时 |
| 99.5% | 银 | 1.83 天 |
表 2 — RTO 和 RPO 的弹性分层示例
| 套餐 | 最大 RTO | 最大 RPO | 标准 | 费用 |
|---|---|---|---|---|
| 铂 | 15 分钟 | 五分钟 | 任务关键型工作负载 | $$$ |
| 黄金 | 15 分钟 — 六个小时 | 两个小时 | 重要,但不是任务关键型工作负载 | $$ |
| 银 | 六个小时 — 几天 | 24 小时 | 非关键工作负载 | $ |
在设计具有弹性的工作负载时,必须了解高可用性与操作连续性之间的关系。例如,如果工作负载需要 99.99% 的可用性,则每年的停机时间不能超过 53 分钟。检测故障可能至少需要五分钟,操作员还需要十分钟才能接触、决定恢复步骤并执行这些步骤。单个问题需要 30 到 45 分钟才能恢复,这种情况并不少见。在这种情况下,采用多区域策略来提供消除相关影响的孤立实例,可以在有限的时间内进行故障转移,同时对初始减值进行独立分类,从而实现持续运营。这就需要定义适当的 RTO 和 RPO。
对于具有极高的可用性需求(例如 99.99% 或更高的可用性)或严格的操作连续性要求且只能通过故障转移到另一个区域才能满足的任务关键型工作负载,多区域方法可能是合适的。但是,这些要求通常仅适用于企业工作负载组合中的一小部分,这些工作负载的恢复时间限制在几分钟或几小时内。除非应用程序需要几分钟或几小时的恢复时间,否则等待受影响地区内应用程序的区域中断得到修复可能是更好的方法,并且通常与较低级别的工作负载保持一致。
在实施多区域架构之前,业务决策者和技术团队应就成本影响(包括运营和基础设施成本驱动因素)进行协调。与单区域方法相比,典型的多区域架构的成本可能增加两倍。虽然业务连续性有几种多区域模式,例如在热待机、热待机和指示灯下运行,但实现恢复目标风险最低的模式将涉及运行热备用,并且会使您的工作负载成本增加一倍。
关键指导
-
运营目标(例如 RTO 和 RPO)的可用性和连续性应根据工作负载确定,并与业务和 IT 利益相关者保持一致。
-
大多数可用性和运营连续性目标都可以在单个区域内实现。对于单一区域无法实现的目标,应考虑多区域,同时明确成本、复杂性和收益之间的权衡。