神龙X-Dragon,这技术“范儿”如何?| 问底中国IT技术演进

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/FL63Zv9Zou86950w/article/details/101289038

 在CSDN总部会议室,阿晶首次见到了阿里云智能研究员、弹性计算技术负责人张献涛——这位不仅仅在阿里云智能内部,在业内也是响当当的虚拟化技术大牛。现在回想起来,当时聊了没两句,阿晶就问了这样一个问题,“阿里云这款全新一代服务器为何命名为神龙X-Dragon?难道是追求'X战警'那种领先和黑科技的感觉么?”

张献涛笑着回答,“在命名的时候,考虑到中西文化差异,有些词直译出来可能比较冗长,最后确定了这个最简洁的方案,不仅具备了国际元素,更重要的是音译出来特别有范儿,就定了!”

                                                                                      张献涛(左) 阿晶(右)

其实神龙X-Dragon的“有范儿”,从2017年10月推出的那一刻就表露无疑了。当时有报道提出,这个云计算领域的“新物种”兼顾了物理机与虚拟机的特性,可以像使用虚拟机一样灵活地使用物理机,而这个特性主要由自主研发的神龙架构来保障,源自阿里云智能多年在基础设施领域的技术积累。

裸金属?阿里云为啥卯劲儿做这个?

裸金属服务器怎么就这么火?阿里云智能为啥卯着劲头做这个?张献涛表示根源还在于IT领域发生的显著变革。在传统IT基础设施架构时代,每家公司都在“买机器、换机器、买机器”的无限循环中生存;然而,随着云计算的出现与普及,许多企业已经不再考虑自建机房,毫不犹豫地选择云基础设施来支撑所有业务,其中比较有代表性的就属新兴的互联网公司。但是在此之外,仍然存在大量企业不可避免地会使用一些线下物理机,重复之前的循环。那么,如何提供一个稳健的底层基础设施,帮助这些企业全面上云就成了阿里云必须要解决的问题。

顺利上云可以充分利用云计算的弹性优势,但如果需要颠覆企业原有的IT架构,哪怕是形势所趋,阿晶认为企业也会在成本消耗上打退堂鼓,所以就需要一个折中的方法。通过张献涛了解到,目前市面上广泛采用的折中方式就是物理机托管以及托管云,但深入分析这种折中方式的很多实际应用情况发现,这种托管的方式并没有充分利用云计算资源池化带来的优势,更无法形成规模化运作,这两套系统的割裂状态更阻碍了整体公共云的良性发展。

基于这些情况,阿里云决定做一款新型云服务器,既能提供物理机的性能和特性,又能像虚拟机一样和已有云计算基础设施完美融合,充分利用资源池化的优势,并能与其它的云产品互联互通。具体来说这种新型云服务器要兼具物理机和虚拟机的优势,同时消除它们的劣势,还要显著提升服务器的计算效率,尤其是要满足对服务器安全隔离与性能等要求较高的大型企业上云的诉求。

此外在采访中,张献涛还重点指出,云计算已经发展了十年有余,但底层的基础硬件却并没有为云计算而做出根本改变,与传统IT时代差别并不大。如果可以通过改造硬件架构来更好地适应云计算的技术发展,提升计算效率,想来绝对是一件很靠谱的事情。“经过一系列探讨,我们认为可以利用虚拟化技术为蓝本,通过重新定义硬件架构,打造一款和虚拟机一样体验的物理机。如果目标达成,那么它不是传统意义上的虚拟机,更不是托管类型的物理机,而是为计算而生的“新物种”。在产品发布时使用了神龙云服务器这个新的命名,神龙X-Dragon就一步一步走到了如今。”

“有想法=成功了一半”,阿里云如何做好后续?

人们都说“有想法=成功了一半”,但要真正付诸实践,将想法变成产品可不是一件容易事儿。“神龙X-Dragon本身就是一个软硬融合的产品,涉及到服务器、硬件、芯片、固件以及系统软件的研发与改造,因此需要阿里集团内部多个团队的协同才有可能完成。同时,大量资金和资源投入到充满不确定性的高风险的创新项目中,一方面显示了阿里对于创新的支持,而另一方面整个项目组也因此而承担了前所未有的压力。”张献涛表示。但面对种种困难,在将好的idea转化为实力产品的过程中,阿里巴巴内部的技术开放、协同的氛围以及同行小伙伴们对云计算技术革新的期盼,极大促成了神龙X-Dragon的诞生。

