【IT168 专稿】这两年,虚拟化技术被炒的很热,可以说虚拟化是IT信息化进程中的重大趋势,我们或多或少的都会了解到,企业通过实施虚拟化,可以实现简化管理与维护、资源整合与节省IT支出,这样的好处不言而喻。但目前国内成功实施虚拟化的企业却不多见,而将关键应用部署在虚拟化之上的企业更是寥寥可数,总之有点儿给人 "雷声大、雨点小"的感觉。是什么因素在阻碍企业虚拟化实施的进程呢?而那些已经实施了虚拟化的企业,在运营过程中,又碰到了哪些难以解决的问题呢?
2月份,IT168服务器频道联合Ixpub社区就此话题,在社区展开讨论,得到了众多热心网友的热情参与,其中不乏对虚拟化认识的真知灼见,通过对各位网友发言的梳理,我们发现,现今企业在面对虚拟化方面的顾虑主要集中在以下几点:
1、虚拟化专业人才和成功案例匮乏
--缺乏虚拟化专业人才和培训机制
--缺乏成功经验及其案例可以借鉴
2、实施虚拟化存在成本的不确定性
--中小企业实施虚拟化软件成本过高
--企业担心虚拟化后期维护服务成本
3、虚拟化的性能和可靠性有待考验
--SQL等高负载高性能应用不理想
--虚拟化的安全性可靠性有待考证
虚拟化专业人才和成功案例匮乏
在参加讨论的网友中,几乎无一例外的都提到了虚拟化专才缺乏的问题。人才缺乏导致的结果就是,尽管大家都知道虚拟化的种种好处,但假使企业没有人精通此道,也只能是水中望月,因为谁都不愿意将系统放置于虽然美妙但自己却不熟悉的平台之上,这样做的风险不是光省钱就可抵消的。因此,在一定程度上人才的缺乏也打击了企业实施虚拟化的信心。
实际上,尽管虚拟化技术现在很热,但由于市场的普及才刚刚开始,真正实施虚拟化的企业数量有限。网友aniskywalker认为,企业用户目前很难有相关的专业人才,来支持本公司的虚拟化数据中心的运维。技术层面上,各大虚拟化厂家很难为用户做非常细致完备的虚拟化数据中心整体解决方案,现在谈的比较多的还是概念上较多。此外,虚拟化实施相对容易,但是调优排错的难度不小,厂家也没有很多相应的成功案例。网友rickyfang更是直言不讳,他尤其强调目前针对虚拟化的专门的培训机构很少或没有,专业的指导书籍尤其是中文书籍或参考资料几乎找不到。
但是,虚拟化的好处又是实实在在的,企业的数据中心到了一定规模后势必对虚拟化有所需求。网友mark_l_zhang表示,虚拟技术是个新兴技术,大家都是在摸着石头过河,服务人员太少这也是企业需要考虑的一个很重要的问题。因此一旦碰到问题,及时到位的技术服务也是CTO需要考虑的很重要的一点。
所以,笔者认为,要在企业里正确实施虚拟化,让企业IT运营价值最大化,不光是虚拟化厂商一方面的责任,也不能光靠企业用户一方的行动,而是需要厂商、用户、第三方培训机构、媒体等等多方面共同努力的结果。需要营造一个完整的虚拟化生态链,在这个虚拟化的生态链里面,才能加快虚拟化推动IT的进程。
实施虚拟化存在成本的不确定性
在以往,一提到虚拟化,让人首先想到的便是省钱,而虚拟化厂商更是把降低企业IT成本作为其虚拟化的重要价值所在,那缘何还会有人提出虚拟并不省钱这样的担心呢?
拿服务器虚拟化来说,如果仔细研究一下部署整个虚拟化都需要哪些"部件"的话,众网友虚拟化不省钱的顾虑就不难理解了。除了需要支持虚拟化的最基础的服务器硬件设备以外,操作系统、虚拟化软件、虚拟化管理工具等软件授权等都是一笔可观的费用。这对于中小企业来说,确实是一个不小的成本。(关于服务器虚拟化实际成本分析,IT168服务器频道后续会有专文阐述-编者注)
此外,一旦实施虚拟化,企业便不得不面临另外一个问题,那就是存储设备一般都需要重新添加,以便适合新的虚拟化架构,这样无形中也会增加虚拟化的部署成本。
同时,网友zxw55表示,由于企业熟悉虚拟化方面的人员缺乏,而虚拟化厂商的服务又偏贵,一旦系统出现问题,对于资金有限的中小企业来说,更是一个考验。
对于这个现象,业内人士表示,实际上,对于中小企业拥有服务器数量较少、机房规模不大的情况,过早的实施虚拟化,确实会出现上述网友担心的成本过高的问题。一旦数据中心规模过大、服务器数量越来越来,此时虚拟化的优势就显现出来了。因此,企业实施虚拟化,一方面不要操之过急、另外一方面也不可完全将之拒之门外,采取循序渐进的策略才是最保险、最省钱的途径。
网友mark_l_zhang则从一个专业人士的角度,给我们分享了虚拟化成本的含义,他说"那广告中所谓的节省是指什么呢?可以参考一下VMware的CTO计算器的计算方式,除了服务器开销,还有软件产品的开销,还有管理人员的开销。使用了虚拟化以后,软件产品的开销会省,管理成本会省,这是在一个长期的过程中可见的,但是前期你的投资并不小"。
虚拟化性能和可靠性有待考验
网友ccfxny提到,"在虚拟化的机器上跑sql等数据库的效率不是很好,在实体机上跑都有点卡,别说虚拟化还得加上网络传输的负荷"。其实,持此观点的不止ccfxny一人,网友rickyfang、flb_2001等也都表示出了相同的看法。
网友的担心,是告诉我们一个事实:任何东西都有自己擅长和不适合的一面,虚拟化也并非功能较多。企业在实施虚拟化之前,必须评估自身应用的负载量,从而决定哪些应用适合采用虚拟化。某专业人士分享了他对于虚拟化的经验,即如果单一应用得耗费绝大多数的硬件资源时,那么这个应用就不适合采用虚拟化。换句话说,虚拟化可能更适用于占用系统资源少的、分散型的应用。为了确保稳定性,虚拟化后的实体服务器负载量控制在60%~80%之间则比较理想。
看菜吃饭、量体裁衣,虚拟化实施也不例外。网友rickyfang分享了他的经验:"关键看应用是什么,才能选择适合自己的虚拟化基础架构。比如说用于公司网站架构。那就可以虚拟化来实现WEB的负载均衡,而后端数据库等则跑在物理服务器上"。
网友云杉上的蝴蝶则从纯技术的角度解读了他对虚拟化的某些疑惑,他举例来说,比如宿主系统的磁盘已经使用某种Raid技术的情况下,比如Windows server下Raid 5 或Solaris的zfs Raidz,如何确保虚机不发生磁盘故障,对虚机的磁盘实施RAID 技术是否是画蛇添足?
后记
尽管众多的企业用户对虚拟化还是持谨慎态度,有着这样或那样的不满,但是,我们也欣喜的看到,已经有越来越多的企业正在有条不紊的进行虚拟化了。比如,在此话题讨论中,我们的网友rickyfang就表示,他们公司在前期实施了服务器整合的基础上,目前正在做VDI的相关部署,相信不久,他们就可以自由享受桌面虚拟带来的快乐体验了。
本话题链接:http://www.ixpub.net/viewthread.php?tid=898114&extra=&page=1
网友精彩发言汇总:
rickyfang :从各厂商所宣传的虚拟化功能来说,的确是很诱人。但实际中,对性能的考虑(如SQL等此类的应用),以及市场上一直以来并没有较多的完善的成熟的虚拟化解决方案。这些都会影响到企业实施虚拟化的。同时,此方面人才的不足,也应是一个原因。而且还要面对一个现实,就是针对虚拟化基础架构管理的工具较少,尤其是关键业务性能管理工具,而且培训及人才的缺失,也会导致虚拟化的应用并不像所说的那么好。
关键看应用是什么。才能选择适合自己的虚拟化基础架构。比如说用于公司网站架构。那就可以虚拟化来实现WEB的负载均衡,而后端数据库等则跑在物理服务器上。个人以为,现在的虚拟化解决方案在解决高负载及高性能要求上还有所不足。
云杉上的蝴蝶 :上次在老厂通过虚拟化整合服务器,主要遇到3个问题。
1、是网络的效率,VMware挑物理网卡,Server 2008 系统下虚机网络通讯速率很慢!后来改成Solaris 平台,在VirtualBox里跑就正常了!
2、是虚拟软件的稳定性,VirtualBox虚机非正常关机的情况下会导致下一次虚机无法启动,必须重起宿主系统。所以在Solaris上跑VirtualBox强烈建议放到solaris 的 zone软件分区里。
3、虚机存储稳定性和可靠性的顾虑。
当宿主系统的磁盘已经使用某种Raid技术的情况下,比如Windows server下Raid 5 或Solaris的zfs Raidz,如何确保虚机不发生磁盘故障,对虚机的磁盘实施RAID 技术是否是画蛇添足?
在Windows Server宿主系统下,我采用把磁盘转换成动态磁盘,对系统分区实施Mirror,将每个物理磁盘的剩余空间划分为单独的逻辑卷,用于存放虚拟磁盘文件。
对于每台虚机至少使用两个虚拟磁盘设备,多个虚拟磁盘文件放至于不同的物理磁盘逻辑卷上,然后在虚机系统上实施软件RAID 技术,即在寄生系统内通过对分布于不同物理硬盘上的虚拟磁盘(文件)实施软件raid技术,变相得对物理磁盘上的数据进行RAID,保证寄生系统不因为单个物理磁盘的故障而当机。
在Solaris宿主系统上,我使用了3块磁盘,系统分区划分30%的单盘容量做成3块盘mirror的ZFS Root pool,剩下的空间划分为一个ZFS RAIDZ prool (即RAIDz1,单基偶校验),虚拟机的系统和数据区使用单独的虚拟磁盘文件,寄生系统上不采用任何软件raid技术。
总之个人认为在单单机上实施基于OS的服务器主机虚拟化技术,如果采用Winows作为宿主系统的话,至少使用3块物理磁盘才能即保证磁盘存储的可靠性,并通过raid技术增强寄生系统的磁盘性能;如果采用Solaris X86 作为宿主系统的话,至少使用5块盘才能保证系统存储的稳定性并充分利用ZFS的磁盘缓存特性提高磁盘性能。(2块盘做ZFS root pool 安装系统,3块盘做RAIDZ pool 存放业务数据和虚拟磁盘文件)
ccfxny :第一:在虛擬化的机器上跑sql等数据库的效率不是很好,在实体机上跑都有点卡,别说虚拟化还得加上网络传输的负荷。
第二:存储虚拟化的必要性,服务器本身已经做了raid,已经是一个虚拟化的文件系统,再从虚拟机上虚拟化出文件系统,可靠性待考证。
第三:人员配备的问题,新的技术面临新的技术故障和技术人员的学习,目前还没有正式的专业虚拟化考证以及培训,此类人才难寻。
第四:虚拟化需要机器硬件的配合,要支持该功能的硬件,等于在现有基础上购置新硬件,对于企业的成本是一个考虑,不然就只能在目前现有的机器上部署普通虚拟机,但也仅限于对负荷不高的服务器来进行整合。
zxw55 :我目前也正在为一些政府部门规划项目,正在考虑到使用VMWARE虚拟系统,来整合项目单位的服务器系统,我个人感觉现在国内对虚拟化的顾虑是市场还没有普及.做为网络或机房管理员都有些顾虑,出了问题找谁,原服务又是超贵。
rickyfang :个人觉得,现在大家讨论起虚拟化,尤其是微软的虚拟化就是指的HYPERV,这是一个误区。虚拟化基础架构,应当是一个很广泛的。像较早应用2K8 TS(终端服务)的天狮集团,而TS也算是企业虚拟化的一种应用:展示层虚拟化。另外的VDI解决方法同样也是如此。现在,MDOP微软桌面优化套装,也是在虚拟化方面也就是应用程序虚拟化方面的应用。
ll0818 :人才问题和安全问题,尤其是中小型企业。
mark_l_zhang :企业级的IT其实真正需要考虑的问题有很多,归纳起来无非是以下几点:
1 可用性,保证你所提供的服务必须是可以使用的
2 可靠性,保证你的服务是可靠的,不会丢失的,换句话说就是安全的。
3 可扩展性,保证随着人员的增加,必须可以扩充。
再说说虚拟化。微软的解决方案我觉得分析的是比较透的,是将应用和操作系统,硬件层分开,就和以前的网络一样,现在有了7层的标准,只要按照7层标准就可以分析,进行开发,好处在于扩大了产业链,也易于发现问题。现在虚拟化也一样,将这些都分开,产业链可以扩大,分析解决问题也好办。如果一个系统中什么都有,不能排除互相之间有干扰。对于一个应用软件来说,测试也只是会在一个干净的系统中测试的,不会考虑到应用之间的互相干扰。这应该说是一个进步。
另外,虚拟化可以节省服务器的开支,降低管理成本,意味着绿色。因为很多的旧服务器其实平时并不全速工作,既浪费电力,浪费空间,又浪费了服务器的资源。现在如果虚拟化,将这些机器移入虚拟机,就可以有效节省开支。
说了这些问题,似乎虚拟技术不错啊,应该都来使用啊。其实不然,这里需要讨论的是企业应用虚拟化的顾虑。
1 我要说的是成本,不要以为节省成本就可以省钱,这是一个误解。前文有人提到要用旧服务器来做虚拟化,那就更大错特错了。虚拟化技术是一个新技术,其前提就是建立在高性能的服务器上,对CPU,MEM,存储的要求都很高,如果没有这些前提,你的企业级应用是不可能实施的,小打小闹可以。那广告中所谓的节省是指什么呢?可以参考一下VMware的CTO计算器的计算方式,除了服务器开销,还有软件产品的开销,还有管理人员的开销。使用了虚拟化以后,软件产品的开销会省,管理成本会省,这是在一个长期的过程中可见的,但是前期你的投资并不小。要说服企业领导一次性投资下这么一大笔钱并不是一件容易的事情。
2 可用性。我觉得这是虚拟技术一个非常好的应用环境。有了虚拟技术可以大大提高系统的可用性。可以非常容易建立起Cluster,对于某些系统来说,建立备份机并不是一件很容易的事情,但是使用了虚拟技术,你就可以和复制一个文件一样复制你的系统,一旦系统发生故障,立即可以恢复,及时生效,提高了可用性。
3 可靠性。应用虚拟化技术对系统的可靠性提出了更高的要求,尤其是对存储。所有保存的东西必须要快速可靠的保存,而且需要共享。这其实最好的解决办法就是集中存储。虽然虚拟化技术省了服务器,但是虚拟Host主机在近似全负荷的工作,产生故障的频率也会增加,因此系统安全可靠也是企业必须顾及的一个很深层次的方面。
4 可扩展性。说到这个,不能不说这又是虚拟技术的一个强项了。人员增加了,复制一个文件过去,开启虚拟机就行了。很简单的操作。
5 兼容性。其实这是虚拟技术一个缺点也是一个优势所在。虚拟技术挑硬件,其实所有的系统都是挑硬件的,都会有一个兼容性列表,并不是所有的硬件都可以使用的。虚拟机就更挑剔了。虚拟技术发展的历史还不长,我觉得根本没有能力去做这么多的五花八门的硬件的测试,他的思路仅仅是把所有的硬件局限在一个可以承受的范围内。另外软件和应用也是五花八门,虚拟技术不可能都去测试。所以并不能保证企业级的应用都能正常工作。需要做大量的兼容性测试工作。
6 迁移。作为企业级的应用,迁移是个很重要的一环。一个正常工作的系统需要移植到虚拟系统中去,这个迁移工作是个很系统的工作,很需要有点技术水平的。
7 服务。虚拟技术是个新兴技术,大家都是在摸着石头过河,服务人员太少这也是企业需要考虑的一个很重要的问题。一旦碰到问题,及时到位的技术服务也是CTO需要考虑的很重要的一点。
mikessb :成本也是一个方面,小的应用环境下虚拟化软件的成本有可能比买PC服务器的费用还高;负载重的应用环境基本上就考虑小机了。
lgf5818 :1、是有的人对这个了解不够。2、成本。3、维护
flb_2001 :顾虑方面,总的还是技术的成熟度的怀疑,包括应用程序的兼容,硬件的兼容,数据存储方式,针对一台服务器托很多应用的话是否存在访问的瓶颈以及其他瓶颈,是否具有很好的服务,以及技术支持,技术文档不是很多,导致好的技术人员少;还有就是现有设备闲置导致的浪费等。
fawit :楼主说的不错。我从2004年开始关注此项技术,但是一直都是讨论和研究中。我认为实施虚拟化还是有条件的。1. 小规模的机房或者数据中心没有实质的意义。2.在大规模的机房实施才有意义,既可以减少人力成本,也可以减少能耗成本。
pony520 :当务之急是给企业的信息管理人员补补课,对于虚拟化那么好的应用,很多企业根本不了解,在不了解的前提下,是不会有人会去用的!
aniskywalker :我觉得可以从这几方面来看:
1,虚拟化价格过高,价格不透明,虚拟化技术龙头老大VMware,价格不菲,现在PC Server价格便宜而且透明,节能技术趋于成熟,刀片系统的推出,使得虚拟化带来的节能和其他方面的优势不再那么明显。
2,技术上面的顾虑,首先VMware和其他各大虚拟化厂家很难为用户做非常细致完备的虚拟化数据中心整体解决方案,现在谈的比较多的还是概念上较多。
3,人才储备,用户很难有相关的专业人才,来支持本公司的虚拟化数据中心的运维。
4,虚拟化实施相对容易,但是调优排错的难度不小,厂家也没有很多相应的成功案例。
综合以上几点,我个人觉得用户对虚拟化技术还仅仅是观望或者只是进入初步测试,要大规模进入虚拟化,还需要很长一段时间。
一家之言,看客看看就行,有错误不当之处,请手下留情,有错误请指出。
经验不敢说,我了解到的一些用户都是在虚机上跑一些简单不重要的应用,主要生产系统,数据库,财务等等重要的应用现在还都很少迁移到虚机上的。
zhang1980s :2年前本人曾经工作在一个多操作系统的混合环境中,发表点个人的看法:
我认为虚拟化的优点主要有下面几个方面:(老生长谈,请大家别扔板砖)
1. 资源整合。 机房里面绝大多数服务器在绝大多数时间里负载都是很低的,但是出于应用隔离的需要,很多应用都必须分别部署在不同的服务器上,特别是还有一些关键应用还部署了HA,这样导致更多机器处于长期"睡眠"状态~,而机房长期处于爆满的状态~ 我离开那个公司后,听说他们最近把很多应用都P2V到Vmware ESX上了。
2. 硬件提取。 可以非常容易地在新硬件上部署较低版本的操作系统和应用。例如,我的上家公司是个n老的一个工业企业,某次从国外转移来了一些奔腾MMX166+NT4的机器上跑一些和生产相关的应用,那些机器我碰都不敢碰,要是硬件出点什么问题真不知怎么办好~ 还有那些应用只能跑在NT上,WIN2K不确定能不能跑,硬件真坏了重装都找不到兼容的机器。有了虚拟化,虚拟机跑在软件上,就和底层硬件平台彻底隔离开了,避免了这些问题。以后升级硬件也无须考虑应用的操作系统是否支持了。
3. 应用程序隔离。 将应用与操作系统、性能和配置参数、安全环境等同时封装到一个单一的实体中。这种封装功能有助于严格控制和管理各种应用,从而使其免受 IT环境中其它变化的影响。 这个不解释了,有应用管理经验的兄弟都明白这个的重要性。传统情况下通常要避免一个应用当机而导致多个应用受牵连的情况,但是还要考虑机房空间和硬件成本等附加的问题,因此在部署应用的时候要考虑服务器数量和应用隔离之间的平衡。有了虚拟化,基本不用考虑机房空间问题了,只要虚拟系统资源还够,就没问题。
关于隔离还要插一句,这里操作系统厂商虚拟化会有很大优势,通常操作系统厂商例如MS,Red Hat 在发布虚拟化解决方案的时候,都会包含有限或者无限GuestOS免许可并提供商业支持的选项,因此更适合这种应用隔离的环境。如果使用独立的虚拟化软件,隔离多了,相应操作系统成本也会增加。
4. 资源管理及高可用性。虚拟的操作系统可以任意在系统间移动,这样可是实现将工作负载分配给最合适的系统,并且可以实现在系统维护期间业务的连续运行。一个统一的虚拟服务器环境使容灾配置的部署变得更加简单、可行和可靠。 具体不解释了~
rickyfang :我们公司应当是实施虚拟化较早的企业了。目前公司实施虚拟化的第二个部分就是VDI(VMWARE VIEW),在前一部分实施VI3的前提下部署的。你所说的问题的确是突出的现象。
从我公司所引申的问题就是:
1、没有专业的虚拟化人才可用。
2、没有太多成功经验何供借签。
3、现在的咱们所说的虚拟化多集中在服务器整合上。而没有过多去考虑虚拟化在其他方面的应用如展示层、应用程序、桌面等。
4、虚拟化解决方案的提供者,集成公司很多人的水平也并不怎么样。
5、专门的培训机构较少或没有。专业的指导书籍尤其是中文书籍或参考资料较少。
6、厂商宣传概念及功能时较多及扩展,在方案及实施上提供的支持和宣传有限。
ITXTI :我们在生产环境没有使用虚拟化技术但是在测试中大量的使用了虚拟化技术,特别是对集群的测试、对不同操作系统下程序运行的测试、以及具有破坏性的测试内容。使用的也很成功,主要是安全、方便,做一个基本版本,可以反反复复死使用,还可以随便搞,搞坏了再复制一个来就行。再者,实体机放在机房,启停都很麻烦,更别说重做系统了,打申请不说,还不是自己做,使用虚拟机后随便折腾。
话题入口:http://www.ixpub.net/viewthread.php?tid=898114&extra=&page=1