• 1
服务器虚拟化之始末

虚拟服务器也需要虚拟化平台,这就增加了服务器虚拟化软件成本。有太多产品可供选择,包括CitrixXenServer5.5、VMwarevSphere4与MicrosoftWindowsServer2008R2withHyper-V。除了服务器虚拟化软件成本,还有帮助管理架构的相关工具的成本。有厂商集中产品,如CitrixWorkflowStudio与VMwarevCenterServer,以及第三方管理产品,如AppSenseManagementCenter和来自厂商Kaseya的产品。

还可能需要其他软件获取诸如高可用性、集群、故障恢复、虚拟服务器迁移或备份。这些需求根据组织所需而变化。不管所选的实际产品是什么,服务器虚拟化软件成本应该包括初始购买与许可价格,以及每年维护费用。谨慎的管理对于防止虚拟机许可成本螺旋上升很重要。

“如果管理得不好,虚拟机许可可能增加,”Zuk说,“另一方面,管理员成本应该降低。”

JonWilliamToigo:首先就是谨慎。托管服务商通常把它们的服务器虚拟化工作描述的十分完美,一旦你开始追求这些目标,你可能都意识不到这会对你的存储基础设施有什么影响。

人们通常会认为,“要虚拟化所有的服务器,我只要找到合适的服务器设备,然后安装上正确的主机总线适配器(HBA)和网络接口卡(NIC),按照正确的操作过程和正确的内存数量,然后我们就可以把它交给现有的基础架构,它会自行和后端存储配合。”

很遗憾,并不是你想的那样,因为当虚拟化服务器时,你从之前建立的工作负载上改变了存储架构在整个IT网络中的输入/输出(I/O)模式。

服务器虚拟化本质上就像积木。你想把所有的应用程序都堆积到一起,而又不希望因为抽调其中一个就使它倒塌。所以在这个过程中你需要将多个服务器整合到越来越小的平台上。

为了适应工作负载的需求,你需要给服务器套件添加额外的HBA和NIC以获取足够的带宽。

通过服务器虚拟化软件的使用,将繁多的工作量整合到很少的物理服务器上可能改变数据中心网络的动态流量流。在没有服务器虚拟化的情况下,数据中心网络管理员会在物理服务器上使用较低廉的、固定配置的交换机。这些“机架交换机”为核心网络提供几个上行链路。

由于大多数连接到机架交换机的服务器都在很大程度上没有充分使用网络链路,因此这些安排能够将所有的流量只聚集到核心网络的几个上行链路上,同时保持超额使用率限制在通常可以接受的范围内。流量聚合也可以在机架交换机本身发生。

然而,通过服务器虚拟化,流量聚合可以发生在物理服务器层面上。目前,多种工作量在相同的物理服务器上运行,并共享同一条网络连接。

通过使用服务器虚拟化实现工作量聚合,现在物理服务器的网络连接使用率得到大大地提高。使用机架交换机连接到核心网络来聚合已经聚合过的流量可能导致网络性能和吞吐量的瓶颈和干扰。

对于这个潜在问题的最简单的解决方法是增加机架到核心网络的上行链路数量。这个方法的确有助于处理“双重聚合”问题,但是它也同时增加了数据中心所要求的核心交换机端口的数目。数据中心网络管理员必须认真研究,以免超出核心交换机网络端口容量。

不要依赖本地

其他方面的压力也正在促使数据中心网络管理员向核心网络中添加上行链路。因此,管理员和网络设计师想利用本地资源。通信或连接频繁的服务器通常连接到相同的交换机上,这样可以避免流量通过核心网络、最小化冗余和最大化吞吐量。一个固定类型的非虚拟化数据中心就可能实现这一点。

然而,通过服务器虚拟化,工作量的位置会根据服务器的使用而动态改变。诸如热迁移的技术允许服务器管理员在不同的物理服务器上简单、快速地迁移工作量。有些虚拟化解决方案甚至能够自动化该过程;VMware的DistributedResourceScheduling(DRS)就是一个这样的例子。

另外一方面,服务器虚拟化主机通常每台主机都使用6、8、10或者更多网络连接。虽然工作量整合将删除某些物理服务器,但是数据中心网络管理员可能发现在固定配置的交换机上的现存的容量不够处理一个相当大的服务器虚拟化解决方案。

由于各种不同的原因,服务器虚拟化上空闲的网络端口可能不适合重用于服务器虚拟化方案。正如上面所探讨的,添加上行链路的压力只是加剧了潜在容量问题。

