1.虚拟化的三大分类维度
维度一:按「资源类型」分(最常用)
| 分类 | 代表技术 | 说明 |
|---|---|---|
| 操作系统虚拟化 | Docker、LXC、OpenVZ | 容器,共享宿主机内核 |
| 应用程序虚拟化 | Java JVM、Python虚拟环境 | 应用隔离,不虚拟硬件 |
| 桌面应用虚拟化 | Citrix、VDI、华为云桌面 | 远程桌面,应用跑在服务器 |
维度二:按「硬件调用模式」分(CPU级)
| 分类 | 原理 | 代表 |
|---|---|---|
| 全虚拟化 | 不修改客户OS,硬件辅助虚拟化(VT-x/AMD-V) | VMware、KVM、VirtualBox |
| 半虚拟化 | 修改客户OS,发超调用 | Xen(早期模式) |
现在 99% 都是全虚拟化,半虚拟化只剩历史考试题。
维度三:按「应用模式/多租户」分
| 分类 | 含义 | 典型场景 |
|---|---|---|
| 一对多 | 一台物理机 → 多台虚拟机/容器 | 虚拟化、容器化 |
| 多对一 | 多台物理机 → 一台逻辑机 | 集群、网格计算 |
| 多对多 | 多台物理机 → 多个虚拟资源池 | 云操作系统、分布式调度 |
2.基于虚拟机的虚拟化
虚拟化是云计算的基础。简单来说,虚拟化就是在一台物理服务器上,运行多台“虚拟服务器”。这种虚拟服务器,也叫虚拟机。
从表面来看,这些虚拟机都是独立的服务器,但实际上,它们共享物理服务器的CPU、内存、硬件、网卡等资源。
物理机,通常称为“宿主机(Host)”。虚拟机,则称为“客户机(Guest)”。
3.基于容器的虚拟化
容器是没有 Guest OS 的轻量级虚拟机,多个容器共享一个 OS 内核,容器中包含需要部署的应用和它依赖的系统环境,容器大小通常只有几十到几百 MB。由于共享操作系统内核,所以容器依赖于底层的操作系统,各个操作系统大都有自己的容器技术和容器工具。
4.两种虚拟化的区别
虚拟机由于有 Guest OS 存在,可以和宿主机运行不同OS,而容器只能支持和宿主机内核相同的操作系统。
容器比虚拟机明显更轻量级,对宿主机操作系统而言,容器就跟一个进程差不多。因此容器有着更快的启动速度(秒级甚至更快),更高密度的存储和使用(镜像小)、更方便的集群管理等优点。

云计算与虚拟化
1.两者的关系与差别
对云计算和虚拟化差别的描述,有一句经典的话:虚拟化是云计算构建资源池的一个主要方式。只要这句话你理解透了就知道他俩的关系了。
我们从以下三个方面来解释两种虚拟化的关系:
• 虚拟机的优势
• 云计算的优势
• 云计算与虚拟化的关系
2.各领域的代表产品
云计算架构的开源产品典型代表是OpenStack,OpenStack 是一个由 NASA 和 Rackspace 合作研发并发起
的,以 Apache 许可证授权的自由软件和开放源代码项目。
虚拟化代表产品有VM 的商业付费 vSphere 或者开源的KVM。
容器的虚拟化代表有Docker。
发表回复