服务器虚拟化的管理技巧讲解

IT管理员需要当心他们的服务器整合计划,尤其是涉及到将资源密集型应用移动到虚拟域时。

毋庸置疑虚拟化是当今最热的IT技术领域之一,这一点无论是从众多IT技术厂商不断推出的虚拟化产品在市场中一浪高过一浪的宣传攻势,还是从企业用户开始大规模地使用虚拟化的解决方案都可以看出这一点。那么到底什么是虚拟化呢?

虚拟化的应用解决了企业因为海量存储带来的巨大压力,为企业在设备部署上节约了大部分的成本。当服务器与虚拟化相结合时更显现了虚拟化带来的好处。服务器虚拟化节约了电能和硬件开支,但同时带来了管理问题,越来越多的软件可以帮助解决这一问题。

服务器整合有大量好处,但整合过度成为常见的陷阱,将资源密集型应用放在虚拟机上可能导致资源冲突。

其实这个问题可以从两个方面来理解,首先如果从狭义的角度来说,虚拟化通常就是指对某种虚拟机技术的应用例如:Hyper-V、VMware
ESX等),通过这种技术我们可以将多个操作系统运行于同一台物理计算机之上,从而能够有效地节省在硬件投入方面的开销,整合应用并且降低管理方面的成本。但如果是从广义的角度来理解什么是虚拟化,我们可以认为所谓的虚拟化就是指对计算资源进行有效隔离的技术手段。

在数据中心开展虚拟化的益处是:由于虚拟机器比标准硬件的配置速度快,可以将数百个虚拟机放在十几台物理服务器上运行,
在提高效率的同时节约了电能和硬件支出。但是,由于有的公司虚拟化规模过大,开展速度过快,管理问题便很快凸现。最大的问题是:用户不清楚某一应用软件与其他应用软件之间会不会发生硬件和存储资源的冲突。而这将影响企业的IT的能力,同时影响服务水平。

在服务器整合期间,旧的应用最容易发生问题,尤其是那些定制的应用或者依赖某个硬件的应用。因为虚拟化使得应用与底层硬件之间多了一层,需要访问某些硬件的应用可能发生故障或者出现性能降低的问题。

所以它不仅限于虚拟机产品,所有能够实现这一特性的技术都可以划归在虚拟化的范畴之内。这点可能不是非常好理解,但是可以通过一个简要的例子来说明:一位用户使用一个应用程序来完成自己的工作,其实在这个我们非常熟悉的场景中包括很多个层次,首先用户使用的这个应用程序是安装在特定的操作系统之上,操作系统是安装在特定的硬件平台之上,用户的数据是存放在计算机本地的特定磁盘中,计算机的网络是连接到本地的特定物理交换机上……所有的这些层次都是紧紧关联在一起的,你无法轻易地将其中的一个层次和其他层次分离,例如将这个应用程序复制到另外一台安装了不同操作系统的计算机上它还可以完全和之前一样的运行并访问原来的数据。这种现象就如图1所示的静态计算模型,所有的层次都紧密关联在一起。

为了缓解这一问题,专家建议用户使用平衡工作量和应用软件服务水平管理的工具,如Akorri公司新推出的BalancePoint。BalancePoint可以显示出某一特定的虚拟机什么时间以及为什么性能没达到标准;基于这一数据,用户可以将工作量进行再次分配以提高效率。这一工具可从VMware和存储区域网络(SAN)的角度进行绩效分析,从而避免了虚拟机因为资源分配不平衡而出现问题。

一种解决方案是使用新的程序语言与技术创建一个不依赖硬件的版本来更新应用。然而,这样的升级昂贵且耗费时间。同样地,可以用商业产品替换定制应用,你可以再去定义以完成相同任务。但是定制商业应用花费的时间和精力可能有时比升级现有应用更多。

图片 1 

IDC的分析师Elliot说,几乎所有开展服务器虚拟化的公司都将遇到管理问题,其中就包括工作量平衡以及“虚拟机扩张”和灾难恢复计划的问题。VMware的工具以及越来越多的第三方供应商提供的产品可帮助解决这一问题。

当服务器整合没有意义

如果我们能够将这些资源层次之间的紧密连接进行有效分离,就像图1的右侧,使得对某个层次的变动甚至是替换都不会影响到其他的层次,那么我们就可以将这种技术看作是一种虚拟化技术。最常见的虚拟化技术——虚拟机就是将操作系统和硬件之间的紧密绑定进行了分离,这使得我们能将一台虚拟机从一台物理机复制到另一台物理机而不用做任何修改就可以像以前一样运行。当然从这个角度来看,远程桌面或者终端服务也是一种虚拟化技术——展现虚拟化,因为它实现了应用程序的展现与应用程序、操作系统以及硬件设备之间的分离,无论在什么地理位置只要能够通过终端服务的客户端,就可以像在那台服务器本地一样访问上面运行的应用程序。所以从广义上来讲,虚拟化并不是仅局限于虚拟机技术,它可以在很多个层面上实现,与此同时众多的虚拟化厂商也在各个层面上都推出了相应的虚拟化技术与产品,例如微软公司的虚拟化战略中就包括了从服务器虚拟化、展示虚拟化、存储虚拟化、应用程序虚拟化等众多的产品与技术。

保持企业工作量平衡

要是不将定制应用纳入服务器整合计划中,那么常见最简单的方法就是在非虚拟的物理服务器上运行这些应用。只是因为一个应用不能作为虚拟机存在,这不意味着它不能进行整合。

虚拟化之所以成为当前企业IT应用的一个热点,其主要原因正是虚拟化能够将资源进行有效隔离,从而可以更充分地利用有限的计算机资源,降低在成本和管理上的投入,同时对于计算资源的隔离也打破了这些资源间原有的紧密绑定,使得企业的IT系统能够更加灵活,具备了“按需而变”的动态特性。

工作量平衡是一个很复杂的问题。虚拟化的一个主要好处是可以轻松地将应用从一台服务器转移到另一台服务器上。问题在于,很难知道某一特定服务器上虚拟机已经过多。我们只能通过应用软件的运行情况以及其他因素,如内存和附加存储器情况才能看出。如果在虚拟环境中,几个关键应用软件争夺同一服务器资源,我们很难分辨出发生冲突的应用软件,而这会影响公司的运转。

诸如SQL Server或Exchange
Server这样高要求的应用,可以将其作为虚拟机运行,但是,如果它们要去与同台物理机上的10台甚至更多虚拟机去竞争计算资源,这会使得性能急剧下降。高要求或资源密集型应用最好进行低比率的服务器整合。

在Windows Server 2008
R2中有很多方面都提供了对虚拟化的支持,其中包括了展示虚拟化通过终端服务角色实现)、网络虚拟化通过VPN组件实现)和服务器虚拟化通过Hyper-V角色实现),而Hyper-V则是其中全新提供并具有广泛应用前景的一个组件,因为在同一个物理设备上运行多个操作系统的需求仍然是目前企业虚拟化应用中最主要的形式。Hyper-V被微软称为服务器虚拟化平台,很显然它的主要目标就是实现服务器操作系统的虚拟化。Hyper-V服务器虚拟化的典型应用场景主要有以下几个:

要解决这一问题需要多种管理工具。美国一家叫Monster的公司采用BalancePoint工具来增强其VMware两个主要管理产品的能力,这两个产品是:VMotion(这一工具通过将虚拟机从低性能和停机的服务器上转移出去而提高了硬件利用率)以及Distributed
Resource
Scheduler(这一工具与VMotion共同使用,基于预先设定的规则,可以将资源分配到高优先级的虚拟机器上)。