亚马逊云科技不仅自己擅长“韧性”,还擅长让客户“韧性”

爆火的《黑神话:悟空》带火了山西旅游业,山西有丰富的寺庙景观,其中,朔州市应县有一座中国现存最古老、最高的木塔,更有“天下第一塔”的美誉。专家认定,应县木塔是一座辽塔,距今已有近千年的历史,历经地震甚至炮弹撞击,多次修缮,至今依然矗立。

亚马逊云科技大中华区解决方案架构总经理 代闻

有分析认为,应县木塔之所以能屹立千年,得益于其合适的选址、巧妙的结构设计和持续的修缮维护。亚马逊云科技大中华区解决方案架构总经理 代闻 认为,这与云计算有相似之处,应县木塔和云计算的韧性都是通过正确的工程实践和持续的优化来实现的。

如今,越来越多的企业都依赖云计算服务,云服务的韧性越来越重要。亚马逊云科技已连续13年在Gartner的云基础设施和平台服务魔力象限中占据领导者地位,其中韧性得分为4.0,远超其他竞争对手。

代闻表示,亚马逊云科技去年每天稳定启动的Amazon EC2实例超过1亿,每秒 API请求数高达100万亿。正是因为做对了很多事情,才有今天全球数百万客户的选择和信任。在做对了的很多事情当中,韧性是其中至关重要的一环。

亚马逊云科技如何做好韧性这件事?

想要做好韧性这件事并不容易,代闻表示,这要从基础设施层面、系统架构层面以及运营机制三方面下手。

第一、基础设施层面。

基础设施层面关心的是数据中心面对风火水电,都要具备具备冗余和容灾能力。系统架构层面要有采用分布式设计来控制爆炸半径,减少服务间的依赖。运营机制方面需要有持续的监控、自动化响应和定期测试,具备及时发现并修复问题的能力。

简单来说,基础设施层面主要防范台风、火灾、水灾、地震等灾害的影响,其关键就是做好冗余。比如,电力部分都配有冗余供电系统,会配备UPS和柴油发电机等。网络部分也要有冗余,要具备应对“挖掘机铲光缆”的能力,亚马逊云科技通过三层架构实现高度冗余互联。

在大的基础层面,要做好冗余还得看数据中心选址和架构设计。亚马逊云科技选择了多区域(Region-通常以大城市为单位)和多可用区(AZ)的豪华设计方案,数据中心之间的距离既要避免不卷入同一个灾害,同时也不要太远而影响网络延迟,这极大提高了基础设施韧性。

第二、系统架构层面。

在系统架构设计部分,代闻强调了从单体架构向分布式架构的演变。通过回顾亚马逊早期因数据库故障导致全系统宕机的案例,说明了单体架构在扩展性和韧性方面的不足,因此亚马逊转向了分布式架构,以应对大规模并发和高扩展需求。

在新的架构中,亚马逊采用了单元架构,通过将应用负载分成多个独立的单元来限制故障影响范围,即使部分系统失效,其他单元仍能正常运行。此外,通过控制面与数据面的分离设计,确保即使控制面出现问题,数据面依然能够继续工作,从而提高容错性和稳定性。

最后,针对不同类型的服务,亚马逊提供了不同的可用性级别设计,从单个可用区到区域级别、再到全球级别的服务(如Amazon IAM),确保即使在某些区域失效时,全球其他区域仍能提供支持,增强系统的可靠性和韧性。

第三、运营机制层面。

运营机制方面,代闻介绍了一些关键做法和流程。首先,亚马逊通过服务责任模型将开发和运维紧密结合,也就是说谁写的代码谁负责部署运营,让开发人员对其代码的运营负责。研发团队24小时待命,快速响应任何服务故障,确保问题迅速解决。

其次,亚马逊通过运营就绪审查(ORR)流程,确保所有新服务上线前经过详细的风险评估和标准化手册的审核,并定期更新服务状态,形成闭环管理。这样可以提前发现潜在问题,减少故障风险。

最后,代闻提到了持续部署和纠错流程。通过从小范围试点到逐步扩展范围的分阶段部署的方式,确保代码更新的安全性和稳定性。同时,亚马逊通过“纠错流程”总结经验教训,确保历史故障的教训被应用到后续的服务中,提升工具和最佳实践,持续优化运营。

在实践中总结实现高韧性的最佳实践

亚马逊云科技所构建的韧性,说到底还是要交给云用户的。作为全球最大的公有云服务商,亚马逊云科技既是在提供云服务,同时也在不断总结经验,为客户提供实现高韧性的最佳实践。