这些容量关注并不仅是关于端口数而已。正如前面所探讨的,有些服务器虚拟化解决方案能够利用802.3ad/LACP连接聚合。然而,服务器虚拟化解决方案也需要冗余;一个独立网络端口的丢失现在可以影响通过多个部门或业务单位的大量工作量。连接丢失对服务器虚拟化主机上的影响可以远远超过对非虚拟化服务器网络连接丢失的影响程度。

虚拟化的定义有很多,可归纳总结为逻辑技术,以集成抽象方式访问(调用计算机资源,基于物理机制,但不受物理限制。虚拟化对任何硬件资源都可虚拟,例如,中央处理器(CPU)、内存、硬盘和输入,输出(I/O)接口;也可以对软件环境进行虚拟,例如,操作系统(文件系统和应用程序等。虚拟技术的这种内涵决定了它在云计算中的核心支撑地位,对于云,首先是虚拟资源池,无池就无集成。

服务器虚拟化是对硬件的抽象和对虚拟的管理

服务器虚拟:一是对3种基础硬件资源CPU、内存、设备与I/0进行虚拟化;二是依靠虚拟机实时迁移这种辅助技术,对资源虚拟城池进行统一调度和使用。

内存虚拟化技术就是把物理机的内存进行统一管理,虚拟封装成虚拟机所使用的虚拟内存,以提供给每个虚拟机进行使用,将虚拟内存空间独立提供给虚拟机中的进程。内存技术与CPU技术重要性同等重要,访问次数同等频繁。

虚拟内存实现就在于对物理内存进行管理,按虚拟层对内存的需求划分物理内存,建立虚拟层所需内存地址与物理机内存地址的映射关系,保证虚拟层的内存访问在虚拟内存和物理机内存的连续和一致。映射关系的技术实现是内存虚拟化的核心。

早期内存管理技术,是通过基于硬件的内存扩展和优化程序的软件方法实现的,成本高昂。虚拟内存技术因此诞生,通过CPU的内存管理单元和页表转换技术,提升了内存性能,维护了基于应用程序所能看到的虚拟内存和物理内存的映射关系。

虚拟内存管理引入了虚拟物理内存和机器内存的概念,以此建立虚拟内存地址与物理机内存地址的映射关系。

虚拟层中的进程使用的逻辑内存与虚拟物理内存建立一级映射地址关系,虚拟物理内存与物理机的机器内存建立二级映射地址关系。

实时迁移技术类似基站软切换的机理,对应客户操作系统同时建立2条链路连接,在虚拟机运行过程中,将完整运行环境的状态由原宿机快速迁移至新宿机,迁移过程平缓,用户在极短时间内不能察觉。在虚拟环境中,由于对物理机进行了虚拟,所以能跨异构的硬件平台。

实时迁移技术,就是数据拷贝、传送和切换。迁移的虚拟机通过协议相互联系,首先启动原宿机操作系统相关信息和状态的拷贝,然后开始迁移,通过内存页面将拷贝移至新的宿机,最后内存传送拷贝完成,新宿机启动接管原宿机操作系统,整个迁移过程完成。

在服务器虚拟化的应用中,我们还更关心虚拟服务器的性能。用户的使用特征会导致虚拟化服务器性能呈现不同的状态。不同部件的资源使用密集,例如CPU密集、内存密集和I/O密集,都会对虚拟服务器整体性能有所影响,密集资源使用会导致虚拟平台软件运行机制开销的庞大运行。

专业技术人员总是需要检测编码跟当前的编写方法是否兼容。然而组合编码已经跟之前的大不相同,所以用传统的测试方法根本就无法在恰当的时间以恰当的价格完成测试任务。生产服务作为一种独立的模组与软件应用程序合并正成为一个快速发展的商业市场。第三方服务例如PayPal或者信用调查服务越来越多地被用于使用应用程序的客户身上。

服务虚拟化对软件开发者最大的影响之一就是能够让应用程序研发过程中的有效兼容更加容易。软件开发人员能够跳过组件检测,并且能够解决一些阻碍研发过程的问题,以确保研发及时、高效并节省成本。

提到虚拟化,很多用户都会想到VMware。然而,VMware已不再是X86虚拟化市场顶部唯一的供应商了。由一家厂商统治虚拟化市场的时代已经终结,SPECvirt的数据显示,性能和扩展性的优势已经不再是由一家企业独霸天下了。多数企业用户会持续使用的基本功能,目前市场上的大部分产品都能够实现。ArsTechnica网站上刊出的一篇文章评论到,当前的虚拟化市场当中,VMware是老大,微软Hyper-V老二,思杰Xen第三,红帽和甲骨文在争夺第四把交椅。

来源:51CTO.COM