美光科技术语表

虚拟化

虚拟化是现代计算领域的一项基础技术,它可以对物理计算资源进行抽象处理和管理,然后以灵活的、软件定义环境的形式对外提供。虚拟化技术能够在共享的硬件上同时运行多个相互隔离的系统,以此提高数据中心和云环境中的资源利用率、可扩展性以及运营敏捷性。

在企业设计、部署和管理 IT 基础设施时,虚拟化发挥着至关重要的作用。它是云计算的基础,支持大规模应用开发;借助虚拟化技术,企业能够更好地利用计算、内存、存储和网络资源。对于运行数据密集型工作负载的企业而言,要实现有效的虚拟化,不仅取决于相关软件,还取决于底层硬件的性能和可靠性。

什么是虚拟化?

虚拟化的定义:虚拟化是一项技术,它通过利用软件来管理和分配处理器、内存存储等资源,支持在共享的物理硬件上同时运行多个互相独立的计算系统。

虚拟化的工作原理是从单个物理系统创建多个虚拟环境。每个环境均独立运行,拥有自己的操作系统和应用程序,同时所有环境共享相同的底层硬件资源。

通过将计算工作负载与物理硬件分离,虚拟化技术使得处理器、内存、存储和网络等资源能够根据需要进行共享和分配。这种灵活性使得虚拟化成为企业 IT、云平台和现代数据中心的核心技术。

虚拟化是如何工作的?

虚拟化的工作原理是在物理硬件层以及在这些硬件上运行的操作系统或应用程序之间插入一个软件层。该软件层负责管理硬件资源在多个虚拟环境之间的共享方式。

在许多虚拟机系统中,这一软件层对应的是虚拟机管理程序,它负责控制计算资源的分配,并确保每个虚拟环境都能独立运行。虚拟机管理程序负责管理虚拟机对处理能力、内存容量、存储输入输出以及网络的访问,从而使多个虚拟系统能够在同一台物理机器上安全运行。

由于多个虚拟环境共享底层物理硬件,因此整体性能取决于底层基础设施的性能。在虚拟化环境中,多个工作负载同时运行,因此充足的内存容量、快速的存储设备以及可靠的数据传输尤其重要。

除了传统的基于虚拟机管理程序的虚拟化之外,一些平台还采用了容器虚拟化方式。容器虚拟化是在操作系统层面进行虚拟化,而非在整个硬件堆栈层面,这使得应用程序在保持互相隔离的同时能够更高效地运行。

虚拟化的发展过程是怎样的?

随着计算系统的规模不断扩大,以及企业不断寻求更高效的方式来共享和管理硬件资源,虚拟化技术在过去几十年间持续发展演进。

  • 20 世纪 60 年代 - 80 年代,早期大型机计算:早期的虚拟化技术是为大型机系统开发的,它使多个用户和工作负载能够高效地共享当时十分昂贵的硬件资源。
  • 20 世纪 90 年代末 - 21 世纪 00 年代,服务器虚拟化时期:标准服务器硬件开始支持虚拟化技术,让企业在单台物理机器上运行多个操作系统成为可能。这标志着企业 IT 基础设施的设计发生了重大转变。
  • 21 世纪 00 年代 - 10 年代,云计算时代:随着数据中心的规模和复杂性不断增加,虚拟化成为云计算时代的一项基础性技术。云平台依托虚拟化技术提供按需定制的基础设施、灵活的资源分配以及可扩展的服务。
  • 21 世纪 10 年代末,容器与云原生开发:容器技术可加快应用部署速度,并支持云原生软件开发(尤其是微服务和分布式应用的开发),从而进一步拓展了虚拟化的应用范围。
  • 21 世纪 20 年代 - 至今,面向混合、分布式和数据密集型工作负载的虚拟化:虚拟化技术一直在不断发展,以支持混合云、端侧计算以及数据密集型工作负载(如 AI机器学习)。这些环境对性能、可扩展性以及计算、内存和存储资源的高效利用提出了更高要求,因此,基于硬件的虚拟化架构变得更加重要。

虚拟化的主要类型有哪些?

虚拟化可应用于计算系统的不同层级,具体取决于工作负载和基础设施的要求。

网络虚拟化

网络虚拟化将网络功能与物理硬件分离,支持虚拟交换机和路由器等软件定义网络组件。

存储虚拟化

存储虚拟化将物理存储资源整合到存储池中,并以逻辑存储系统的形式供应用使用,从而能够提高效率并简化管理。

数据中心虚拟化

数据中心虚拟化整合了计算、内存、存储和网络虚拟化,可构建完全由软件定义的环境,以支持云平台和基础设施即服务 (IaaS)

虚拟化是如何应用的?

虚拟化是云计算和现代 IT 基础设施的关键支撑技术。虚拟化可减少对专用物理硬件的需求,有助于企业降低成本、提高资源利用率,并支持企业更轻松地扩展计算环境。在云平台中,虚拟化技术支持按需分配资源,以及随着工作负载变化进行弹性伸缩。

在开发和测试环境中,虚拟化技术使得创建隔离系统更加容易,支持在不影响生产系统的前提下进行软件构建、测试和验证。

常见问答

有关虚拟化的常见问答

虚拟化支持多个系统共享一台物理机器,可提高硬件利用率。虚拟化支持可扩展性,可降低基础设施成本,并能加快应用和服务的部署速度。虚拟化还通过工作负载迁移和备份等功能,简化了系统管理,并有助于维持业务连续性。

与传统的物理系统相比,虚拟化环境的管理可能更为复杂。如果硬件资源被过度分配或者未正确配置,可能会影响性能。要成功实现虚拟化,需要精心的规划、监控以及可靠的底层硬件。

只要设计和管理得当,虚拟化是安全的。安全性取决于虚拟化软件的正确配置、不同环境之间的隔离性、访问控制以及持续监控。只要遵循这些最佳实践,虚拟化就能在保持灵活性和可扩展性的同时,提供强大的安全性。