概述
虚拟机(VM)是一种具有独立 CPU、内存、网络接口和存储的隔离计算环境,创建于硬件资源池。
虚拟化是虚拟机背后的技术概念,它使一台计算机能够同时充当多台不同的计算机。虚拟机可在同一物理硬件上模拟任意组合的操作系统(OS),从而帮助企业降低成本、简化运维并从现有基础架构中获得更多价值。
什么是虚拟化?
传统虚拟化技术处理的是通常与硬件绑定的资源。该技术可以在多个用户或环境之间分配计算机的容量。
虚拟化技术起源于 20 世纪 60 年代,当时是一种在大型计算机上进行分时共享的技术。如今我们所熟知的虚拟化技术在 21 世纪初开始普及,当时的企业组织都在想方设法充分利用计算资源并优化昂贵硬件的利用率。
虚拟化的类型包括:
- 数据虚拟化:将多个数据源整合为单个动态的数据源。
- 桌面虚拟化:允许通过一个中央管理员来部署和控制多个模拟的桌面环境。
- 服务器虚拟化:允许管理员将服务器划分为多个特定配置,以满足不同的功能需求。
- 操作系统虚拟化:支持在一台计算机上运行多个操作系统。
- 网络功能虚拟化:将网络的功能(例如目录服务、文件共享和 IP 配置)分离出来并分配给各个环境。
红帽资源
虚拟机的工作原理是什么?
运行虚拟机的物理机被称为“主机”、“主机计算机”、“主机操作系统”或简称为“主机”。使用其资源的虚拟机被称为“虚拟客户机”、“虚拟客户计算机”、“虚拟客户机操作系统”或简称为“客户机”。
一种称为虚拟机监控程序的软件可将必要的计算资源进行隔离,且支持创建和管理虚拟机。虚拟机监控程序将 CPU、内存和存储等计算资源视为资源池,从而轻松地在现有客户机或新虚拟机之间重新分配。
每个操作系统的运行方式与操作系统或应用在主机硬件上的常规运行方式相同。因此,虚拟机中模拟的最终用户体验与在物理机上运行实时操作系统的体验几乎完全相同。
只需通过数据文件来定义虚拟机,即可在不同计算机上实现相同的运行效果。虚拟机监控程序会将物理环境中的资源按需分配给各个虚拟机。物理硬件仍然负责执行操作,例如,虚拟机监控程序负责调度管理,CPU 则负责处理虚拟机发出的 CPU 指令。
当虚拟机处于运行状态时,如果用户或程序发出需要从物理环境获取额外资源的指令,虚拟机监控程序会将该请求调度到物理系统的资源上。此物理资源共享池可供虚拟机的操作系统和应用使用。
Linux® 环境中的内置虚拟机监控程序称为基于内核的虚拟机(KVM)。其他虚拟机监控程序包括 Microsoft Hyper-V 和开源的 Xen。
用于虚拟化的虚拟机监控程序分为两种:
1 类:1 类虚拟机监控程序为裸机形式。虚拟机监控程序直接将虚拟机资源调度到硬件上。KVM 就属于 1 类虚拟机监控程序。
2 类:2 类虚拟机监控程序为托管形式。虚拟机的资源被调度分配到主机操作系统上,然后由主机操作系统传递给硬件执行。VMware Workstation 和 Oracle VirtualBox 就是典型的 2 类虚拟机监控程序。
虚拟机的优势
通过允许多个操作系统同时运行且共用相同的硬件资源,虚拟机实现了灵活性,进而带来了诸多优势。
高效的资源利用率
在裸机环境中,大多数操作系统和应用的部署仅使用了可用物理资源的一小部分。借助虚拟机,您可以在每台服务器上部署多个虚拟服务器,从而提高硬件利用率。
利用虚拟机实现服务器整合有助于 IT 企业组织节省成本。您可以减少硬件采购量、降低能耗并节省数据中心的空间。
安全防护和灾难恢复
虚拟机还具有一些安全防护优势。虚拟机环境与系统的其他部分相互隔离,因此,无论虚拟机内部运行什么,都不会干扰主机硬件上运行的其他任何程序。
通过实现故障转移和冗余,虚拟机可支持额外的灾难恢复选项,以前只能通过增加硬件才能实现。
测试环境和隔离进程
由于虚拟机处于隔离状态,因此堪称是测试新应用或设置生产环境的理想之选。此外,您还可以运行单用途虚拟机来支持特定的进程。
随需求扩展的可扩展性
使用虚拟机可以快速启动新的服务器实例。这简化了按需扩展和缩减的过程。您还可以授权开发人员按需创建新环境。
灵活性
由于能够在单个物理硬件上运行多个操作系统,因此,您可以支持更多样化的环境,并充分利用现有资源。
虚拟机和容器有什么区别?
与虚拟机类似,容器也是一种将计算环境的各个组件进行封装并将其与系统其他部分隔离的方法。主要区别在于所隔离的组件不同。
虚拟机包含独立的操作系统,因此能够同时执行多个资源密集型任务。虚拟机能够模拟完整的服务器、操作系统、桌面环境、数据库及网络。
通常情况下,容器较小,且不包含完整的操作系统。现代应用可能会依赖于多个容器,每个容器均执行特定的功能。
虚拟机与云计算有何关系
虚拟化是实现云计算的基础技术。公共云和私有云将资源虚拟化到共享池中,添加一层管理控制,并通过自助式自动化功能提供这些资源。
实现云计算所需的虚拟化、管理和自动化功能的软件均运行于操作系统之上。这一软件层负责维护物理资源、虚拟数据池、管理软件、自动化脚本及客户之间的连接。
为什么选择红帽?
YouTube 视频:OpenShift 虚拟化是否适合您的虚拟机?视频时长:1:57
迁移虚拟机,保持强劲发展势头
红帽值得信赖的产品与合作伙伴生态系统可提供全面的虚拟化解决方案。现在,您可以将虚拟机迁移至红帽® OpenShift® 虚拟化,这是一个基于 KVM 和 KubeVirt 的现代应用平台,它集成了虚拟和容器化工作负载,可在不增加复杂性的情况下提供灵活性。另外,如果需要专用的虚拟化解决方案,可以探索红帽 OpenShift 虚拟化引擎,这是一款流程精简、经济高效的产品,专门用于部署、管理和扩展虚拟机。借助随附的虚拟化迁移工具包,您只需几个简单步骤即可开始迁移。
实现迁移自动化
利用红帽 Ansible® 自动化平台的自动化功能加快迁移速度,涵盖从大规模迁移到 Day2 运维及修复的各个环节。利用这种灵活的方式,您可以自动执行任务,从而提高 IT 运维的速度与效率。
管理您的红帽 OpenShift 虚拟机
利用红帽 Kubernetes 高级集群管理,从单一控制台监控虚拟机的安全性和性能。此外,红帽虚拟化高级集群管理是红帽高级集群管理的一个版本,非常适合希望专门管理虚拟机的企业组织。
虚拟化迁移评估
红帽虚拟化迁移评估采用经验驱动型框架,可帮助您开辟实现虚拟机基础架构迁移的路径。