计算虚拟化技术
🧠 一、什么是计算虚拟化?(基础认识)
✅ 基本概念:
- 计算虚拟化(Compute Virtualization) 是指:在一台物理服务器上模拟多个“虚拟计算资源”,每个虚拟机看起来像是一台独立的服务器。
📚 你需要搞懂:
概念 | 说明 |
---|---|
虚拟机(VM) | 模拟出来的“假服务器”,跑在真实服务器上 |
虚拟化 | 一种技术手段,把真实硬件“抽象化”成软件 |
Hypervisor | 虚拟化的核心软件,负责创建/管理虚拟机 |
容器(Container) | 更轻量的“应用运行盒子”,不是虚拟机 |
宿主机 | 托管虚拟机或容器的真实物理服务器 |
🧱 二、虚拟化的核心技术组成
这是计算虚拟化的基础技术栈,你要理解它们各自负责什么:
组成部分 | 内容 |
---|---|
CPU虚拟化 | 把一个 CPU 分成多个“虚拟CPU”供不同虚拟机使用 |
内存虚拟化 | 不同 VM 之间如何共享 / 隔离物理内存 |
硬盘虚拟化 | 为 VM 创建虚拟硬盘(VMDK、QCOW2 格式等) |
网络虚拟化 | 每台 VM 如何联网?用虚拟交换机连接(vSwitch) |
I/O 虚拟化 | 虚拟机怎么访问 USB、磁盘、PCI 等硬件设备? |
🧩 三、虚拟化类型(你需要分清)
类型 | 举例 | 简介 |
---|---|---|
全虚拟化(Full Virtualization) | VMware ESXi、KVM | 虚拟机完全模拟真实硬件 |
半虚拟化(Para Virtualization) | Xen | 客户端需配合使用特定驱动 |
操作系统级虚拟化(容器) | Docker、LXC | 共享内核,资源开销更小 |
硬件辅助虚拟化 | Intel VT-x、AMD-V | 提高性能,CPU支持的虚拟化 |
🧰 四、主流虚拟化平台(工具/软件)
你可以选择某一个深入学习:
平台 | 类型 | 特点 |
---|---|---|
VMware ESXi / vSphere | 商业虚拟化平台 | 功能强大、企业常用 |
KVM(Kernel-based Virtual Machine) | 开源 | Linux 上的核心虚拟化技术 |
VirtualBox | 桌面虚拟机 | 学习练习很好用 |
QEMU | 模拟器 + 虚拟机 | 与KVM搭配使用 |
Xen | 半虚拟化平台 | 曾广泛应用于 AWS |
📦 五、虚拟化技术需要掌握的专业概念(推荐按顺序学)
-
什么是虚拟化?为什么要虚拟化?
-
虚拟机 vs 容器,有什么区别?
-
Hypervisor(虚拟机监控器)的种类与原理
- Type 1(裸机型):VMware ESXi、KVM
- Type 2(宿主型):VirtualBox、VMware Workstation
-
CPU虚拟化与硬件辅助虚拟化(Intel VT-x、AMD-V)
-
内存虚拟化机制:MMU、页面映射、共享内存(KSM)
-
虚拟网络:vNIC、vSwitch、桥接、NAT、Overlay
-
虚拟磁盘格式:VMDK、VHD、QCOW2
-
虚拟机的启动流程:BIOS → 引导 → 系统加载
-
快照、克隆、模板 的使用
-
虚拟化安全性:资源隔离、逃逸风险、防护策略
-
容器和虚拟机的异同:使用场景、资源效率
🖥 六、学习路线建议(零基础适用)
阶段 | 建议内容 | 工具 |
---|---|---|
入门 | 了解虚拟机/容器基本原理 | YouTube/B站 讲解视频 |
实践 | 在自己电脑装 VirtualBox,创建虚拟机 | VirtualBox + Ubuntu |
进阶 | 学会搭建 KVM 或 VMware ESXi | Linux系统、物理机 |
理论 | 学操作系统、CPU虚拟化原理 | 《现代操作系统》 |
深度 | 研究容器(Docker)、Kubernetes | Docker Desktop |
📘 补充:推荐关键词(用于搜索学习)
- “什么是计算虚拟化”
- “虚拟机与容器的区别”
- “KVM 虚拟化原理入门”
- “Hypervisor 工作原理图解”
- “如何使用 VirtualBox 安装 Ubuntu”
- “Docker 和虚拟机的区别”
- “vCPU 是什么”
- “什么是裸金属服务器”
✅ 总结一句话
想学懂计算虚拟化,先理解“一台物理机如何模拟出很多小服务器”,再逐步掌握 CPU/内存/网络/磁盘虚拟化的原理与工具。