Skip to main content
☘️ Septvean's Documents
Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Back to homepage

虚拟化

虚拟化(Virtualization) 是把一套物理资源(CPU / 内存 / 磁盘 / 网络)抽象成多套逻辑资源,让多套系统或应用相互隔离、同时运行的技术。

一、虚拟化的本质

在不增加物理机器的前提下,提高资源利用率、隔离性和可管理性

二、虚拟化的核心类型

1️⃣ 硬件虚拟化(最常见)

在一台物理机上运行多个 虚拟机(VM)

架构

硬件
 └── Hypervisor
      ├── VM1 (OS + App)
      ├── VM2 (OS + App)
      └── VM3 (OS + App)

Hypervisor 分类

类型 说明 代表
Type 1(裸金属) 直接跑在硬件上 ESXi / Hyper-V / Xen
Type 2(宿主机) 跑在宿主 OS 上 VirtualBox / VMware Workstation

特点

  • ✅ 隔离强
  • ❌ 有 OS 开销
  • ❌ 启动慢(秒~分钟)

2️⃣ 操作系统级虚拟化(容器)

多个应用共享 同一个内核

架构

硬件
 └── Host OS
      └── Container Runtime
           ├── Container1 (App)
           ├── Container2 (App)
           └── Container3 (App)

代表

  • Docker
  • Podman
  • Kubernetes(容器编排)

特点

  • ✅ 启动极快(毫秒级)
  • ✅ 资源利用率高
  • ❌ 隔离性 < VM
  • ❌ 依赖内核能力

3️⃣ 网络虚拟化

把物理网络抽象成逻辑网络

  • VLAN
  • VXLAN
  • SDN(OpenFlow)
  • Kubernetes CNI(Calico / Flannel)

👉 云、K8S 的底座

4️⃣ 存储虚拟化

多块物理盘 -> 统一逻辑存储池

  • LVM
  • Ceph
  • SAN / NAS
  • 云盘(EBS / Cinder)

5️⃣ 桌面 / 应用虚拟化(了解)

  • VDI
  • RemoteApp
  • Citrix

三、CPU 虚拟化(重点原理)

没有硬件辅助(早期)

  • 指令陷阱
  • 二进制翻译
  • 性能差

现在(主流)

  • Intel VT-x
  • AMD-V

👉 CPU 原生支持虚拟化,性能接近物理机

四、内存虚拟化(关键难点)

常见技术

  • 页表映射(Shadow Page Table)
  • EPT / NPT(二级页表)
  • Ballooning
  • HugePage

问题

  • 内存超分
  • NUMA 影响
  • OOM 风险

五、I/O 虚拟化

类型 说明
半虚拟化 virtio
全虚拟化 模拟设备
直通 PCI Passthrough
SR-IOV 网卡虚拟功能

👉 高性能场景(数据库、网络)

六、虚拟化 vs 容器

维度 虚拟机 容器
内核 各自 OS 共享
启动
隔离
密度
典型 ESXi Docker

结论:

  • 强隔离 -> VM
  • 微服务 / DevOps -> 容器
  • 云平台 -> VM + 容器混合

七、虚拟化在云计算中的位置

IaaS -> 虚拟机 / 网络 / 存储
PaaS -> 容器 / 平台
SaaS -> 应用

👉 虚拟化是云计算的地基

八、虚拟化的典型应用场景

  • 服务器整合(1 台顶 10 台)
  • 云平台(OpenStack / 公有云)
  • 测试环境
  • 灾备 / 快照 / 迁移
  • Kubernetes 节点

九、常见虚拟化平台

企业级

  • VMware vSphere
  • Microsoft Hyper-V
  • OpenStack
  • Proxmox VE

Linux / 云原生

  • KVM + QEMU
  • libvirt
  • Docker / Podman
  • Kubernetes

十、运维必会问题

  • CPU 超分比例怎么算?
  • NUMA 如何绑定?
  • VM 卡顿怎么排查?
  • 容器逃逸是什么?
  • SR-IOV 如何配置?
  • 虚拟化 vs 裸金属数据库?

总结

虚拟化 = 资源抽象 + 隔离 + 调度,是现代云、容器、分布式系统的起点