中国联通IaaS计算设备技术规范
Hypervisor是一种运行在基础物理服务器和操作系统之间的中间软件层,可允许多个操作系统和应用共享硬件,可访问服务器上包括磁盘和内存在内的所有物理设备。Hypervisor不仅协调着这些硬件资源的访问,也同时在各个虚拟机之间施加防护。当服务器启动并执行Hypervisor时,它会加载所有虚拟机客户端的操作系统,同时会分配给每一台虚拟机适量的内存、CPU、网络和磁盘。
Hypervisor要求包括但不局限于如下几条:
(1)支持在一台物理服务器中创建多个相互独立的虚拟机服务器,每个虚拟机各自拥有计算、存储和网络等资源,运行各自的操作系统和应用。
(2)从安装各种应用系统、通过网络访问、满足用户对服务器不同使用需求的角度来看,虚拟机的用户体验与物理服务器几乎没有差别。
(3)支持通过Hypervisor软件功能,将物理服务器中的CPU、内存、I/O等资源进行抽象化,使得服务器资源不再与具体物理设备以及上层应用绑定,将原先与具体物理服务器和物理设备绑定的资源转化为可以统一分配和管理的一组逻辑资源,实现资源的共享和灵活分配。
(4)支持不同的资源划分粒度,以CPU资源为例,应支持以下粒度:
? 一台虚拟机可以使用相当于单个物理CPU(核)的处理能力; ? 一台虚拟机可以使用相当于多个物理CPU(核)的处理能力;
? 一台虚拟机可以与其它虚拟机共享CPU资源,每台虚拟机的虚拟CPU仅使用相当于单个物理CPU(核)部分或全部处理能力的计算资源。
(5)物理服务器的网卡等I/O设备,也支持类似的资源抽象和共享能力,使物理服务器可以划分的虚拟机个数与物理资源数量无关。
2. 32位/64位支持
为了使虚拟机能够充分满足企业现有IT系统的应用需求,同时提供较强的扩展能力,虚拟化产品应支持在旧有32位物理服务器上运行32位虚拟机,以及在新的64位物理服务器上运行32位或64位虚拟机的不同能力。
3. 操作系统兼容要求
物理服务器所支持的各种操作系统类型及版本,在对该物理服务器进行虚拟化后,也能够在创建的虚拟机中安装并正常运行。
在将物理服务器所支持的操作系统安装到虚拟机的过程中,无须对操作系统进行任何修改。出于提高虚拟机性能的需要对操作系统进行特定优化时,也应通过可选安装组件的方式进行,而无须更换现有操作系统版本。
12
中国联通IaaS计算设备技术规范
X86架构的虚拟机应支持市场主流的Windows服务器版本,以及Redhat、SuSe、CentOS等多个发行版本的Linux操作系统。
安装了所支持的、不同类型及版本操作系统的多个虚拟机,必须能够在同一物理服务器上同时运行,相互之间没有影响。
4. 服务器兼容要求
服务器虚拟化产品需提供广泛的物理服务器硬件设备兼容性支持,X86服务器虚拟化产品必须支持市场上主流设备厂商提供的服务器。
虚拟化产品功能的实现,不得依赖于特殊的服务器硬件设备。 5. 存储兼容要求
虚拟化产品使用存储设备保存的自身映象或者应用数据,因而存储设备需要满足以下要求: (1)支持物理服务器本地磁盘存储和通过网络(IP或SAN网络)访问的共享存储。
(2)支持文件系统(NFS、CIFS等)、块设备等不同存储类型;特别的,虚拟机磁盘映象,支持以文件方式映射到物理存储设备,也支持以逻辑卷(Logical Volume, LV)方式映射到物理存储设备。
(3)支持主流厂商提供的不同FC SAN、iSCSI和NAS等存储设备。
6.2 基本要求 6.2.1 虚拟机部署
虚拟机的部署是指在Hypervisor主机上安装虚拟机的过程。虚拟机的部署应当满足以下功能: (1)支持多种灵活的部署方式,包括与物理机安装类似的基于系统安装介质(光盘,移动存储)的安装部署和基于虚拟机镜像文件(如OVF格式文件)的免安装部。
(2)支持基于模板的部署,可以通过模板快速批量部署虚拟机。管理员可以根据需求安装一台虚拟机,并做好相应的系统配置。然后将此虚拟机转换为模板。通过模板可以快速地大规模部署虚拟机。部署的时候可以定制虚拟机的软硬件配置。
(3)Hypervisor在物理服务器上安装完成后,支持用户通过命令行或者图形界面的方式在Hypervisor上创建虚拟机。
(4)创建过程需提供用户交互界面,引导用户设定虚拟机名称、资源类型和数量、操作系统类型、网络设置等配置参数。
13
中国联通IaaS计算设备技术规范
(5)虚拟机创建成功后,支持从本地启动或网络启动(PXE)的方式,引导进行虚拟机操作系统的安装,并支持从光盘、ISO映像、本地存储或者共享存储中载入程序安装包。
(6)支持通过第三方工具或者编写脚本等方式,实现虚拟机、操作系统和应用的自动化安装和配置,并支持远程操作。
(7) 在服务器主流配置下(2路或者4路服务器,每CPU配置64GB内存到96GB内存)服务器虚拟化整合比(单台物理主机的VM数)建议在5-10左右,可根据对安全性、可靠性或者资源利用率要求不同进行调整。
6.2.2 虚拟机操作
虚拟机的整个生命周期都应当可以监控和管理。
在虚拟机的生命周期中,虚拟化软件应当提供完整的图形化监控和管理。管理员可以在管理界面上方便地选择创建、启动、关闭、暂停、挂起、恢复、重启、删除等虚拟机操作,并在界面上有相应的运行状态提示。
管理员可以同时对多台虚拟机进行管理操作,例如安装系统补丁。此类操作应当显示在虚拟机界面之内,使得在线的虚拟机用户得到通知。(1)虚拟机创建是指根据用户的配置要求,在资源池内新增一个该配置的虚拟机。虚拟机的创建过程需提供用户交互方式,引导用户设定虚拟机名称、资源类型和数量、操作系统类型、网络设置等配置参数。
(2)虚拟机启动是指将关闭状态中的虚拟机置于开机状态(通常情况下,新创建的虚拟机默认为关闭状态)。
(3)虚拟机关闭是指将运行中的虚拟机关机。 (4)虚拟机重启是指将运行中的虚拟机重新启动。
(5)虚拟机暂停是指将虚拟机当前的工作环境保存到内存中,然后关闭CPU等其他虚拟机硬件电源,仅对内存供电,当恢复虚拟机时,能够迅速回到虚拟机暂停前的工作环境。
(6)虚拟机挂起是指将虚拟机当前的工作环境保存到磁盘空间,然后关闭所有虚拟机硬件电源, 当恢复虚拟机时,能够迅速回到虚拟机挂起前的工作环境。暂停和挂起虚拟机,均不会丢失虚拟机的任何状态信息,并且可以在任意时刻恢复该虚拟机。被挂起的虚拟机在挂起期间应当释放其对主机资源的占用。
(7)虚拟机恢复是指将暂停或者挂起的虚拟机,恢复到虚拟机暂停或者挂起之前的工作环境。
14
中国联通IaaS计算设备技术规范
(8)虚拟机删除是指将用户的虚拟机移除出资源池,并将存储上相应的虚拟机文件删除的操作。删除的过程是不可逆的,删除的虚拟机将无法恢复。
6.2.3 虚拟机的快照创建和恢复
虚拟机快照是指虚拟机在某一特定时间点的状态副本。快照可以用来将虚拟机恢复到过去某一时刻的状态,即创建快照时刻的状态。
快照分为离线快照和在线快照两种。离线快照是对离线的虚拟机创建快照,在线快照是对在线的虚拟机创建快照。在线快照应当支持将内存状态纳入快照之中。
虚拟机快照的创建和恢复应当满足以下功能:
(1)可以在任意时间点对离线或者在线的虚拟机创建快照,并且创建快照的过程应当尽可能的短暂,以免对系统产生影响。
(2)用户可以创建大量快照,并且虚拟机系统不应当随着快照数量的增多导致性能下降。 (3)快照之间应当相互独立,任意快照的删除操作不会对其他快照和整个虚拟机系统有任何影响。 (4)创建快照支持采用节省磁盘空间的方式,创建的快照不会显著增大虚拟机所占用的磁盘空间。 (5)用户可以使用任意快照来恢复到快照时的系统状态。快照应当包含包括内存在内的所有系统状态。快照的恢复时间应当尽可能的短暂。
6.2.4 虚拟机备份和容灾
虚拟机的备份是指在任意时间点对虚拟机按预定策略进行自动或者手动的数据提取和保存,并在需要的时候进行恢复,以保障系统的数据安全。其应当满足以下功能:
(1)Hypervisor软件供应商应当提供开放的备份应用编程接口(API),使得与主流的第三方备份软件平台兼容。同时,也应当提供一体化的备份解决方案,使得即使在不依赖第三方备份软件的情况下,仅依靠平台自身也可以备份及恢复。
(2)提供设置自动备份时间、备份方式等的功能,按日历或者工作周方式设置备份策略运行时间。 (3)支持全备份和增量备份等多种备份方式。
(4)支持虚拟机的在线备份功能,即备份过程中虚拟机可继续运行,并且备份过程不应对虚拟机或者运行Hypervisor的主机产生任何显著的性能影响。
(5)备份必须保证数据的一致性。不仅对虚拟机本身的操作系统,而且对虚拟机上运行的任何应用程序,备份都必须是有效且数据一致的。
15
中国联通IaaS计算设备技术规范
(6)备份数据流应当支持IP网络或者存储区域网络(SAN),备份的目的介质可以是磁盘或者磁带。
容灾是指当发生大范围的技术故障或者自然灾害导致本地的虚拟机无法正常运行的情况下,虚拟机可以自动迁移到远程的主机上继续运行的技术。其应当满足以下功能:
(1)有完整的技术解决方案和管理平台,可以同时对本地以及多个远程的数据中心的主机进行监控,当灾难发生时,可以采取迅速有效的响应机制,进行不需要人工干预的虚拟机自动切换。
(2)支持1对1和1对多的容灾部署,支持多地数据中心互为灾难备份。
(3)支持同步或者异步的数据复制传输,使得灾备方案可以跨越广域网。并且应当提供可靠的基于软件的数据复制方式,同时也应当支持主流的硬件磁盘阵列的数据复制方式。
(4)提供的容灾方案可以在不影响生产环境的情况下进行可靠性测试,以验证系统的RTO和RPO。
6.2.5 虚拟机模板
虚拟机模板是指可以用来创建其他虚拟机的虚拟机镜像文件。虚拟机模板包括操作系统,一系列应用程序以及一整套虚拟机配置选项。
模板应既能支持各种操作系统,又能支持系统软件或应用软件,具体内容包括: (1)虚拟机的配置,如CPU、内存、硬盘;
(2)虚拟机的操作系统环境,如操作系统类型、版本; (3)虚拟机的应用软件环境,如软件安装包路径、安装参数;
(4)应用软件的部署与配置流程,用于生成虚拟机时软件的安装与设置。 虚拟机模板应当支持以下功能:
(1)模板的创建。模板应当支持多种创建方式,包括从一台现有虚拟机创建模板,以及从一个现有模板中复制另一个模板。
(2)模板的更新和升级。模板创建成功后应当可以修改,包括修改模板中包含的应用程序和配置信息。
(3)支持通过模板快速、批量部署虚拟机,除必要的参数配置以外,通过模板创建虚拟机的过程可以自动化进行。
(4)基于模板的大规模部署,应当支持共享的方式,使得克隆得到的虚拟机可以共享磁盘上相同的文件(例如操作系统文件),以达到节省磁盘空间的效果。
16