提起“虚拟化”这个词,许多人都不陌生,如今这个词汇已经成为IT的热门用语;但如果谈到虚拟化产品的具体应用,大家也许就没那么熟悉了。51CTO记者今日特别采访了全球领先的虚拟化软件公司VMware的技术总监张振伦先生,就虚拟化的问题进行了详细交流。
 
提起“虚拟化”这个词,许多人都不陌生,如今这个词汇已经成为IT的热门用语;但如果谈到虚拟化产品的具体应用,大家也许就没那么熟悉了。51CTO记者今日特别采访了全球领先的虚拟化软件公司VMware的技术总监张振伦先生,就虚拟化的问题进行了详细交流。
VMware的技术总监张振伦先生和51CTO记者合影留念
51CTO:对于企业网络技术和产品的使用者而言,他们无论对于虚拟化和VMware产品而言都不陌生;但是真正了解VMware的虚拟化技术的人并不多。能否请张先生先简要介绍一下什么是虚拟化?
张振伦:虚拟化这个词是1965年由IBM提出来,是为了解决在IBM“大机(大型Unix服务器)”上解决单一操作系统上系统资源利用不足的问题。当时就提出是不是可以研究出一套系统,可以模拟多种操作系统运行来完成在不同操作系统上多种应用。
从当时的1965年到现在可以看到,虚拟化并不像其他IT技术那么飞速发展,只是在近两年虚拟化才显示出强劲的活力。真正把虚拟化引用到x86平台还是VMware从1998年开始的。初期的x86平台在计算能力和稳定性方面都不是很成熟,虚拟化基础比较脆弱。VMware也就是开始先在x86的PC上进行测试方面作研究。早期VMware的版本就是WorkStation,我们叫JSXserver,这也是现在很多用户很熟悉的版本。然后随着PC的普及以及本身内存的提升和计算能力、稳定性方面的增强,开始引入到企业生产环境。早期企业应用的版本ESXserver,这个版本集成了很多企业实际需求的功能。
51CTO:近两年来“虚拟化”飞速发展,但其真正在企业中应用的情况如何?尤其是在国内中小企业中的发展什么状况呢?
张振伦:从全球来看,已经有两万家企业部署了VMware的系统,财富100强全部是我们VMware的用户。
全球的行业来看,无论大、小企业都有很大规模的部署我们的系统,而从国内情况来看,最多应用的还是大型的跨国企业,在他们企业中VMware的部署都已经有了自己的一套标准和执行规范,所以可见他们的虚拟化应用已经相当成熟。当然国内市场现在政府、保险、制造等行业都都在大面积部署。
51CTO:那么企业在使用虚拟化时,最担心的问题有哪些?
张振伦:国内的用户在使用时首先担心的是在想我们是不是第一个“吃螃蟹”的人,有没有本地国内本行业的成功案例。我们实际上已经有很多用户在使用我们的系统。
此外,我们用户经常会问做了虚拟化之后我的服务器性能会不会明显下降。其实我们已经作过了这方面的测试,我们测试是使用一台安装了VMware的服务器虚拟出来一个系统和一台直接安装操作系统的服务器来对比测试成绩,测试成绩表明VMware的服务器性能只有几个百分点影响。
此外,用户还有可能对虚拟化产生一些不必要的担忧。在有些用户看来,虚拟化是把一台服务器切分成多个系统来共享这么一个资源。表面上来看我们是不是遇到了一个把多个鸡蛋全放在一个篮子的情况。万一我们的这个硬件出现问题,或者硬件没问题我们想省级服务器、加内存、换硬盘等等的情况。其他的虚拟系统是不是也就不能工作了。在VMware的Vi3版本我们就提出了一个功能Vmotion,实现停硬件不停软件。就是停掉一个服务器,但软件继续运行。听起来有些奇怪,我这些继续运行的程序在哪里运行?其实它是动态的转移到其他服务器上了,对于用户和程序没有任何影响。这对于企业化推广是一个必须实现的功能,从而解决了多个鸡蛋在一个篮子里存在的风险问题。
51CTO:用户肯定会表示疑惑,怎么可能安装了虚拟化软件会有这么小的影响?什么情况下才能影响这么小?
张振伦:其实,首先是大家使用VMware Workstation等单机版本的原因。Workstation是在操作系统之上部署了一个虚拟环境,使用的资源完全需要向下面的操作系统申请分配,而自己没有权利控制硬件资源。所以,在这个过程中虚拟机的性能是打了很大折扣的。而我们服务器上部署的VMware是直接安装在裸机上的,也就是说可以直接控制分配服务器资源池,也就极小的占用了服务器的性能。我们现在采购的服务器性能成倍的提高,但是我们的生产需求并没有提高那么多,所以我们的服务器还有很大的性能利用空间。
VMware实现模型
我们的虚拟化系统可以参考示意图。从图上可以看出,VMware最理想的状态是运行在的“裸机”上,全面地控制资源的分配。这就是VMware的Hypervisor这样一个体系,Hypervisor翻译成中文就是“虚拟化管理程序”,它就是最早在IBM大机上编译一个程序直接放在硬件上,不用基于别的操作系统,就可以直接通过我们的这个虚拟化层(VMM)管理硬件资源。在之后的升级中完全根据虚拟化来调整优化设计,这就大大优化了虚拟环境。
当然,说得稍微复杂一点,我们这时又遇到了一个问题,传统理论x86芯片的17条“例外指令”是不利于虚拟化的实现的。那怎么样去解决这些问题,VMware就有一个专门的技术,当然Intel和AMD也有类似技术。此外,VMware现在解决虚拟化时利用了一个“Cache”的功能,因为指令本身不多在一次访问后第二次就可以直接找到相应资源,这就大大提高了执行效率。
51CTO:虚拟化软件运行在硬件之上,虚拟的操作系统是通过它来控制实际的硬件资源。这在一定程度上会占用部分硬件资源,也对服务器有了计算等各方面限制。从您的经验,对服务器的最低要求是什么配置?
张振伦:我们建议服务器采用2路CPU,内存在8G以上,这个配置更利于VMware的性能发挥。虽然1路CPU,4G内存也可以运行但是那样不利于VMware性能的发挥。
51CTO:您刚才介绍了可以在虚拟化环境下实现平台平滑迁移,请详解介绍一下这方面的原理和具体实现。
张振伦:我们实现平台平滑迁移利用了三项技术:Vmotion,HA和DRS。
Vmotion可以在迁移中实现内存同步,然后通过服务器之间的千兆以太网和共享高速存储把内存数据复制另外一台机器上,然后继续运行。很多人担心再转的过程有多可靠,实际上再转移过程分成很多步骤:首先检测那台机器是否兼容,在兼容的情况下转移内存数据,只有在内存完全同步情况下才会Down掉原来机器上的服务,启动新服务;如果不成功,原来的服务是不会关掉的,这样保证数据的安全。
vmotion

