订阅
纠错
加入自媒体

AWS Nitro架构创新,“性感”得像比基尼一样

2019-07-25 08:40
本来科技
关注

比基尼作为服装史上最具有视觉冲击力的服装,堪称时尚界一项伟大发明。不过本文无暇多谈比基尼,只探讨目前在云计算领域涌现出的一种新的时尚——AWS Nitro这个如比基尼一样性感的硬件创新。

按需和共享,是云计算与生俱来的使命。而要实现云计算,众所周知,离不开虚拟化技术。

本文的重点,就是头号云计算服务商AWS在虚拟化技术上的大胆创新。这一创新灵活、巧妙甚至称得上“性感”,与“比基尼”的发明有异曲同工之妙。

在进入正题之前,先简单了解一下云计算的虚拟化。

根据针对的对象不同,虚拟化可分为平台虚拟化、应用程序虚拟化、资源虚拟化等。平台虚拟化是针对物理硬件及操作系统层面而言的,根据其实现方式又可分为完全虚拟化、半虚拟化、操作系统级虚拟化以及硬件辅助虚拟化等。

AWS Nitro的实践就属于硬件辅助虚拟化的一种。

云计算的虚拟化

云计算诞生以来,主要解决3个问题:

将本地计算资源共享给千里之外的用户(或同事);

让包括老旧机器在内的更多计算硬件发挥剩余价值;

按需分配和共享计算资源,通过计算服务收取在设备上的投入并赚取利润。

一直以来,虚拟化技术都是云计算得以实现的基石。通过虚拟化技术,不可分割的硬件资源会被抽象和转化为可二次配置的计算单位,从而实现按需分配和共享现有的计算、存储和网络资源。

虚拟化技术本质上是对资源的配置管理。起先,虚拟化作为中间层管理软件占用一些计算资源,并不引人注目。但是,在带来资源灵活性和利用效率极大提升的同时,虚拟化造成的性能打折,日益成为焦点。

用户需求在变,市场竞争环境也在变,在“如何实现云计算?”这个问题上,调优虚拟化成为一个绕不开的命题。

AWS加量+降价双管齐下

AWS这项在云计算虚拟化方面极具突破性的创新,势必在云市场引起一股潮流。

具体就是,基于AWS最新打造的Nitro架构,AWS对新一代5系列EC2计算实例进行了优化——这一举动,直接将原本在通用CPU上运行的虚拟化管理程序,运行在专有硬件上。如此一来,用户所购买的计算资源(CPU和内存等)就变得更足量,性价比也得到大幅提升。

比如,此前在Amazon EC2 C4系列主机上的CPU与RAM配比是1:1.875,经优化之后,该比例在C5系列实例变成了实打实的1:2。

随即,AWS在6月20日的技术峰会上海站宣布,在光环新网运营的AWS中国(北京)区域和西云数据运营的AWS中国(宁夏)区域,近期对Amazon EC2新一代5系列计算实例(C5和R5)以及GPU加速计算实例P3进行了主动降价。根据客户所选的实例类型不同,客户可以拿到27%~49%之间的降幅。

历来,AWS在中国市场都是“被价格战”的一方,突然出手这么大的降幅,多少让市场有些猝不及防。

最关键的是,AWS这种通过架构优化提升性价比的手段,与“烧钱”打价格战有着本质的不同。

近年来,尽管IaaS和PaaS等云服务已经非常完善,但在一些特定需求下,用户或需要更多控制权、或需要更多硬件介入、或期望更好性能,开始寻求“裸机”服务。“裸机服务器”这个充满矛盾意象的新事物逐渐形成一个快速成长的市场。

从这个思路出发,把原来虚拟机软件要做的事儿交给专有硬件来做(offload),也发生了很多有趣的变化,其中最主要的就是性能上的变化。

AWS的Nitro架构创新,采用的就是这种offload思路——在云计算系统上,把许多原本需要系统调用、内核操作的工作绕开OS、绕开CPU,通过其他硬件实现。这样一来,不仅流程简化,操作也更精简。

一言以蔽之,此举是通过更明细的分工,实现效率的提升。

AWS首席技术布道师Jeff Bar在一篇博客里写道:“采用了Nitro Hypervisior的实例跟裸机服务器主机相比,性能只差了大约1%,这一微小差别很难察觉出来。”

一头是性能提升,一头是价格下降。通过Nitro架构,AWS做到了让云计算服务“加量、降价”双管齐下。

Nitro System的“身世”

更重要的,AWS 的Nitro架构,是一整套系统(Nitro System)。

再来了解一下Nitro的“身世”。

大约是从2012年,虚拟机管理程序开始暴露出一系列瓶颈与缺陷,特别是虚拟机管理程序对于网络及存储设备的处理方式。此外,虚拟机管理程序因设备类型不同存在的巨大差异也让架构师们头疼不已。

这些问题促使AWS寻求新的方法来改进纯软件虚拟机管理程序架构,探索更灵活可行的虚拟机管理手段。

而探索的结果,正是AWS Nitro System。

