虚拟化是一种能够更有效地利用物理计算机硬件的过程,是云计算的基础。
虚拟化技术使用软件,在计算机硬件上创建一个抽象层,能够将单台计算机的硬件元素(处理器、内存、存储等)分成多个虚拟计算机(通常称为虚拟机 (VM))。 每个虚拟机都会运行自己的操作系统 (OS),其行为就像一台独立的计算机,即使它只在一部分实际底层计算机硬件上运行。
由此可见,虚拟化可以更高效地利用物理计算机硬件,提高组织在硬件投资方面的投资回报率。
如今,虚拟化已成为企业 IT 架构的标准实践。 它也是推动
云计算
经济发展的技术。 虚拟化使云提供商能够使用他们现有的物理计算机硬件为用户提供服务; 它使云用户能够在需要时仅购买所需的计算资源,并随着工作负载的增长经济实惠地扩展这些资源。
有关虚拟化工作原理的进一步概述,请观看我们的视频“虚拟化解释”:
虚拟化为数据中心运营商和服务提供商带来诸多好处:
资源效率:
在虚拟化出现之前,每个应用服务器都需要自己的专用物理 CPU — IT 人员为想要运行的每个应用购买和配置单独的服务器。 (出于可靠性原因,IT 人员更倾向于在每台计算机上配置一个操作系统 (OS),运行一个应用。) 因此,每台物理服务器都不可避免地得不到充分利用。 相反,服务器虚拟化能够在单一物理计算机(通常是 x86 服务器)上运行多个应用,每个应用都在自己的 VM 上运行,使用自己的操作系统,而且不会牺牲可靠性。 这样就能够最大程度地利用物理硬件的计算能力。
管理更加轻松:
通过用软件定义的 VM 取代物理计算机,可以更轻松地使用和管理用软件编写的策略。 这有助于创建自动化的 IT 服务管理工作流程。 例如,自动化部署和配置工具使管理员能够以软件模板的形式将一组虚拟机和应用定义为服务。 这意味着他们能够以统一方式重复安装这些服务,而无需繁琐耗时 而且容易出错的人工设置过程。 管理员可以根据虚拟机的角色使用虚拟化安全策略,以强制实施某些安全配置。 策略甚至可通过淘汰未使用的虚拟机以节省空间和计算能力,提高资源效率。
最大程度减少宕机:
操作系统和应用崩溃会导致宕机,对用户生产力造成影响。 管理员可以同时运行多个冗余虚拟机,当出现问题时,可在它们之间进行故障转移。 运行多台冗余物理服务器的成本比较高。
配置速度更快:
为每个应用购买、安装和配置硬件非常耗时。 如果硬件已部署,那么配置虚拟机以运行所有应用的速度要快得多。 甚至可以使用管理软件自动进行配置,并将其构建到现有工作流程中。
要更深入地了解潜在收益,请参阅“
虚拟化的 5 大优点
。”
虚拟机管理器是用于协调 VM 的软件层。 它充当 VM 与底层物理硬件之间的接口,确保每个 VM 都有权访问它执行任务所需的物理资源。 它还确保 VM 不会因为占用彼此的内存空间或计算周期而相互干扰。
存在两种类型的虚拟机管理器:
类型 1
,也称
“裸机”虚拟机管理器
,与底层物理资源进行交互,完全取代传统的操作系统。 它们最常出现在虚拟服务器场景中。
类型 2 虚拟机管理器
在现有操作系统上作为应用运行。 这类虚拟机管理器最常在终端设备上用于运行其他操作系统,它们会产生性能开销,因为它们必须使用主机操作系统来访问和协调底层硬件资源。
"
虚拟机管理器:完全指南
"提供了有关虚拟机管理器所有内容的全面概述。
到目前为止,我们讨论了服务器虚拟化,但许多其他 IT 基础架构元素也可以实现虚拟化,从而为整个企业尤其为 IT 经理带来显着优势。 在本部分,我们将介绍以下类型的虚拟化:
桌面虚拟化
网络虚拟化
存储虚拟化
数据虚拟化
应用虚拟化
数据中心虚拟化
CPU 虚拟化
GPU 虚拟化
Linux 虚拟化
桌面虚拟化
桌面虚拟化使您能够运行多个桌面操作系统,每个操作系统在同一台计算机上其自己的 VM 中运行。
桌面虚拟化有两种类型:
虚拟桌面基础架构 (VDI)
:在中央服务器上的 VM 中运行多个桌面,并将它们以流式方式传输给登录到瘦客户端设备的用户。 通过这种方式,VDI 使组织能够支持用户从任何设备访问各种操作系统,而无需在任何设备上安装操作系统。 请参阅"
什么是虚拟桌面基础架构 (VDI)?
",以了解更深入的说明。
本地桌面虚拟化
:在本地计算机上运行虚拟机管理器,使用户能够在该计算机上运行一个或多个额外的操作系统,并根据需要从一个操作系统切换到另一个,而不必更改有关主操作系统的任何配置。
有关桌面虚拟化的更多信息,请参阅 "
桌面即服务 (DaaS)
。"
网络虚拟化
网络虚拟化使用软件创建网络的"视图",管理员可使用该视图,从单一控制台管理网络。 它抽象了硬件元素和功能(例如,连接、交换机、路由器等),将它们抽象为在虚拟机管理器上运行的软件。 网络管理员可在不接触底层物理组件的情况下修改和控制这些元素,这极大地简化了网络管理。
网络虚拟化的类型包括
软件定义的联网 (SDN)
, 它虚拟化用于控制网络流量路由的硬件(称为"控制平面");以及
网络功能虚拟化 (NFV)
,它虚拟化用于提供特定网络功能的一个或多个硬件设备(例如,防火墙、
负载平衡器
或流量分析器),使这些设备更容易配置、供应和管理。
存储虚拟化
存储虚拟化使
网络
上的所有存储设备都可以作为单个存储设备进行访问和管理,而无论它们是安装在各个服务器上,还是作为独立存储单元存在。 具体而言,存储虚拟化将所有存储块整合到单一共享池中,可根据需要将池中的存储分配给网络中的任何 VM。 存储虚拟化可以更轻松地为 VM 配置存储,并最大程度利用网络上的所有可用存储。
要进一步详细了解存储虚拟化,请参阅“
什么是云存储?
”
数据虚拟化
现代企业将多个应用中使用多种文件格式的数据存储在多个位置,包括云、本地硬件和软件系统。 数据虚拟化使任何应用都可以访问所有这些数据 - 无论来源、格式或位置如何。
数据虚拟化工具在访问数据的应用和存储数据的系统之间创建了一个软件层。 该层可根据需要转换应用的数据请求或查询,并返回可能涉及多个系统的结果。 如果其他类型的集成不可行、不理想或经济上不可承受,则可使用数据虚拟化打破数据孤岛。
应用虚拟化
应用虚拟化运行应用软件,不直接安装在用户的操作系统上。 这不同于完整的桌面虚拟化(如上所述),因为只有应用在虚拟环境中运行,而最终用户设备上的操作系统照常运行。 存在三种类型的应用虚拟化:
本地应用虚拟化:
整个应用在终端设备上运行,但是在运行时环境而不是本机硬件上运行。
应用流:
应用位于服务器上,服务器在需要时将软件的各个小组件发送到最终用户的设备上运行。
基于服务器的应用虚拟化:
应用完全在服务器上运行,仅将用户界面发送到客户端设备。
数据中心虚拟化
数据中心虚拟化将大部分数据中心的硬件抽象为软件,有效地帮助管理员将单个物理数据中心划分为用于不同客户端的多个虚拟数据中心。
每个客户端都可以访问自己的基础架构即服务 (IaaS) ,它们在同一底层物理硬件上运行。 虚拟数据中心为基于云的计算提供了简便的方法,使企业无需购买基础架构硬件即可快速建立完整的数据中心环境。
CPU 虚拟化
CPU(中央处理器)虚拟化是使虚拟机管理器、虚拟机和操作系统成为可能的基本技术。 它能够将单个 CPU 划分为多个虚拟 CPU 以供多个 VM 使用。
首先,CPU 虚拟化完全是软件定义的,但目前的许多处理器包含扩展指令集,支持 CPU 虚拟化,这有助于提高 VM 的性能。
GPU 虚拟化
GPU(图形处理器)是一种特殊的多核处理器,它通过接管繁重的图形或数学处理,帮助提高整体计算性能。 GPU 虚拟化使多个 VM 能够使用单个 GPU 的全部或部分处理能力,以便更快地运行视频、人工智能 (AI) 和其他图形或数学密集型应用。
传递 GPU
使整个 GPU 可用于单个访客操作系统。
共享式 vGPU
将物理 GPU 核心划分为多个虚拟 GPU (vGPU),以供基于服务器的 VM 使用。
Linux 虚拟化
Linux 包含自己的虚拟机管理器,称为基于内核的虚拟机 (KVM),它支持 Intel 和 AMD 的虚拟化处理器扩展,因此您可以在一个 Linux 主机操作系统中创建多个基于 x86 的 VM。
作为开源操作系统,Linux 高度可定制。 可创建 VM,运行针对特定工作负载定制的 Linux 版本,或运行面向较为敏感的应用的安全强化型版本。
如上所述,云计算模型依赖于虚拟化。 通过虚拟化服务器、存储和其他物理数据中心资源,云计算供应商可以为客户提供一系列服务,包括:
基础架构即服务 (IaaS)
:
可根据需求配置的虚拟化服务器、存储和网络资源。
平台即服务 (PaaS)
:
虚拟化的开发工具、数据库和其他基于云的服务,可用于构建您自己的基于云的应用和解决方案。
软件即服务 (SaaS)
:在云端使用的软件应用。 SaaS 是从硬件进行最大程度抽象的基于云的服务。
如果您想要了解有关这些云服务模型的更多信息,请参阅我们的指南:"
基础架构即服务、平台即服务与软件即服务
。"
服务器虚拟化在硬件中重现整台计算机,然后运行整个操作系统。 操作系统运行一个应用。 这比完全没有虚拟化更有效,但它仍然为您要运行的每个应用复制不必要的代码和服务。
容器则采用了另一种方法。 它们共享底层操作系统内核,仅运行应用及其依赖的内容,如软件库和环境变量。 这使得容器体量更小,部署速度更快。
要深入了解容器和容器化,请查看"
容器:完全指南
"和"
容器化:完全指南
"。
查看博客帖子"
容器与虚拟机:有什么区别?
",了解更细致的对比。
在以下视频中,Sai Vennam 细致介绍了容器化的基本概念,并将其与通过 VM 实现的虚拟化进行对比:
VMware 创建虚拟化软件。 VMware 一开始仅提供服务器虚拟化 - 其 ESX(现在为 ESXi)虚拟机管理器是最早取得成功的商用虚拟化产品之一。 目前,VMware 还为网络、存储和桌面虚拟化提供解决方案。
要深入了解涉及 VMware 的所有内容,请参阅"
VMware:完全指南
。"
虚拟化提供了一些安全优势。 例如,受恶意软件感染的 VM 可回滚到未受感染并处于稳定状态的某个时间点(称为快照);还可以更轻松地删除和重建 VM。 您无法总是能够让非虚拟化的操作系统免受病毒感染,因为恶意软件通常深度集成到操作系统的核心组件中,靠系统回滚解决不了问题。
虚拟化也带来了一些安全挑战。 如果攻击者攻破了虚拟机管理器,那么他们就可能掌控所有 VM 和访客操作系统。 由于虚拟机管理器还允许各 VM 相互通信而不会触及物理网络,因此很难看到它们之间的流量,于是也很难检测到可疑活动。
主机操作系统上的类型 2 虚拟机管理器也易受主机操作系统攻击的影响。
市场中提供了一系列虚拟化安全产品,可以扫描和修补 VM 以杀除恶意软件,加密整个 VM 虚拟盘,以及控制和审计 VM 访问。