关乎战略、人员、资源等层面的还不算难题,如果从技术层面出发,最难的还是“裸金属产品要做到像虚拟机一样灵活”的诉求。由于虚拟机主要就是通过软件来实现,其灵活度很好,但要让一个物理属性的产品也同时做到这点,听着就有点儿不靠谱的样子。举个例子来说,虚拟机在正在运行的过程中,可以动态挂载云盘和弹性网卡来提升功能和性能,但如果要让一台物理机也能具备这个能力,并且要做到API接口都要完全一致的话,难度就上升很多了。再比方说,要让一台裸金属机器在硬件故障时支持宕机迁移,并且要保留一切配置和数据不变,甚至是MAC地址和IP都不能变化,这绝对是一种很难的技术挑战。

在这样的想法支持与推动下,经过不断实践创新,如今每台神龙服务器都可以做到像虚拟机一样被X-Dragon Hypervisor管理和调用,在阿里云控制台中创建/释放一台神龙弹性裸金属服务器和创建/释放一台普通ECS虚拟机是一样的,同时可以使用云基础设施池化的存储和网络资源,做到了资源的灵活弹性。在计算方面,X-Dragon Hypervisor运行在独立于主机外的专用硬件设备上,因此整个机器的计算性能没有任何损耗。如此一来,神龙弹性裸金属服务器便克服了公共云遇到的几个问题。首先神龙弹性裸金属服务器没有软件虚拟化带来的性能开销,完全发挥处理器和内存的性能。其次服务器的资源是独占的,其性能非常稳定,不会出现起伏不定的状况。第三,神龙系列服务器支持嵌套虚拟化,主流的虚拟化系统都可以在上面运行。在克服传统云计算主机缺点的同时,又保留了云主机的优点,比如上面提到的弹性部署、API操作、镜像启动、VPC网络等特性一样不少。“我很庆幸团队成员在遇到问题时没有选择退缩,而是迎难而上,才有了今天的成绩,克服了很多特别难解决的技术点。”

神龙这样优越,在阿里自身的云化进程中作用如何?关于这个问题,在历年天猫双11中早已有了答案。“大家都知道,在大促之时整个机器的负载都会瞬间变得非常高,容器化部署的业务在机器负载较高时,会遇到网络和存储虚拟化逻辑和业务争抢资源的事情,从而导致性能瓶颈,并且很可能导致业务的响应时间出现雪崩;但采用神龙之后,由于所有的网络和存储队列都通过自研神龙芯片来实现,其中的强隔离特性就会达成事半功倍的效果,再也不会出现高负载的情况下延迟大幅度提升导致业务不可用的情况发生。”

                                                                                            阿里云智能张献涛

使用神龙之后,其上每条数据流都能够做到独占网络队列以及存储队列。由于是硬件隔离,无论是高负载还是低负载,其整体表现都很均衡,以电商业务为例,使用神龙之后整体业务性能提升了20%-30%,并且高低负载情况下的业务延迟几乎无变化,做到稳如磐石。

此外还有一个有意思的现象,过去大部分K8s选择部署在虚拟机上,而如今越来越多的K8s正逐步部署在裸金属(bare-metel)服务器上。阿晶思考,以上展现出的神龙种种优势与容器的匹配度又如何呢?这一点也得到了张献涛的证实。通常在容器场景下会涉及到两层虚拟化,采用物理机就简单变为一层,如果使用神龙则变为零距离接触,根源在于所有的虚拟化部署全部集中在自研神龙芯片中并进行加速,对比普通物理机性能可以提升20%到30%的节奏,这意味着至少可以少购置百分之二三十的服务器,成本节约巨大。可以说,神龙裸金属服务器是K8S等容器解决方案的最佳计算平台,提供了超越物理机的性能和稳定性。

提及安全保护,张献涛提出当前来自安全的担忧确实很多,所以在裸金属服务器设计之初就充分考虑到这一点,毕竟保证安全比提升效率要重要很多。“通常来讲,更新固件是一个低频率的操作,所以我们在硬件和固件的设计上就严格限制了带内对固件的访问,避免黑客的入侵,所有固件的升级都通过带外来完成。此外神龙的设计本身也满足可信的需求,例如在金融场景中,可以满足客户对于等保认证等需求。