这要从2015年说起。2015年初,亚马逊一举收购了Annapurna Labs——一家出色的以色列芯片初创公司——并在其EC2 C5 计算实例中采用了他们开发的新型硬件与定制ASIC芯片。

正如我们所知,ASIC芯片功耗低、性能优、成本低、可靠性强,而这款新的ASIC芯片正是用于负责承载AWS虚拟机管理程序,可确保服务器的几乎全部CPU与内存资源都可用于运行业务负载。

“亚马逊意识到有必要将虚拟机管理程序中的某些功能从裸机主机卸载至定制化硬件当中。”

加拿大一位有着20多年项目经验的云架构师Paul Liversidge提笔写道:

“硬件开发工作对亚马逊而言并不陌生,这家云巨头多年来一直与英特尔密切合作,如果在过程中遭遇挑战,他们也绝对有信心和能力将其一一破除。”

“比基尼式”创新

过去的四五年里,Nitro System一直支持着全部EC2实例类型。

目前,Nitro System主要由Nitro虚拟机管理程序、Nitro加速卡、Nitro安全芯片三大部分组成,其中Nitro虚拟机管理程序主要用于替代Xen及其设备处理系统,Nitro加速卡用于处理各Nitro实例的存储、网络、管理、监控以及安全需求,Nitro安全芯片则被直接集成在主板上。

并且,不同的EC2服务器实例类型当中包含有不同的Nitro System功能,也有一部分服务器类型同时配备多种Nitro System卡,用于实现AWS Nitro System的五大功能:

网络适配器(面向VPC型Nitro卡)、存储加速支持(面向EBS型Nitro卡)、NVMe控制器(面向实例存储型Nitro卡)、Nitro卡管理(Nitro卡控制器)、安全保护(Nitro安全芯片)。

如此一来,AWS规模最大的计算实例类型将能够为客户提供更多可用计算,而不必再为内部管理、监控、安全性、网络I/O或存储预留资源。

此外,Nitro虚拟机管理程序是一款简单的轻量级虚拟机管理程序,该程序几乎始终处于静止状态,允许客户以安全方式支持各种裸机实例类型。

正如AWS Nitro System项目首席工程师之一Anthony Liguori介绍的那样,Nitro System支持多种关键性网络、服务器、安全、固件补丁更新以及监控功能,从而确保计算实例有能力开放整个底层服务器以供客户使用。

总体来讲,AWS这种架构创新,用最小的成本承担了最紧要的(虚拟化)部分,让用户得到了最想要的、接近裸机服务器的性能。这不就是云计算版的“比基尼”么?“用料”少、简明扼要,给用户以最大化的效益。

活用萨姆·尤因一句名言:“计算机像比基尼一样,省去了人们许多胡思乱想”,Nitro架构创新也像比基尼一样,省却了用户对于虚拟化方案许多的“胡思乱想”。

预测未来最好的方法

天才的计算机大师、图灵奖得主阿伦凯(Alan Kay)有句耐人寻味的名言:“每个热爱软件的人都应该有自己的硬件系统。”而AWS的硬件创新则再次印证了这句话,每个热爱软件的人都该造出自己的硬件。

2018年,总部位于美国波士顿的IT专业媒体网站TechTarget在其存储频道提出一项重要议题:“命运的钟摆是否重新指向了硬件差异化这一发展方向?”从AWS Nitro架构的硬件创新可以证明,这一问题的答案是肯定的。

由于Nitro虚拟机管理程序取消了主机系统软件组件,从而可以为EC2虚拟化实例提供更出色的性能一致性,同时提升可用计算与内存资源。

目前,AWS每年都将数百万块Nitro ASIC投入实际使用。虽然仅供AWS自身实例使用,但这仍然是一款数量可观的服务器组件。AWS方面表态,Nitro ASIC及其后续技术将一直支持EC2实例中的种种创新成果。

通过AWS NitroSystem这个案例,笔者不禁再次思索创新的含义。当前,“摩尔定律难以为继”是悬在IT产业上空的一大朵乌云,怎样才能继续获得性能提升、计算加速?

我想,如果仅把摩尔定律作为一个经济学概念来看,新的摩尔定律将不再仅仅依靠物理制程的改进而继续爬升,它需要更多创新手段、形式来实现。而通过软件与硬件的结合来继续推动,就是其中一种方式,想必这也是天才计算机大师Alan Kay说出那句话的题中之义。

当然,在计算机圈,还有一句名言就是:预测未来最好的方法就是创造它(The best way to predict the future is to invent it.)。云计算的未来是什么?我们且看创造者们的创造吧。

声明: 本文由入驻维科号的作者撰写,观点仅代表作者本人,不代表OFweek立场。如有侵权或其他问题,请联系举报。

发表评论

0条评论,0人参与

请输入评论内容...

请输入评论/评论长度6~500个字

您提交的评论过于频繁,请输入验证码继续

暂无评论

暂无评论

    云计算 猎头职位 更多
    文章纠错
    x
    *文字标题:
    *纠错内容:
    联系邮箱:
    *验 证 码:

    粤公网安备 44030502002758号