虚拟化是一种允许更有效地利用物理计算机硬件的过程,是云计算的基础。
虚拟化软件会在计算机硬件上创建一个抽象层,允许将单个计算机的硬件元素(处理器、内存、存储等)分成多个虚拟计算机(通常称为虚拟机 (VM))。 每个虚拟机都会运行自己的操作系统 (OS),其行为就像一台独立的计算机,即使它只在一部分实际底层计算机硬件上运行。
虚拟化可以更有效地利用计算机硬件,并提高组织硬件投资的投资回报率。
如今,虚拟化已经成为企业 IT 体系结构的标准实践。 它也是推动 云计算经济发展的技术。 虚拟化使云提供商能够使用他们现有的物理计算机硬件为用户提供服务; 它使云用户能够在需要时仅购买所需的计算资源,并随着工作负载的增长经济高效地扩展这些资源。
有关虚拟化工作原理的进一步概述,请参阅我们的视频“虚拟化解释”:
IBM Cloud Virtual Servers
虚拟化为数据中心运营商和服务提供商带来诸多好处:
想要更加深了解虚拟化的好处,请参阅“虚拟化的 5 大优势。”
几家公司提供涵盖特定数据中心任务或以最终用户为中心的桌面虚拟化场景的虚拟化解决方案。 比较知名的例子包括专门从事服务器、桌面、网络和存储虚拟化的 VMware; Citrix 在应用程序虚拟化领域占有一席之地,但也提供服务器虚拟化和虚拟桌面解决方案; 和 Microsoft,其 Hyper-V 虚拟化解决方案随 Windows 一起提供,并专注于服务器和台式计算机的虚拟版本。
虚拟机 (VM) 是一种以软件形式模拟物理计算的虚拟环境。 它们通常包含多个文件,其中包含 VM 的配置、虚拟硬盘驱动器的存储以及 VM 在特定时间点保留其状态的一些快照。
想要了解虚拟机的完整概述,请参阅“什么是虚拟机”
管理程序是协调 VM 的软件层。 它充当 VM 和底层物理硬件之间的接口,确保每个人都可以访问其执行所需的物理资源。 它还确保 VM 不会通过影响彼此的内存空间或计算周期而相互干扰。
有两种类型的管理程序:
“管理程序:完整指南”提供了有关管理程序的详细内容概述
到目前为止,我们已经讨论了服务器虚拟化,但许多其他 IT 基础架构元素也可以虚拟化,从而为 IT 经理(特别是)和整个企业带来显着优势。 在本节中,我们将介绍以下类型的虚拟化:
桌面虚拟化让您可以运行多个桌面操作系统,每个操作系统都在同一台计算机上的自己的 VM 中。
桌面虚拟化有两种类型:
有关桌面虚拟化的更多信息,请参阅 “桌面即服务 (DaaS)。”
网络虚拟化使用软件创建网络“视图”,管理员可以使用该“视图”从单个控制台管理网络。 抽象了硬件元素和功能(例如,连接、交换机、路由器等),并将它们抽象成运行在管理程序上的软件。 网络管理员可以在不接触底层物理组件的情况下修改和控制这些元素,这极大地简化了网络管理。
网络虚拟化类型包含软件定义的联网(SDN), 它能虚拟化控制网络流量路由表的硬件(称为“控制平面”),以及网络功能虚拟化(NFV),它能虚拟化一个或多个硬件设备,提供指定网络功能(例如,防火墙、负载平衡器,或流量分析器),使这些设备更容易配置、供应和管理。
存储虚拟化使网络上的所有存储设备成为可能网络——无论它们是安装在单独的服务器上还是独立的存储单元上,都可以作为单个存储设备进行访问和管理。 具体来说,存储虚拟化将所有存储块集中到一个共享池中,可以根据需要将它们分配给网络上的任何 VM。 存储虚拟化可以更轻松地为 VM 配置存储,并最大限度地利用网络上的所有可用存储。
要详细了解存储虚拟化,请查看“什么是云存储?”
现代企业使用多种文件格式将来自多个应用程序的数据存储在多个位置,从云到本地硬件和软件系统。 数据虚拟化允许任何应用程序访问所有这些数据——无论来源、格式或位置如何。
数据虚拟化工具在访问数据的应用程序和存储数据的系统之间创建了一个软件层。 该层根据需要转换应用程序的数据请求或查询,并返回可以跨越多个系统的结果。 当其他类型的集成不可行、不可取或负担不起时,数据虚拟化可以帮助打破数据孤岛。
应用程序虚拟化无需将其直接安装在用户的操作系统上就可以运行应用程序软件。 这与完整的桌面虚拟化(上面提到的)不同,因为只有应用程序在虚拟环境中运行——最终用户设备上的操作系统照常运行。 应用程序虚拟化分为三种类型:
数据中心虚拟化将数据中心的大部分硬件抽象为软件,有效地使管理员能够为不同的客户端将单个物理数据中心划分为多个虚拟数据中心。
每个客户端都可以访问自己的基础设施即服务 (IaaS),这些基础设施将在相同的底层物理硬件上运行。 虚拟数据中心提供了进入基于云计算的轻松入口,让公司无需购买基础设施硬件即可快速建立完整的数据中心环境。
CPU(中央处理单元)虚拟化是使管理程序、虚拟机和操作系统成为可能的基础技术。 它允许将单个 CPU 划分为多个虚拟 CPU,供多个 VM 使用。
起初,CPU 虚拟化完全是软件定义的,但今天的许多处理器都包含支持 CPU 虚拟化的扩展指令集,从而提高了 VM 性能。
GPU(图形处理单元)是一种特殊的多核处理器,它通过接管繁重的图形或数学处理来提高整体计算性能。 GPU 虚拟化允许多个 VM 使用单个 GPU 的全部或部分处理能力来实现更快的视频、人工智能 (AI) 和其他图形或数学密集型应用程序。
Linux 包括自己的虚拟机管理程序,称为基于内核的虚拟机 (KVM),它支持 Intel 和 AMD 的虚拟化处理器扩展,因此您可以从 Linux 主机操作系统中创建基于 x86 的 VM。
Linux 作为一种开放式源代码操作系统,具有高度的可定制性。 您可以创建运行为特定工作负载量身定制的 Linux 版本的 VM,或者为更敏感的应用程序创建安全强化版本。
如上所述,云计算模型依赖于虚拟化。 通过虚拟化服务器、存储和其他物理数据中心资源,云计算供应商可以为客户提供一系列服务,包括:
如果您想了解有关这些云服务模型的更多信息,请参阅我们的指南:“基础结构即服务、平台即服务与软件即服务。”
服务器虚拟化在硬件中复制整个计算机,然后运行整个操作系统。 该操作系统运行一个应用程序。 这比完全没有虚拟化更有效,但它仍然为您要运行的每个应用程序复制不必要的代码和服务。
容器采用了另一种方法。 它们共享一个底层操作系统内核,只运行应用程序及其依赖的东西,比如软件库和环境变量。 这使得容器更小,部署速度更快。
要深入了解容器和容器化,请查看“容器:完整指南”和“容器化:完整指南”。
查看博客文章“容器与虚拟机:有什么区别? ”进行更仔细的比较。
在以下视频中,Sai Vennam 分解了容器化的基础知识以及它与通过 VM 进行的虚拟化的比较:
VMware 创建虚拟化软件。 VMware 一开始只提供服务器虚拟化——它的 ESX(现在是 ESXi)管理程序是最早在商业上取得成功的虚拟化产品之一。 今天,VMware 还提供网络、存储和桌面虚拟化解决方案。
要深入了解涉及 VMware 的所有内容,请参阅“VMware:完整指南。”
虚拟化提供了一些安全优势。 例如,感染恶意软件的虚拟机可以回滚到虚拟机未感染且稳定的时间点(称为快照); 它们也可以更容易地删除和重新创建。 您不能总是对非虚拟化操作系统进行杀毒,因为恶意软件通常深入集成到操作系统的核心组件中,并在系统回滚后持续存在。
虚拟化也带来了一些安全挑战。 如果攻击者破坏了管理程序,他们可能拥有所有 VM 和访客操作系统。 由于虚拟机管理程序还可以允许虚拟机在不接触物理网络的情况下在它们之间进行通信,因此很难看到它们的流量,因此很难检测到可疑活动。
主机操作系统上的类型 2 管理程序也容易受到主机操作系统的危害。
该市场提供了一系列虚拟化安全产品,可以扫描和修补 VM 中的恶意软件、加密整个 VM 虚拟磁盘以及控制和审计 VM 访问。
IBM Cloud提供完整的基于云的虚拟化解决方案,涵盖公共云服务到私有和混合云产品。 您可以使用它来创建和运行虚拟基础结构 还可以利用从基于云的人工智能到通过 IBM Cloud for VMware Solutions 迁移 VMware 工作负载的服务。
立刻注册 IBM Cloud 账户。