如今神龙已经研发到了第三代,神龙也从最初的裸金属服务器的代号演进成了支撑阿里云计算业务的神龙架构,并以此新型架构打造了阿里云神龙计算平台,承担一切计算型业务。回顾第一代神龙架构更多是支持裸金属服务的物理节点,高效解决用户依赖物理机上云的痛点;而第二代神龙架构的研发则将“并池”作为重点,同时可以支持裸金属和虚拟机产品的需求,不仅实现裸金属和虚拟机的体验一致,更可以利用同一个资源池提供多种类型的计算服务。例如在超算场景下,如果使用虚拟机来承载业务,性能损失可能会超过90%以上,在没有神龙架构之前,这类业务根本无法上云,如今通过刚才讲述的资源“并池”,使用同样的资源直接提供裸金属服务就妥妥的了。

简单来说就是一台在数据中心配置的服务器,既可以产生承载超算的实力 ,也可以用作虚拟机的功能,还可以被当作是裸金属服务器使用,毕竟用户的需求才真正决定了服务器的具体“功效 ”。“我们已经完成了第三代神龙架构的研发并计划在近期发布,十分期待,预计性能还会有3-5倍的提升。”

从MOC卡SoC芯片问鼎神龙未来

就在阿晶准备采访的前几天,有一则消息称,阿里平头哥正在研发一款专用SoC芯片,将用于新一代阿里云神龙服务器的核心组件MOC卡,以推动下一代云计算技术的升级在,真的吗?

据了解在神龙X-Dragon中,阿里云智能研发团队自研了“X-Dragon虚拟化芯片”,“ X-Dragon Hypervisor系统软件”以及“X-Dragon服务器硬件架构”。其中X-Dragon虚拟化芯片在芯片层主要解决虚拟机和物理机体系结果不一致的问题,让二者能在系统软件层面保持100%兼容,可以这样说,X-Dragon芯片是装在弹性裸金属服务器中的MOC卡的核心。

对此张献涛介绍说,这款阿里云自研的MOC卡拥有独立的处理、存储、I/O等单元,主要承担了原来通过软件形式实现的网络、存储以及外围设备的虚拟化;而神龙服务器的主板也是阿里云定制的,专门用作针对MOC卡进行优化,以便X-Dragon Hypervisor可以方便管理整个服务器,足见重要性。

谈及这个消息推测判断,张献涛对阿晶谈及了一段有关“选择”的纠结历程。“那时可以明确的一点,当时阶段的芯片技术以及其他硬件完全没有办法满足神龙的架构需求,所以自研芯片就变得势在必行了。可是选择自研也要进一步明确,是SoC还是FPGA?毕竟各有优势。”

具体来说,FPGA的优势在于灵活性较强且开发周期较短,半年左右就会出结果;相比之下SoC可能需要24个月,最少18个月才能迭代一次,这样分析下来FPGA最少可以保证半年迭代一次。“所以我们刚开始选择的时候也倾向于不要先着手SoC,尽管集成度比较高且成本具有优势,但毕竟开发速度实在跟不上如今互联网公司发展的情况,所以一定程度上还是FPGA比较好。”他补充道。

截止目前神龙坚持用FPGA,但发展到一定程度且芯片内部逻辑基本成型后,张献涛认为也可以考虑采用其他选择,这是一个水到渠成的过程,相对来说也比较容易操作,使用SoC是一个可以被考虑的发展方向。如今神龙带来的优势非常明显,能够解决各种系统损耗以及资源消耗等问题,为云计算成本下降和性能提升立下汗马功劳,同时还能满足用户上云的刚需。“未来关于神龙,各种迭代都在不断规划中,但终其一点,真正满足用户需求才是最关键的。”张献涛说。

9月25日-27日,2019杭州云栖大会即将拉开帷幕。今年大会将以开发者为主角,聚焦数字经济为核心,设置两天两场主论坛、110余场峰会和分论坛、超过20000平米的展区集中呈现最前沿的科技动态。

值得提及的是在9月25在D2-401会场13:30开始的阿里云智能弹性计算技术专场以及9月26日在D1-301会场9点开始的阿里云异构计算专场,都是张献涛作为出品人精心奉献给广大开发者的两场技术盛宴,届时会有很多技术大咖莅临现场并分享独特观点,敬请期待。

猜你喜欢

转载自blog.csdn.net/FL63Zv9Zou86950w/article/details/101289038