科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航



ZDNet>服务器频道>ZD评测>了解服务器虚拟化

了解服务器虚拟化

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

本文介绍了服务器虚拟,包括什么是虚拟技术,为什么要使用虚拟技术以及应该在什么时候使用这种技术,还介绍了如何将物理服务器切换成虚拟服务器等知识。

来源: 2006年06月28日

关键字:服务器虚拟化

本文介绍了服务器虚拟,包括什么是虚拟技术,为什么要使用虚拟技术以及应该在什么时候使用这种技术,还介绍了如何将物理服务器切换成虚拟服务器等知识。

什么是虚拟,为什么要使用这种技术
虚拟技术可以在同一台计算机上运行多个独立的虚拟操作系统。这种方法能够将物理资源效益最大化,并能够将硬件投资的收益最大化。摩尔定律精确地预测了计算能力的指数发 展规律,完成同样计算任务的硬件需求在很大程度上没有改变。现在,将价格并不昂贵的1U 双socket、双核服务器作为8个、甚至是16个虚拟服务器来使用是完全可行的,你可以 在这台服务器上运行16个虚拟操作系统。虚拟技术能够提高服务器使用强度。但是,它并不能真正地提高总体计算能力,相反,由于要进行管理,它还会轻微地降低总体计算能力 。但是因为现在一台售价为3,000美元的双socket、4核服务器比四年前售价为30,000美元的8 socket、8核服务器的计算能力还要强大,我们可以利用这些新的、功能非常强大的硬 件在单台服务器上建立更多的逻辑操作系统。这种做法大幅度地降低了硬件采购的费用和维护费用,因此这种技术能够帮助任何公司或组织大幅度地节省开支。

应该在什么时候使用这种技术
虚拟技术对于小规模或者中等规模的应用来说非常合适。虚拟技术不太适合性能要求高的应用,一般需要将多台服务器进行集群才能够达到这类应用的性能要求,因为管理工作和 复杂程度的增加会降低性能。我们实际上讨论的是12 GHz服务器(4个3 GHz内核),或者将16个750 MHz服务器组合在一起。但是如果8个这样的服务器在非使用高峰时期或者闲时 ,剩下的8台服务器仍能够提供1.5 GHz的计算能力。

虚拟行业中一些人喜欢标榜CPU使用率高,以此说明该技术优化了硬件使用效率,你不应该过分相信这种说法,尽管CPU使用率提高了,但是却降低了应用的响应时间。一个经验值 是CPU的使用率的峰值不应该超过50%,更重要的是,不要让应用响应时间超过规定的SLA(Service Level Agreement)。绝大部分的现代服务器在作为内部服务器的时候,CPU的使 用率为1%到5%。在同一台物理服务器上安装8个独立的操作系统将会让CPU的使用率峰值达到50%,但是实际的平均数值会小得多,因为每个虚拟操作系统的CPU占用率的波峰值和波 谷值多少会被其他的虚拟操作系统所抵消。

尽管在今天的虚拟解决方案中,对CPU的管理成本很低,但是对于网络和存储的I/O管理则是另外一回事。对于那些对存储或者硬件I/O需求非常大的服务器来说,即使物理服务器的 CPU能够满足虚拟环境的需要,将它直接运行在裸机上仍然是一种非常明智的做法。XenSource和 Virtual Iron(它很快会基于Xen Hypervisor)都承诺将I/O管理最小化,但目前 它们都还处于测试阶段,所以目前还没有一个主流的独立指标能够证实这一点。