DRS则可以自动通过监视整个系统的负载情况,动态分配各个虚拟机到相应的服务器。这在一些特定的企业很实用。比如平时某台机器负载不高,可以把一些别的Web服务调整过来在这台机器上运行,但是到了每月底,负载一下增高,就会把上面的Web服务调整到其他的服务器上。这对于银行月初结款,月底清账的需要实现很好应用。
DRS
HA则是类似的原理,在其中一台服务器需要撤下来维护时,其上面运行的服务不会停止而会平滑过渡到另外的服务器上。
HA
51CTO:刚才谈到的这些功能,企业如何管理呢?管理的复杂度怎么样?
张振伦:我们所谈到的这些都是通过VirtualCenter的这样一个控制中心进行监控调整服务做在服务器。企业只需要在任意一台服务器中安装了相应的软件,即可实现所有的一体化管理。控制中心是可视化的,非常便于用户操作。
51CTO:对比VMware和实际我们经常接触到的服务器集群的区别,和各自的优势又在哪些方面呢?企业如何判断使用虚拟化软件,对企业来说是否省钱呢?
张振伦:这个问题我们的用户也经常询问:我买两台服务器,到底运行多少个虚拟机才能最划算。经我们详细测试计算,除去节电、人力资源等因素不考虑,如果用户采用4路服务器虚拟出来5台虚拟机,用户的投入就已经比不使用虚拟机“赚”了。实际上,我们对客户在相同条件下一般都会运行8到10个虚拟机,不会影响效果。
51CTO:您谈到VMware在实现的一些功能和集群的作用很相似,那您谈谈两者的区别和各自的优势?
张振伦:VMware 的Vmotion在服务之间的平滑过渡、负载平衡方面有着集群无可比拟的优势,传统集群是在其中一台服务器坏掉情况下,自动重启,然而在重启的过程中,服务的切换时需要3到5分钟的时间,这在一些企业是不允许的。而VMware是在无缝平滑过渡,不损失任何数据。在我们的理解就是:传统集群“共享磁盘”,VMware“共享内存”。
51CTO:非常感谢张振伦先生的到来。如果各位读者朋友对虚拟化软件和应用还有什么问题,欢迎大家通过51CTO网站、论坛进行沟通和交流,我们也将随时邀请专家进行解答。