阿里云虚拟化技术总监谈虚拟化和开源的现状和前景

个人简介 张献涛博士供职于阿里巴巴集团,任阿里云资深专家,担任虚拟化技术总监,主导阿里云下一代虚拟化架构的设计与研发工作。在加入阿里云之前,他供职于英特尔亚太研发中心虚拟化部门,有9年的虚拟化项目经验,先后担任高级工程师、主任工程师、虚拟化架构师等职位。

全球架构师峰会(International Architect Summit,下简称ArchSummit)是由InfoQ中文站主办的一次全球性架构师峰会。ArchSummit专门针对架构师人群,讲述与架构和架构师相关的各方面趋势、技术和案例。这也是继QCon之后,InfoQ中文站主办的又一次高端技术盛会。

   

1. 各位网友大家好,我是InfoQ的阿明,非常高兴网友继续关注我们的视频节目,这次也非常高兴邀请到了来自阿里的旭卿老师,有请旭卿老师先和网友打个招呼。

张献涛:各位网友,大家好,我是阿里云的张献涛,我的花名叫旭卿,首先非常容幸,也非常高兴能够接触像InfoQ ArchSummit这样的平台,能够和我们的网友,就虚拟化技术在云计算中的一些应用,进行一次这样深入的交流,非常感谢。我现在负责阿里云的ECS虚拟化的技术团队,我本人加入阿里不久,在阿里巴巴可能算一个新兵,但是在虚拟化方面的话,应该还是工作了多年,因为我在05年还在上学读博士的时候,就已经加入了英特尔亚泰研发中心的一个虚拟化团队,那个时候也就参与了一些,像现在看起来是非常火的项目了,比如我们现在云计算里边普遍使用的像这种XEN Project,还有现在也比较火的KVM Project,我应该都是国内第一批参与进去的,特别是KVM项目,KVM项目07年刚一发布,我应该还算是第一批进去,贡献也算比较多的,KVM这样一个项目刚开始,只是在X86平台上面可以用,我当时和KVM maintainer Avi一起,为KVM增加了一个跨架构的支持,后来,我也成功的把这个项目移植到英特尔另外一个高端平台,叫IA64平台,我也变成了KVM IA64的一个project maintainer,总体来说呢,我其实在过去的八九年,近10年这样一个时间段内,都是在做虚拟化相关的工作,所以阿明老师有什么虚拟化相关的问题都可以问我。

   

2. 我有个疑问,现在虚拟化这么多年发展,你觉得它有发现哪些大的变化,有哪些大的变革和技术更新迭代?

张献涛:是这样的,这是一个非常好的问题了。因为我们谈到近几年的变化,其实我们也还是要回顾一下整个虚拟化的发展历程,其实虚拟化本身从概念提出到现在已经非常久了,三四十年是有了,七几年的时候,就有一些学者要提出怎样能够在这些大型机上去做虚拟化,但是其实真正发展的也就是近十多年的时间,中间有一个比较重要的里程碑式的转折点,我认为是2004年,世界上最大的两家芯片巨头,一个是英特尔公司,一个是AMD公司,突然间宣布说要在自己的CPU里边增加硬件虚拟化的支持,这对虚拟化的发展是有一个非常强烈的推动,我们看到在04年之前,其实像VMWare这种公司已经开始在做虚拟化,但是受制于CPU里边的一些硬件支持缺陷,一直很难做起来,但是近年来,我们可以看到虚拟化飞速发展,和这中间的里程碑式的转折点,关系是非常密切的,因为我们知道在硬件里面加入这样一个支持之后,对虚拟化的性能的提升是非常明显的,当然特别是在07年之后,随着在硬件上面的增强越来越强,性能提升之后,就普遍用于云计算。发展到今天,我觉得变化还是非常大的,因为我们可以看到虚拟化,近几年在云计算里边,无论是国外的像亚马逊,谷歌还是像我们国内的像阿里云这种公司,都是在基于虚拟化做一些云计算,做一些弹性计算方面的工作。我个人认为,其实虚拟化,现在一个新的热点,我们也知道有一个叫NFV的这样一个东西,其实它是利用虚拟化和一些廉价的X86硬件。在一些专有领域,它可以取代一些硬件设备,它可以颠覆一些传统的企业,比如以前我们要做一个网络的交换机,要做一个网络的路由器,我们肯定是要买这种专用设备,非常昂贵,但是虚拟化技术的存在,我们就可以用很简单的像X86硬件,就可以搭建出一个高性能的网络转发平台。接下来,我觉得还有一个比较重要的热点,就是虚拟化我们可以看到在服务器领域,在桌面领域都是非常成熟了,但是在一些新的领域,比如像移动计算领域,我们知道现在手机,平板这些东西都是计算能力非常高的,但是我们怎样能够利用虚拟化把这样一个领域,能够用进去之后,给用户带来不一样的用户体验,我相信在未来两到三年里会happen这样一个事情,当然我自己也在这方面有些积累,今天可能和我们的云计算的主题有点不太match,等到有成果的时候我再来给大家汇报。

   

