“网飞”又火了!火爆的背后离不开稳定可靠的云服务
网飞(Netflix)又火了,再一次让观众“疯狂”起来!
《鱿鱼游戏》之后,擅长洞察人性的网飞,又一次狠狠拿捏住了屏幕里的选手和屏幕外的观众。《激赞网红》一上线,就连续登顶韩国TOP 10节目榜首。
《激赞网红》这档由网飞(Netflix)制作的生存类综艺,召集了来自YouTube、TikTok、Instagram和 Afreeca TV等平台的77位韩国网红。他们通过五轮比拼,决出最终的幸存者,此人可带走3亿韩元(约合人民币161万元)奖金以及“韩国第一网红”名号。
《激赞网红》
网飞在两年内实现了全球订阅用户数连续七个季度正增长,领先其他好莱坞背景的流媒体。其付费用户数字的攀升也再次巩固了网飞在流媒体大战中无可争议的老大地位。现在,网飞在全球有超过2.6亿付费用户。
8月20日,网飞宣布了今年上半年其品牌招商收入同比增长150%,广告主来自旅游、汽车、零售商、快餐和大众快消等行业。这一消息也提振了资本市场对网飞广告业务的信心,8月20日收盘创下每股 698.54 美元的历史新高。今年以来,网飞股价已经上涨了48%。
可以说,网飞真的是火“爆”了。透过现象看本质,网飞的流媒体业务需要依靠强大、稳定且可靠的云服务作为有力支撑。亚马逊云科技与网飞保持着长久合作,让我们一起解密——亚马逊云科技的云端韧性之道。
目前,有越来越多像网飞这样的用户,希望企业业务能7×24不间断运行。同时,企业面临着越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,已经成为企业急需解决的问题。
这里就要提到“韧性”。 韧性是应用程序抵御中断或从中恢复的能力,包括与基础设施、依赖服务、错误配置、网络问题和负载激增相关的中断。在亚马逊云科技,构建云韧性是一项最基础的工作。亚马逊云科技从一开始并持续在其基础设施、服务设计与部署、运营模式和机制中将韧性考虑其中。在此基础上,亚马逊云科技还提供一套全面的服务、最佳实践等,进一步帮助客户提升自身的韧性。
展开全文
如何让企业用户从容应对未知风险?如何帮助企业用户的业务具备韧性?亚马逊云科技大中华区解决方案架构总经理代闻表示:“亚马逊云科技去年每天稳定启动的Amazon EC2实例超过1亿,每秒 API请求数高达100万亿。正是因为做对了很多事情,才有今天全球数百万客户的选择和信任。”
他指出:“控制面和数据面的隔离,类似于叫车软件和打车,两者其实是相对独立的。当你坐上车以后,如果一段时间叫车软件没有信号无法响应了,也不影响司机将你送到预定的目的地。很多故障失效的情况关键在于没有把数据面和控制面做到很好的隔离。”
具体而言,亚马逊云科技的韧性始于全球基础设施。
亚马逊云科技全球基础设施地理位置分散,遍及34个地理区域的108个可用区。为了避免单点故障的影响范围,亚马逊云科技最小化全球基础设施之间的互联性。每个区域都独立于其他区域,区域之间的这种隔离机制确保单个区域发生服务故障时,其他区域不受影响仍正常运营。每个区域由三个或更多个相互独立,且在物理上分隔的可用区组成。每个可用区都有独立的电力、制冷和物理安全设施,同一区域内的可用区之间的物理距离也经过精心计算——通常是100公里以内。可用区的这种隔离机制,既能防止如供电、冷却等常见故障点,也能避免同时受到如地震、洪水等大规模灾害的影响。可用区之间又通过冗余的超低延迟网络连接,可实现可用区间单位毫秒级延迟的数据同步复制。为了获得高可用性的同时可以实现更大的容错能力,客户可以将他们的应用程序设计为在多个可用区中运行。
亚马逊云科技同时将韧性根植于服务及架构设计中。
亚马逊云科技构建的服务均满足极高的可用性目标。在服务/系统设计时,亚马逊云科技使用通过对服务的控制平面和数据平面进行隔离设计,并采用 “单元架构”设计模式,减少故障发生的可能,并尽可能降低故障发生时的影响范围。
亚马逊云科技服务分为控制平面和数据平面,并对他们进行分离设计,即数据平面不依赖于控制平面而独立运行,当控制平面发生故障的情况下数据平面仍能继续正常运行。其中,控制平面提供用于创建、读取/描述、更新、删除和列出(CRUDL)资源的管理 API,例如启动新的 Amazon EC2 实例、创建 Amazon S3 存储桶以及描述 Amazon SQS 队列等。数据平面是提供服务的主要功能,例如正在运行的Amazon EC2 实例本身、读取和写入Amazon EBS 卷、在 Amazon S3 存储桶中获取和放置对象等。控制平面往往是复杂的协调和聚合系统,会执行多项任务;数据平面则没那么复杂,相比控制平面其发生故障事件的可能性要小。这类似于火车系统,控制平面相当于指挥中心,数据平面则是铁路线路,当指挥中心如通讯系统出现临时故障时,火车仍然能按照既定线路运行。
亚马逊云科技根据区域和可用区的隔离机制以及控制平面和数据平面分离的原则,提供三种服务类型:全局(Global)服务、区域级(Region)服务、可用区级(AZ)服务。全局服务的控制平面和数据平面不是在每个区域中独立存在。全局服务以Amazon Identity and Access Management(Amazon IAM)为例,该服务是全局服务,它的数据平面独立存在于每个区域(Region),该区域中的每个云服务都直接与Amazon IAM数据平面交互。Amazon IAM 有独立的控制平面,客户可以使用它来管理身份和策略等IAM 资源。当 IAM 控制平面故障的情况下,无需任何更改,每个区域的身份验证和授权(即IAM的数据平面)都可以继续正常运行。
区域级服务是建立在多个可用区域之上的服务,数据平面和控制平面都是区域级别。以Amazon S3 为例,将请求和数据分布在多个可用区之间,可以自动从可用区故障中恢复。
可用区级服务可在一个区域内的每个可用区中独立运行,不依赖于其他可用区中的组件,可用区服务可以指定将资源部署到哪个可用区,如Amazon EC2属于可用区级服务。客户可以通过部署多可用区架构运行具有更高可用性、容错能力和可扩展性的生产级工作负载。当工作负载使用多个可用区架构时,可以更好地隔离和保护客户免受影响单个可用区物理基础设施问题的影响,即使一个可用区出现故障,工作负载也能保持运行。
此外,为了进一步降低故障发生时的影响范围即“爆炸半径”,亚马逊云科技还采用了“单元架构”设计模式。该模式将服务切分为多个部署堆栈,每个部署堆栈称为“单元” ,每个单元之间都是互相独立的,不共享任何内容,包括数据库,每个单元服务于一个或多个客户。采用了单元架构后,以可用区级别的服务为例,服务发生故障的影响范围就限制在单元内,而不是整个可用区。
“经验没有压缩算法”,亚马逊云科技通过卓越的运营和机制确保云服务的韧性。
亚马逊云科技还建立内部运营机制,通过服务责任模型、运营就绪审查、安全/持续部署以及错误流程纠错来确保云服务的韧性。其中,亚马逊云科技的工程和产品管理工作由小型多学科团队领导,他们对所提供的服务拥有强大的所有权——不仅负责设计和发布服务,还负责在生产过程中运营服务,并在出现问题时随时待命。
在一项服务发布之前,亚马逊云科技还会使用“运营就绪审查”流程来审核所有新服务的运营准备情况。当对部署软件进行服务更新或推出新服务时,亚马逊云科技会使用安全、持续的部署管道。为了最大限度地减少错误部署对生产造成的潜在影响,亚马逊云科技通过使用广泛的预生产测试、自动回滚和交错生产部署,将自动化部署安全构建到发布过程中。例如,一项服务的更新会从小处开始,首先部署到可用区内的单个最小单元,并经过指定的等待期以验证没有出现问题,再逐步部署到整个可用区的其余部分、其他可用区、单个区域,最后部署到其余区域。
此外,亚马逊云科技还利用“纠错流程”,对客户事件进行分析、研究,找出根本原因,减少其他服务发生类似问题的可能性,防患于未然。
亚马逊云科技赋能客户利用“云韧性”提升“云中韧性”。
构建韧性是一个持续的过程,而不是一次性的努力。为了帮助客户更轻松地提升云中应用的韧性,亚马逊云科技基于自身以及多年服务客户的广泛经验,总结了一套包含了服务、策略和架构最佳实践的“韧性系统建设生命周期框架”。该框架包含五个阶段:设定目标、设计和实施、验证和测试、持续运营以及响应和改进。
亚马逊云科技在每个阶段都为客户提供了适用的工具和服务。例如,客户可以使用Amazon Resilience Hub来设置目标,根据这些目标评估韧性状况,并根据Amazon Well-Architected Framework和Amazon Trusted Advisor的建议实施改进措施。在Resilience Hub中,客户可以创建和运行Amazon Fault Injection Service实验,这些实验允许客户测试其应用程序将如何响应某些类型的中断。其他服务,如Amazon Backup、Amazon Elastic Disaster Recovery (Amazon DRS)和Amazon Route53 Application Recovery Controller (Route 53 ARC),可以帮助客户快速响应和从中断中恢复。
“Everything fails all the time”(故障总在情理之中、意料之外),这是亚马逊首席信息官 Werner Vogels曾说过的一句话,这也是亚马逊云科技从开始并始终加强和发展韧性的原因。也正如亚马逊云科技的slogan所说,期待着下一个“网飞” 和亚马逊云科技构建下一个奇迹!
评论