本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
可靠性
定义
可靠性是指服务或系统在需要时执行其预期功能的能力。系统的可靠性可以通过其在给定时间范围内的运行质量水平来衡量。与此形成鲜明对比的是,故障恢复能力是指系统动态可靠地从基础设施或服务中断中恢复的能力。
有关如何使用可用性和弹性来衡量可靠性的更多详细信息,请参阅 Well-Ar AWS chitected Frame work 的可靠性支柱。
关键问题
可用性
可用性是指工作负载可供使用的时间百分比。常见的目标包括 99%(每年允许停机 3.65 天)、99.9%(8.77 小时)和 99.99%(52.6 分钟),百分比中的“9”为速记数字(“两个九”表示 99%,“三个九”表示 99.9%,以此类推)。与本地数据中心 AWS 之间的网络解决方案的可用性可能与整体解决方案或应用程序的可用性不同。
网络解决方案可用性的关键问题包括:
-
如果我的 AWS 资源无法与我的本地资源通信,它们能否继续运行? 反之亦然?
-
我是否应该将计划内维护的计划停机时间包括在可用性指标内还是排除在可用性指标外?
-
我将如何衡量网络层的可用性(与应用程序的整体运行状况分开)?
完善架构可靠性支柱的可用性部分提供了有关计算可用性的建议和公式。
故障恢复能力
故障恢复能力是指工作负载从基础设施故障或服务中断恢复、动态获取计算资源以满足需求以及减少中断(如错误配置或暂时性网络问题)的能力。如果冗余网络组件(链路、网络设备等)的可用性本身不足以单独提供预期功能,则其故障恢复能力就会降低。这样做的后果是,用户体验很差,体验度下降。
网络解决方案故障恢复能力的关键问题包括:
-
我应该允许同时发生多少次不连续故障?
-
如何减少连接解决方案和内部网络的单点故障?
-
我在分布式拒绝服务 (DDoS) 事件面前有什么漏洞?
技术解决方案
首先,需要注意的是,并不是每个混合网络连接解决方案都需要高水平的可靠性,而且可靠性水平的提高也会相应增加成本。在某些方案中,主站点可能需要可靠(冗余和可恢复)的连接,因为停机对业务的影响较大,而区域站点可能不需要相同级别的可靠性,因为发生故障事件时对业务的影响较小。建议参阅《AWS Direct Connect 弹性建议
为了实现可靠的混合网络连接解决方案的故障恢复能力,设计需要考虑以下几个方面:
-
冗余:旨在消除混合网络连接路径中的任何单点故障,包括但不限于网络连接、边缘网络设备、跨可用区和分布式交换位置的冗余以及设备电源、光纤路径和操作系统。 AWS 区域就本白皮书的目的和范围而言,冗余侧重于网络连接、边缘设备(例如客户网关设备)、 AWS DX 位置和 AWS 区域 (对于多区域架构)。
-
可靠的失效转移组件:在某些方案中,系统可能可以正常运行,但无法在所需的级别上执行其功能。这种情况在单一故障事件中很常见,因为此时会发现计划的冗余组件在非冗余状态下运行——由于使用原因,它们的网络负载无处可去,从而导致整个解决方案的容量不足。
-
失效转移时间:失效转移时间是指辅助组件完全接管主组件角色所需的时间。失效转移时间有多个因素:检测到故障需要多长时间、启用辅助连接需要多长时间,以及将更改通知网络的其余部分需要多长时间。使用链路的中断对等检测 (DPD) 和VPN链路的双向转发检测 (BFD) 可以改进故障检 AWS Direct Connect 测。启用辅助连接的时间可能非常短(如果这些连接始终处于活动状态),也可能是很短的时间窗口(如果需要启用预配置的VPN连接),也可以更长(如果需要移动物理资源或配置新资源)。通知网络其余部分通常是通过客户网络内的路由协议进行的,每种路由协议都有不同的收敛时间和配置选项,这些配置超出了本白皮书的范围。
-
流量工程:可恢复混合网络连接设计中的流量工程旨在解决在正常和故障情况下流量应如何流经多个可用连接的问题。建议遵循故障设计的概念,即您需要了解解决方案在不同的故障情况下将如何运行,以及是否能被企业接受。这一部分将讨论一些常见的流量工程用例,旨在提高混合网络连接解决方案的整体故障恢复能力水平。关于路径的AWS Direct Connect 部分BGP讨论了影响交通流量的几种交通工程方案(社区、BGP本地偏好、AS Path 长度)。要设计有效的流量工程解决方案,您需要充分了解每个 AWS 网络组件在路由评估和选择方面如何处理 IP 路由,以及影响路由选择的可能机制。这方面的详细信息不在本文档的讨论范围之内。有关更多信息,请参阅 T ransit Gateway 路径评估顺序、Site-to-Site VPN路线优先级和 Direct Connect 路由,并根据需要查看BGP文档。
注意
在VPC路由表中,您可能会引用包含其他路由选择规则的前缀列表。有关此用例的更多信息,请参阅前缀列表的路由优先级。 AWS Transit Gateway 路由表也支持前缀列表,但是一旦应用了前缀列表,它们就会扩展到特定的路由条目。
带有更具体路由的双 Site-to-SiteVPN连接示例
此场景基于一个小型本地站点,通过互联网通过冗 AWS 区域 余VPN连接连接到单个站点 AWS Transit Gateway。图 10 所示的流量工程设计表明,通过流量工程,您可以影响路径选择,从而提高混合连接解决方案的可靠性:
-
弹性混合VPN连接:每个冗余连接都提供相同的性能容量,使用动态路由协议 (BGP) 支持自动故障转移,并通过使用VPN失效对等体检测来加快连接故障检测速度。
-
性能效率:ECMP跨两个VPN连接进行配置, AWS Transit Gateway 有助于最大限度地提高整体VPN连接带宽。或者,通过广告不同的、更具体的路线以及站点摘要路线,可以独立管理两个VPN连接之间的负载