3. 另外就是你的团队在虚拟化这个领域,目前的工作情况,大家比较关注的,是目前它是怎么样一个方向?

张献涛:是这样的,阿里云有一个比较拳头的产品,就是弹性计算这样一个产品,我负责的是ECS里面底层虚拟化的一个团队,我们隶属于阿里云的核心技术团队。我们知道核心技术团队的负责人是章文嵩博士,是在业界非常有名的一个名人,我这边的团队主要是负责底层虚拟化,我对团队的功能有一个划分,有一部分人是focus在我们现有的云产品上面的一些比如稳定性,性能方面的优化上面;还有一些,因为我们现在已经有海量的客户了,具体数字我还不方便透露,在这样一种情况下,我们的客户肯定会碰到各种各样的问题,那我们就需要一个非常专业的团队,能够帮助用户去定位问题,解决问题,从传统来看,这些问题本身可能并不一定是我们ECS的问题,可能是用户自身应用碰到了一些问题,但是他在我们的应用平台上面,我们也可以通过我们的分析工具,帮用户去分析出来他们系统应用的一些问题;另外一部分人,我是让他们在做下一代虚拟化架构的预言工作,因为你也知道,虚拟化技术发展日新月异,我们如果都是focus在一些老的东西上面,其实很难跟上时代发展的节奏,所以说我们有一部分人,也在做新的产品的运营,相信明年Q1或是Q2的时候,我们下一代的虚拟化架构平台就会上线,到时候广大网友也可以上线去试用。

   

4. 我觉得目前业界对虚拟化关注也是个热点,另外在开源方面,大家也是炒的比较多,话题也比较开,旭卿老师你对开源是怎么看待的?

张献涛:这个话题确实比较大了,我就谈谈我个人对开源方面的一些认识,我最早接触开源是读大学时候,刚开始接触开源的时候,其实我对开源很不理解,因为那个时候就感觉一个公司的核心竞争力就是代码,就是软件的实现,把核心的东西都贡献给别人了,公司的核心竞争力就会减弱,这是我当初很不成熟的认识了。但是直到我博士毕业之后加入英特尔亚泰研发中心,其中有个开源技术中心,他们是专门做开源的,接触到了开源的很多项目之后,我其实才真正感受到开源项目的魅力,举两个例子,就是我参与了比较多的两个虚拟化项目,一个是Xen,一个是KVM。像Xen是2003年、04年左右开源,开源了之后,世界上几乎一流的公司全部都参与进去,帮他去做,这样Xen.org我们也可以看到了,Xen项目发展非常快,Xen.org到06年、07年的时候好像就卖给了Citrix公司,就是五亿美刀;然后KVM也是,KVM是以色列的一家小公司,然后在短短的两三年时间之内也卖给了RedHat,也是一亿美金这样一个价格去卖的。我总结过去这么多年,参与开源项目的一些感受,就是开源其实是,我为人人,人人为我,人人为我的时候,我自然而然的得到了提升,我的东西自然而然的就在业界形成了一种品牌效应,即使这样一个项目被很多公司拿去用,但是不要紧,核心竞争力还是在你的公司。我也要求我的团队在开源方面多做贡献,阿里巴巴在这方面做得非常好,因为阿里巴巴,几乎所有能开源的项目,我们都可以在阿里巴巴的网站上参与,并且我们对社区的回馈也是非常多的,我们的一些改进,都会放到阿里巴巴网站上面去,淘宝有一个专门的开源技术网站,大家可以到上面去看看,各种各样的新鲜技术都可以在上面一览无余。

   

