吴慧婷
摘要:在实验室建设资金有限的情况下,打破传统将大型实验教学软件和资源装在若干个物理服务器上,仅在购置高性能服务器的基础上,引入服务器虚拟化技术,建立虚拟化实验教学平台。这样,高校计算机实验室可以充分利用现有的服务器资源,合理的分配硬件资源,节约投入成本和维护的经费。同时从多方面考虑安全性问题,最大程度降低服务器虚拟化后带来的诸多问题。
关键词:虚拟化实验平台;服务器虚拟化;Hypervisor;安全性
中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2015)28-0186-03
1 概述
随着云计算、大数据技术的发展,服务器虚拟化技术已经被越来越多的高校所采用,使用这种技术可以大大提高服务器的使用效率。虚拟化技术的关键在于如何提高资源的共享与资源的利用率,以及如何提高计算机实验室的服务和支撑能力。不过,虚拟化技术在为用户带来利益的同时,也对用户的数据安全以及基础架构的安全策略提出了新的要求,因此,服务器虚拟化的安全问题也需进一步探讨。
2 服务器虚拟化技术简介
世界各地的数据中心都正在研究虚拟化技术。而服务器虚拟化技术更是一项突破性技术,它可以帮助用户解决很多实际的问题并给用户带来许多利益。如通过硬件分享和服务器整合,在最大程度上提高资源的利用率;通过建立专门的虚拟服务器环境,屏蔽底层硬件在兼容性方面的问题。在高校计算机实验室里使用设备时不再感觉受限于CPU、内存、磁盘、I/O 等硬件的物理上限,让它们变成可以动态管理的“资源池”,从而提高资源的利用率,减少人员管理,实现投资最大化。虚拟化技术经过几十年的发展,从软、硬件各方面都可以看到服务器虚拟化技术的身影,在兼容性,资源利用率等方面有了很大突破。
服务器虚拟化就是在一台物理服务器上虚拟出多台虚拟服务器,每个虚拟服务器又称作虚拟机,每个虚拟机都有自己的CPU和内存等,同时虚拟机之间都是以独立的方式存在,互不干扰。例如,原来有50个应用,每个应用在1台物理服务器上,整个系统有50台物理服务器;在虚拟化之后,每个应用在1台“虚拟”服务器上,每个主机有多个虚拟机,这样即使虚拟化1台物理服务器也可以代替原来的50台物理服务器。根据需要,虚拟机上可以安装多种操作系统和应用程序。因此,对CPU、内存与I/O这三种基础硬件资源的虚拟就是实现服务器虚拟化的关键。
在虚拟化产品的架构中,虚拟机监控器(virtual machine monitor,VMM),又称为监管程序(Hypervisor),是虚拟化技术的核心。虚拟机监控程序软件添加到计算机系统上,就是对计算机系统进行虚拟化。在物理机上构建一个虚拟机系统,每个虚拟机(VM)运行自己的客户机操作系统(GuestOS)。服务器虚拟化有两种虚拟化模式:模式1是运行在某个操作系统(如运行在物理硬件之上的各种Windows)上的Hypervisor称为软件虚拟化(SoftV)。模式2是直接运行在物理硬件之上的Hypervisor称为硬件虚拟化层(HardV)。在第1种模式中,需要一个基础的主机操作系统,但是这个主机操作系统也是占用资源的,因此会影响运行在它之上的虚拟机的操作。在第2种模式中,Hypervisor代码直接集成到硬件中,只把主机服务器的硬件提供给在其之上运行的虚拟机,而且只消耗主机很少的物理资源,让更多的虚拟机在上面运行。而且,主机上并不包含常规操作系统,所以不需要与虚拟机中运行的操作系统以同样的速率进行修补和更新,这样就保证了虚拟机最大可能地提高性能,最大限度地减少了对机器上承载的Hypervisor的影响,并且可以使得它们获得接近在真实机上运行的速度。Hypervisor不需要自己驱动,直接利用支持虚拟化的处理器,这样Hypervisor可以做得很小,但效率很高。正是这些特点,HardV在生产及企业级应用中被普遍采用,是服务器虚拟化的最佳模式。两种不同的服务器虚拟化模式,如图1所示。
服务器虚拟化技术虽然可以在一套硬件平台上运行多个虚拟机,提高资源利用率,但是该技术也存在一些安全隐患。由于多个虚拟机是共享硬件平台的,恶意的虚拟机可能破坏同一平台上其他虚拟机的运行,甚至窃取、篡改数据让其崩溃。在传统方式中,不同的物理服务器是相互隔离的,不会相互影响,服务器受到的恶意攻击基本源于网络,所以使用软、硬件防火墙和杀毒软件就能避免威胁,有效地保护服务器的安全。但是引入虚拟化技术后,多个虚拟机运行在同一个物理服务器上,这样恶意者就有机可乘,可以直接威胁其他虚拟机甚至是服务器。服务器虚拟化的安全目标是让多个虚拟机之间、虚拟机与服务器之间都能相互隔离,虚拟机进程只能访问与自己相关的文件而无权访问其他系统文件,同样的系统进程也无权访问虚拟机文件。
3 服务器虚拟化实验平台应用
3.1 需求分析
学校在培养应用型人才时,注重学生实践动手能力的培养,因而非常重视实践教学。开展实践教学又离不开各种硬件设备构成的实验平台。目前计算机实验室现有环境不能支持多门类实验教学工作,无法满足教学和教学实践的需求。在教学资金有限的情况下,打造计算机实验虚拟化教学平台,保证学生的基础学习需要,教师科研工作需要迫在眉睫。实验室需要利用少有的物理服务器和一套虚拟化软件完成实验环境的搭建,并能支持多门课的实验教学工作和教师的科研工作。虚拟实验平台要支持多操作系统同时共存、要有非常好的兼容性;结构要简单,可以同时运行多个彼此隔离的虚拟机,每个虚拟机可以视为一个独立的计算机;能够提供先进的系统管理方案,能够被轻松地部署、维护和管理。教师利用该教学平台,可以给不同的学生分配任务,让动手能力强的学生获得多个虚拟机,让学生在不同环境中做不同事情,有利于学生获得更全面的锻炼。
3.2 实验虚拟化平台搭建
服务器虚拟化是最流行的一种虚拟化技术,它让操作系统不直接安装在硬件上,让业务服务器成为逻辑服务器,形成了逻辑层和物理层分离的结构,不仅可以方便地复用硬件资源,管理效率也大大提高。服务器虚拟化一般2种表现形式:第一种是将1台物理服务器虚拟化为多台逻辑服务器;第二种是将多台物理服务器虚拟化为1台逻辑服务器。在投入资金有限的情况下,计算机实验室可采用第一种形式,选用Citrix Xenserver服务器虚拟化平台软件构建高效、灵活、易于管理和维护的计算机实验教学平台。Citrix XenServer基于强大的Xen Hypervisor程序之上,可将物理服务器和存储资源划分成不同的资源池。XenServer可以高效地管理 Windows(R) 和 Linux(R)虚拟服务器。
为了充足利用教学资金和教学资源,必须选用性价比高的服务器。因此实验室尽可能选用那些性能强大、运行稳定、能耗低的处理器,这样能够降低成本。例如选用戴尔高性能服务器DeLL PowerEdge,运用XenServer服务器虚拟化软件将服务器虚拟成多个基本应用平台。Xen Server支持直接安装在物理机上,不需要底层的操作系统,但对于硬件有一定要求,安装XenServer的服务器必须支持CPU硬件虚拟化技术,且BIOS设置中CPU开启IntelVT或AMD/V功能;计算机实验教学平台搭建完成后,便可以针对不同的专业和不同的课程启动相应的虚拟服务,这些基本应用平台的数量和性能可以依据教学需要随时更改。
虚拟化实验教学平台构造示意图,如图2所示。
4 安全性研究
4.1 存在问题
虚拟化技术给用户带来了很多便利,然而从安全角度来分析,却又带来了很多威胁。Hypervisor是虚拟机的核心层,因此虚拟机的安全研究也主要以Hypervisor为核心。
1) 当系统引导的时候,Xen被装载到0环的内存中。它在1环上启动修补过的内核,这被称作Domain 0。但是Domain 0是主机上的管理系统,用来管理主机的物理资源和虚拟化资源,Domain 0 需要在其它 Domain 启动之前启,功能最强大,所以容易被恶意者攻击,如果Domain 0瘫痪或者被攻破,那么整个虚拟机系统也被破坏掉。
2) Hypervisor是虚拟机的核心,它使计算机实现了虚拟化。Hypervisor是一个中间软件层,是一种运行在基础物理服务器和操作系统之间的中间软件层,允许不同的操作系统和应用共享硬件。Hypervisor控制各种平台资源,按照Domain0中设置的参数去设置虚拟机,处理与虚拟化有关的操作。在虚拟服务器环境中,几个虚拟机共享主机服务器上有限的资源。如果某个虚拟机过度消耗硬件资源,会导致其他虚拟机不能正常工作。这种情况下,攻击者就容易对单个虚拟服务器发动Dos攻击。
3) 在有些架构中,虚拟机直接连接到一个虚拟交换机,该虚拟交换机再与物理网络适配器连接。在这种情况下,每个虚拟机共享物理网络适配器和虚拟交换机。如果多台虚拟机共享一个虚拟交换机,那么虚拟机之间可以直接通信,数据不通过物理网络,因此不能受硬件防火墙保护。
4. 2 安全防范措施
要确保良好的安全性,需要多管齐下。下面几项措施可以用来保护虚拟化服务器环境。
1) 针对Domain 0的问题,可减弱它的功能,将它的功能分解到Domain1等域中,这样可以减少Domain 0的瓶颈作用。
2) 在合理控制内存资源消耗的情况下,不让任何一台虚拟机消耗过度的物理硬件资源。保证Hypervisor允许对虚拟机消耗的内存和CPU时间进行控制。
3) 创建虚拟防火墙或者在所有的虚拟机上安装软件防火墙。
5 结束语
服务器虚拟化技术是将服务器物理资源抽象成逻辑资源,将一台服务器虚拟化成许多相互隔离的服务器,使用这种技术可以大大提高服务器的使用效率。该方式打破了传统的将应用部署在大量物理服务器上,利用虚拟化技术充分整合现有的服务器硬件资源,有效帮助解决高校实验室硬件资源利用率低、采购成本高等问题。
参考文献:
[1]张志国,服务器虚拟化安全风险及其对策研究[J].晋中学院学报,2010,12(3):79-82.
[2]姜勇,服务器虚拟化技术在企业信息化中的应用[J].计算机与信息技术, 2008,8(10):23-25.
[3]秦中元,虚拟机系统安全综述 [J].计算机应用研究,2012,29(5):67-69.
[4]罗婕.服务器虚拟化技术在计算机实验室的实践应用[J].计算机时代,2010( 2) : 43-46.
[5]姜伟.服务器虚拟化在高校计算机实验室的应用研究[J].实验技术与管理,2012,29(1):114-116.