图 10 — 带有更具体路由的双 Site-to-SiteVPN连接示例
具有多个 DX 连接的双重本地站点示例
图 11 所示的场景显示了位于不同地理区域的两个本地数据中心站点, AWS 使用最大弹性连接模型(在弹性建议
通过将BGP社区属性与通告到的路由相关联 AWS DXGW,您可以从侧面影响出口路径选择。 AWS DXGW这些社区属性控制分配给通告路径 AWS的 “BGP本地首选项” 属性。有关更多信息,请参阅 AWS DX 路由策略和BGP社区。
为了最大限度地提高该 AWS 区域 级别连接的可靠性,每对 AWS DX 连接都进行了配置,ECMP以便可以同时使用两者在每个本地站点和之间进行数据传输。 AWS

图 11——具有多个 DX 连接的双重本地站点示例
通过这种设计,发往本地网络(具有相同的通告前缀长度和BGP社区)的流量将分布在每个站点使用的双 DX 连接上。ECMP但是,如果ECMP不要求通过 DX 连接进行路径选择,则可以使用前面讨论并在路由策略和BGP社区文档中描述的相同概念来进一步设计 DX 连接级别的路径选择。
注意:如果本地数据中心内的路径中有安全设备,则需要将这些设备配置为允许流量通过一个 DX 链路离开同一数据中心站点内的另一个 DX 链路(使用两个链路ECMP)。
VPN连接作为 AWS DX 的备份连接示例
VPN可以选择为连接提供备用网络 AWS Direct Connect 连接。通常,这种类型的连接模式是由成本驱动的,因为由于互联网上的性能不确定,它为整个混合连接解决方案提供的可靠性较低,而通过公共互联网进行连接则无法获得SLA这种可靠性。它是一种有效且具有成本效益的连接模型,应在成本是首要考虑因素且预算有限的情况下使用,也可作为临时解决方案,直至可以配置备用 DX。图 12 说明了该连接模型的设计。这种设计的一个关键考虑因素是,与可以通过VPN与之连接的 DX 连接通告的路由相比 AWS Transit Gateway,该VPN连接可以通告更多的路由,其中和 DX 连接都终止于。 AWS Transit Gateway这可能会导致不理想的路由情况。解决此问题的一个选项是在客户网关设备 (CGW) 上为从VPN连接收到的路由配置路由过滤,只允许接受汇总路由。
注意:要在上创建总结路由 AWS Transit Gateway,您需要在路由表中指定指向任意附件的静态 AWS Transit Gateway 路由,以便沿着更具体的路由发送摘要。
从 AWS Transit Gateway 路由表的角度来看,本地前缀的路由既从 AWS DX 连接(通过DXGW)接收,也从 DX 连接VPN,前缀长度相同。按照的路由优先级逻辑 AWS Transit Gateway,通过 Direct Connect 接收的路由的优先级高于接收的路由 Site-to-SiteVPN,因此,到达本地网络的首选路径 AWS Direct Connect 将是到达本地网络的首选。

图 12 — VPN 连接作为 AWS DX 的备份连接示例
下面的决策树将指导您做出所需的决策,以实现可恢复(带来可靠性)混合网络连接。有关更多信息,请参阅 AWS Direct Connect 故障恢复能力工具包。

图 13——可靠性决策树