如何避免“把所有的鸡蛋放在同一个篮子里”的风险
虚拟技术的一个重要问题是如何避免“把所有鸡蛋放在同一个篮子里”的风险。把所有重要的应用软件都安装在同一台服务器上是否明智?答案显然是否定的!避免这种风险最简 单的办法是不要将一种服务放在一台服务器上。让我们看看下面这些服务器类型:

  • HTTP
  • FTP
  • DNS
  • DHCP
  • RADIUS
  • LDAP
  • 使用光纤通道的文件服务或者iSCSI存储
  • 活动目录服务

    我们可以把上述每种服务器部署在至少两台物理服务器上,以此获得我们需要的完全冗余。这些类型的服务相对比较容易进行集群,因为当某台服务器出现故障的时候,它们可以 很方便地实现切换。当某个物理服务器出现故障或者需要维护的时候,在另一台物理服务器之上的另一个虚拟服务器将会自动接替它的工作。将这些服务部署在不同的物理服务器 上,这样就不会因为某台物理服务器出现故障而导致服务中断。

    对一些更复杂的服务,比如Exchange Server、微软SQL、MySQL或者Oracle,可以使用集群技术将分布在两台物理服务器上的两个逻辑服务器进行同步,这种做法在服务器切换的时 候通常会需要将服务中断一些时间,中断的时间大概是5分钟。这种中断并不是由于虚拟技术本身造成的,由于集群的复杂性,我们需要花一些时间进行切换。处理这些复杂服务的 另一种方法是将虚拟服务器从主物理服务器迁移到从物理服务器。为了实现这种方法,必须将主物理服务器的内存和另一台物理服务器进行实时同步,采用这种方法可以在几毫秒 之内完成系统切换,并且能够保持服务的可用性,不会带来任何中断。

  • 如何将物理服务器迁移到虚拟服务器
    任何一个主流的虚拟解决方案都会提供某种P2V(物理服务器到虚拟服务器)的迁移工具。P2V工具可以为现有的物理服务器提供一套虚拟的硬件驱动,并对驱动堆栈进行必要的调 整,然后该服务器重新启动后,就会作为一个虚拟服务器运行。这种做法的好处在于你不需要重新建立服务器,并手工地配置它——通过使用工具,你可以对它进行完整的迁移。

    所以如果你有一个数据中心,到处都是使用了多年的服务器,这些服务器软件都安装在低于1 GHz的物理服务器上,这种情况就非常适合使用P2V工具进行迁移。你甚至不需要担心 许可证费用,因为你已经支付过了这部分费用。你可以分布在128个低于1 GHz的旧服务器上的服务器软件部署在8个双socket、4核、双吉比特以太网的服务器上,并使用两个独立 的iSCSI磁盘阵列,并将所有的设备通过吉比特以太网交换器连接在一起。这些旧服务器硬件一年的维护费用就足够购买所有的新硬件了!想象一下,迁移实现了之后,你的机房会 变得多么干净整洁!所有的新设备可以放在一个机架上,因此机房里会多出很多空余的空间供你以后使用。

    虚拟的另一个优点是,你拥有了一个灾难恢复计划,因为虚拟镜像能够快速恢复你所有的服务器。问问你自己,如果你的旧服务器坏了会出现什么情况?你是否还记得重建并重新 配置所有的服务器?(我猜想你现在一定感到畏缩了。)使用虚拟技术,你能够使用P2V工具镜像恢复虚拟服务器。例如,你可以在一个小时之内恢复动态目录和Exchange Server 。

    虚拟服务器的补丁管理
    虚拟服务器的补丁管理和普通服务器并没有本质上的差别,因为每个虚拟操作系统都有自己独立的虚拟硬件驱动器。有趣的是,将来你可以同时给多个系统同时打补丁,只要这些 系统有相同的系统或应用程序的二进制代码。理想的情况下,你可以为一个或者一组相似的服务器建立一个补丁层。目前,你需要像对其他系统一样为虚拟操作系统打补丁,但是 虚拟技术会出现一些创新,会出现一些在物理服务器上不曾有过的方法。

    许可证和支持服务
    虚拟的一个大问题是软件许可证。没有人愿意为运行在同一台电脑上的16个虚拟进程购买16个独立的许可证。软件许可证费用经常会让硬件费用相形见绌,所以在虚拟环境中运行 一个价值20,000美元的软件可能是愚蠢的行为。在这种情况下,最好的做法是将软件安装在最快的物理服务器上,并且不使用任何虚拟层以免增加管理负担。

    对诸如Windows Server 2003标准版之类的软件来说,你需要为运行在同一台物理服务器上的每一个虚拟进程付费。但是Windows Server 2003企业版则是一个例外,该软件允许运 行在同一台物理服务器上的4个虚拟进程使用同一个许可证。任何类型的虚拟技术,只要使用的是Windows Server 2003 guest操作系统,都适用于微软的许可证策略。

    如果你使用的是开放源代码软件,你就不需要担心许可证的问题,因为它们总是免费的——你所需要关心的仅仅是支持服务协议。如果你正在考虑使用虚拟开放源代码操作系统或 者开放源代码软件,就应该将支持费用考虑在内。如果支持费用是根据你所运行的虚拟环境的数量计算的话,那么为了将软件投资所带来的回报最大化,你就应该将服务安装在专 用的服务器上。要记住,同软件许可证/支持费用相比,硬件的费用是微不足道的。这里的诀窍是找到硬件和许可证/支持费用的最佳比例。在计算硬件费用的时候,还要将硬件维 护费用、能源费用、空调费用和机架空间等因素考虑在内。

    你还需要考虑虚拟技术本身的许可证费用和支持费用。好消息是所有主流的虚拟厂商都提供一些免费的入门级解决方案。即使在一年以前,免费的虚拟方案都是不可想象的,因为 那个时候VMware是这个领域里唯一强大的厂商,但是现在VMware、微软、Xen Source和Virtual Iron都提供了免费的解决方案。

    (责任编辑:张竺

    查看本文的国际来源

    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅ZDNet技术邮件将是您的最佳途径之一。