随着企业的成长,业务和应用的不断增加,IT 系统规模日益庞大,带来高能耗、数据中心空间紧张、IT 系统总体拥有成本过高等问题;而现有服务器、存储系统等设备又没有充分被利用起来,资源极度浪费;IT 基础架构对业务需求反映不够灵活,不能有效第调配系统资源适应业务需求。因此,企业需要建立一种可以降低成本、具有智能化和安全特性、并能够与当前业务环境相适应的灵活、动态的基础设施和应用环境,以更为快速地响应业务环境的变化,并且降低数据中心的运营成本。
虚拟化技术是一种调配计算资源的方法,它将应用系统的不同层面——硬件、软件、数据、网络、存储等一一隔离开来,从而打破数据中心、服务器、存储、网络、数据和应用中的物理设备之间的划分,实现架构动态化,并达到集中管理和动态使用物理资源及虚拟化资源,以提高系统结构的弹性和灵活性,降低成本、改进服务、减少管理风险等目的。
计算机的虚拟化使单个计算机看起来像多个计算机或完全不同的计算机,从而提高资源利用率并降低 IT 成本。而随着 IT 架构的复杂化和企业应用计算需求的急剧加大,虚拟化技术发展到了多台计算机看起来像一台计算机以实现统一的管理、调配和监控。
认识虚拟化技术
一、虚拟化的起源
传统构架是在每台物理机器上仅能拥有一个操作系统,而且多数情况下仅有一个负载。很难在服务器上运行多个主应用程序,因为如果这样做,则可能会产生冲突和性能问题。实际上,当前计算的最佳做法是每个服务器仅运行一个应用程序以避免这些问题。但是,这么做的结果是大多数时间利用率很低。如前面所讨论,我们浪费了所购买的大部分计算能力。您必须在浪费硬件和降低风险间寻找平衡。随着业务的增长,随之而来的成本压力也变化,相关管理效率也会变低,需消耗的资源也会变大。
企业实施虚拟化战略的核心目的就是提高 IT 部门作为业务支持部门的工作效率,达到节约成本与提高效率并重的目的。虚拟化的重要使命之一就是提高管理效率,从而降低成本、提高硬件使用率,把管理变得更加轻松。虚拟化的主攻方向集中在减少实体服务器的建置数量,并将实体机器上的操作系统及应用程序,无缝转移至虚拟机器上,以便集中管理这些不同平台的虚拟环境。
虚拟化发展由来
- 60 年代在大型机上虚拟技术已经有所应用
- 99 年在小型机上已经出现逻辑分区的应用
- 2000 年 x86 平台虚拟技术开始出现
- 2001 年 x86 平台虚拟化技术在服务器上应用
虚拟化技术推动力
- CPU 速度越来越快,超出软件对硬件性能的要求
- INTEL 和 AMD 在 CPU 里加入虚拟指令
- 企业成本压力
- 环保压力
- 不断增长的业务压力
二、什么是虚拟化
虚拟化(Virtualization)是资源的逻辑表示,其不受物理限制的约束
虚拟化技术的实现是在系统中加入一个虚拟化层,将下层的资源抽象成另一种形式的资源,提供给上层应用
虚拟化的优势:
- 提高硬件利用率
- 降低能耗,绿色节能
- 提高 IT 运维效率,系统管理人员减少
- 操作系统和硬件的解耦
三、虚拟化的本质
- 分区
分区意味着虚拟化层为多个虚拟机划分服务器资源的能力;每个虚拟机可以同时运行一个单独的操作系统(相同或不同的操作系统),使您能够在一台服务器上运行多个应用程序;每个操作系统只能看到虚拟化层为其提供的「虚拟硬件」(虚拟网卡、CPU、内存等),以使它认为运行在自己的专用服务器上。
- 隔离:虚拟机是互相隔离的:
i. 一个虚拟机的崩溃或故障(例如,操作系统故障、应用程序崩溃、驱动程序故障,等等)不会影响同一服务器上的其它虚拟机
ii. 一个虚拟机中的病毒、蠕虫等与其它虚拟机相隔离,就像每个虚拟机都位于单独的物理机器上一样
iii. 可以进行资源控制以提供性能隔离:您可以为每个虚拟机指定最小和最大资源使用量,以确保某个虚拟机不会占用所有的资源而使得同一系统中的其它虚拟机无资源可用
iv. 可以在单一机器上同时运行多个负载/应用程序/操作系统,而不会出现我们刚才讨论传统 x86 服务器体系结构的局限性时所提到的那些问题(应用程序冲突、DLL 冲突等)
- 封装
封装意味着将整个虚拟机(硬件配置、BIOS 配置、内存状态、磁盘状态、CPU 状态)储存在独立于物理硬件的一小组文件中。这样,您只需复制几个文件就可以随时随地根据需要复制、保存和移动虚拟机。
四、虚拟化几个重要的概念
- 宿主(Host Machine):指物理机资源
- 客户(Guest Machine):指虚拟机资源
- Guest OS 和 Host OS:如果将一个物理机虚拟成多个虚拟机,则称物理机为 Host Machine,运行在其上的 OS 为 Host OS;称多个虚拟机为 Guest Machine,运行在其上的 OS 为 Guest OS
- Hypervisor:通过虚拟化层的模拟,虚拟机在上层软件看来就是一个真实的机器,这个虚拟化层一般称为虚拟机监控机(Virtual Machine Monitor,VMM)
五、虚拟化类型与主要内容
类型
- 寄居虚拟化:虚拟化管理软件作为底层操作系统(Windows 或 Linux 等)上的一个普通应用程序,然后通过其创建相应的虚拟机,共享底层服务器资源。
- 裸金属虚拟化:Hypervisor 是指直接运行于物理硬件之上的虚拟机监控程序。它主要实现两个基本功能:首先是识别、捕获和响应虚拟机所发出的 CPU 特权指令或保护指令;其次,它负责处理虚拟机队列和调度,并将物理硬件的处理结果返回给相应的虚拟机。
- 操作系统虚拟化:没有独立的 hypervisor 层。相反,主机操作系统本身就负责在多个虚拟服务器之间分配硬件资源,并且让这些服务器彼此独立。一个明显的区别是,如果使用操作系统层虚拟化,所有虚拟服务器必须运行同一操作系统 (不过每个实例有各自的应用程序和用户账户)
虚拟化主要内容包含三个方面的内容:计算虚拟化、存储虚拟化和网络虚拟化。