以Netflix为例,Netflix早在2008年就开始使用亚马逊云服务,经历了从传统数据中心迁移到云端的过程,构建了多主多活的高韧性架构。这使得Netflix能够在全球190多个国家为超过2.6亿付费会员提供稳定可靠的视频服务。

通过Netflix的实践经验,亚马逊云科技将这些成熟的技术和架构融入其云服务中,让后来许多初创企业能够直接使用亚马逊云提供的开箱即用工具,实现类似的高韧性架构。

例如,使用Amazon Aurora Global Database,可以轻松实现跨区域的数据同步,显著降低了企业实现高韧性系统的复杂性。这种工具使企业无需从头开发复杂的韧性解决方案,快速享受全球级的高可用性服务。

除了这些工具层面的积累,通过多年的经验积累,亚马逊云科技提出了四大经验和五个阶段来帮助企业构建高韧性系统。

其中,四大经验总结了企业在提升韧性时的核心要点。包括韧性提升是一个持续的过程,不是一次性的工作;企业在业务需求、成本和系统复杂度之间需要取得平衡;韧性工程需要与软件开发生命周期紧密结合;以及从多个维度(业务、技术、运营等)来提升系统的可靠性。

为了确保企业能够有效落实这些经验,亚马逊云科技还制定了五个关键阶段:设定目标、设计与实施、验证测试、持续运营,以及响应与改进。通过这些阶段,企业可以系统化地提升其云上系统的韧性。

同时,代闻还提到,亚马逊云科技提供了一系列工具和框架(如Amazon Resilience Hub和Well-Architected Framework),简化了各个阶段的实施,使得企业能够更轻松地实现全球级的高可用性和稳定性。

亚马逊云科技帮助不同类型的企业实现高韧性

在最后,代闻还提到了一些实际案例,亚马逊云科技帮助不同类型的企业都实现了高韧性,也就意味着,这种韧性可以复制给更多用户。

奇瑞捷豹路虎汽车是国内首家中英合资的高端汽车企业,在中国将其核心的SAP系统迁移至亚马逊云科技,为了高可用性和韧性的同时降低运营成本,它利用亚马逊云的多可用区架构和高可用集群功能,完成了从传统数据中心向云端的无缝迁移。

迁移之前,SAP系统的故障切换时间为半个小时,迁移到云端后,缩短至3分钟,不仅确保了零数据丢失,大幅提升了系统的韧性和可用性。这种架构不仅优化了系统稳定性,也显著降低了停机时间和相关成本。

奇瑞捷豹路虎汽车一听就知道是大公司,那么,小公司如何享受到高韧性呢?接下来这个案例展示的是,在云服务商的帮助下,即使是小团队的公司,也能快速实现高韧性。

福建紫讯于2017年开始运营,以紫鸟浏览器为核心,为跨境电商用户提供数字资产安全托管服务以及数据运营指导,帮助中国制造出海。公司虽然人手不多,但却要为全球数百万商家提供服务,因此对系统的高可用性和快速构建有很高要求。

通过使用Amazon Aurora数据库和Amazon Lambda无服务器计算等云原生服务,紫讯实现了数据库的自动主备切换和故障转移,提升了系统的韧性。其核心产品紫鸟浏览器实现了RTO控制在10分钟内,RPO控制在1分钟内,SLA提升至99.99%,同时降低了灾备成本。

最后是FreeWheel,作为全球媒体广告支持服务商,它在高并发、大流量场景下,依托Amazon Aurora和Amazon DynamoDB等服务,构建了多区域、多活架构,支持全球用户,满足了其对高韧性和数据同步的严苛要求。

FreeWheel是一家提供广告管理技术的公司,帮助媒体和视频平台更好地插入和管理广告,优化广告收益。FreeWheel经常会为全球顶级赛事(如奥运会、世界杯)提供媒体广告支持,所以,FreeWheel对系统的韧性有着极高要求。

为此,FreeWheel用如Amazon Aurora和Amazon DynamoDB,替换了其原有的MySQL集群,构建了多区域、多活的高可用架构,确保跨区域的数据同步和容灾能力。通过这些技术,FreeWheel能够在高峰流量时,在2秒内将流量激增百倍。

此外,FreeWheel还采用了无服务器技术(Serverless),使得为后续开发的各种系统构建了高韧性的基础。这些云原生技术帮助FreeWheel既满足了全球业务的高可用性需求,又简化了系统的复杂度和运营成本。

结束语

说了这么多,其实就想说,亚马逊云科技作为全球最大的云服务商,在构建韧性方面非常有经验。亚马逊云科技擅长总结经验并提供服务,完全可以将这些构建韧性的能力作为服务给到客户,如果一家企业比较在意韧性,可以多了解亚马逊云科技的“韧性”。