5. 你刚刚提到,我们有做下一代的虚拟化的前瞻性的东西,你觉得目前对于阿里云来说,虚拟化面临哪些比较大的挑战,未来有哪些问题需要更核心的去解决的?

张献涛:确实,我们现在也在研发下一代的虚拟化的架构,我们中间面临着很多的挑战,因为我们阿里云在国内,其实做云计算还是比较早了,那个时候,其实世界上也只有像亚马逊这样的公司在做,后来我们看到很多公司都上来做云计算,在07年的时候,国内也有一批企业在做,可能现在在做云计算的已经很少了,阿里云做得比较早,当然也就会背着一个比较大的包袱在前进,在这个过程中,我们其实是想怎样能够利用现在的一些新的技术,能够把我们的包袱慢慢的减轻,能够通过研发新一代的虚拟化的计算平台,弹性计算平台,把我们的东西能够做得更好,更快,能够更好的去服务我们的用户。我觉得其他方面的挑战的话,也还是有的,可能比较大的就是现在像我们有一些行业客户也要上云,各种各样的行业他们对虚拟化计算平台本身的要求是不一样的,在这样一种上云的计划里面,光阿里巴巴这样一家公司,对虚拟化计算平台的需求就很不一样;可能原来因为他们都跑在裸机上面,如果上去之后,因为裸机上面还运行着像容器方面的一些方案,但这个方案我们是没有在原来的平台里面考虑,那么我们在下一代平台,会针对这方面的一些需求,增加比如容器方面的一些支持。对于行业客户,比如说游戏行业也有一些新的需求,我们虚拟化底层也要去帮助解决。

   

6. 刚才您提到容器方面的一个方向,目前,大家聊的比较热的一个叫Docker的技术,这方面,我知道阿里云也在拥抱Docker,关于这块你是怎么看待的,Docker的未来发展?

张献涛:Docker大概有一年的时间,我刚接触Docker的时候,还不在阿里巴巴, Docker刚一出来,我们就针对Docker进行了分析,那个时候我们得到了一个结论,就是Docker肯定有自己的发展空间,因为它解决了容器虚拟化面临的一个很关键的问题,就是怎样能够让镜像做快速部署,怎样能够对一个VM进行迁移操作,它其实解决了这两个核心问题。当然Docker这个技术本身不是那么新鲜,因为它也是基于容器方案,LXC这样的方案去做得,我们其实在阿里巴巴内部,也有类似于Docker这样的解决方案,已经在淘宝业务上面,跑了三四年的时间了,但是我们其实有一点做得不是很好,我们没有很好的深入总结,把这样的东西开源出去,这个可能是我们要深入总结的地方。我觉得你问这个问题,可能更关心,比如说像Docker这样的虚拟化方案是不是和我们,像ECS这样的虚拟化有些结合,或者冲突,有人问我以后是不是Docker这样的东西会取代虚拟化?我本人不这么看,因为Docker有很多关键的问题很难解决,比如说它的隔离性就很难解决,因为像虚拟化,它是CPU内部提供了硬件Container的概念,但是Docker是纯software的一种概念,没办法满足多租户之间的强隔离性,所以说它的应用场景肯定会有,但是不会像虚拟化这样变得这么普遍,当然我相信Docker肯定会跟,我们ECS产品有一些结合,像你刚才说,我们阿里云也在拥抱Docker,我们已经在阿里云上面提供了Docker的一些镜像hub,只要是我们阿里云的用户,你买了ECS,就可以在ECS上面很轻松的去部署Docker的解决方案。为了支持Docker,我们也在上线一些新的镜像,比如像CoreOS这样的集群部署方案,希望在大概未来的一到两个月内,大家就可以到阿里云上面买ECS,然后通过像CoreOS,kubernetes这样的东西去使用Docker。

你可能感兴趣的:(阿里云虚拟化技术总监谈虚拟化和开源的现状和前景)