一、什么是 Hypervisor:硬件和虚拟机之间的"包工头"
"小陈,虚拟化最关键的一层,叫 Hypervisor(虚拟机监视器)。"老周在纸上画:
没有 Hypervisor: 有 Hypervisor:
┌──────────────┐ ┌──────────────────────┐
│ 应用 │ │ VM1 VM2 VM3 ... │ ← 虚拟机
├──────────────┤ ├──────────────────────┤
│ 操作系统 │ │ Hypervisor(包工头) │ ← 虚拟化层
├──────────────┤ ├──────────────────────┤
│ 硬件 │ │ 硬件(CPU/内存/磁盘) │
└──────────────┘ └──────────────────────┘
"Hypervisor 是运行在硬件和虚拟机之间的软件层,它负责'分配'和'调度'物理硬件给每一台虚拟机。 你可以把它想象成'包工头':物理 CPU、内存、磁盘就是'工地的机器',每台虚拟机是'包工队'——包工头决定哪支队伍用哪台机器、用多久。"
"VMware 的 Hypervisor 产品就叫 ESXi(现在叫 vSphere Hypervisor)。它是整个 VMware 虚拟化世界的地基。"
二、Hypervisor 的两种类型:裸机 vs 托管
"Hypervisor 分两种,这是 VCP 考试必考的基础题。"老周说:
类型 1(裸机型 / Bare-metal):
┌────────────────────┐
│ VM1 VM2 VM3 │
├────────────────────┤
│ Hypervisor(ESXi) │ ← 直接跑在硬件上
├────────────────────┤
│ 硬件 │
└────────────────────┘
特点:Hypervisor 自己就是"微型操作系统",直接控制硬件
代表:VMware ESXi、Microsoft Hyper-V、KVM、Xen
场景:服务器、数据中心(生产环境几乎都用类型 1)
类型 2(托管型 / Hosted):
┌────────────────────┐
│ VM1 VM2 VM3 │
├────────────────────┤
│ Hypervisor 软件 │
├────────────────────┤
│ Windows/Mac/Linux │ ← 先装一个普通操作系统
├────────────────────┤
│ 硬件 │
└────────────────────┘
特点:Hypervisor 是装在你日常操作系统上的"一个软件"
代表:VMware Workstation、VirtualBox、Parallels
场景:开发测试、个人电脑(跑个 Linux 练手)
"生产环境用类型 1(ESXi),个人电脑用类型 2(Workstation)——这是最直观的记忆点。"
三、什么是虚拟机(VM):一台"虚拟电脑"
"装好 ESXi 之后,我们就可以在它上面创建虚拟机(VM)了。"老周打开 vSphere Client,演示创建一台 VM:
创建虚拟机向导(关键步骤):
① 名称:web-01(起个好名字,运维的尊严)
② 兼容性:ESXi 8.0 及更高版本
③ Guest OS 类型:Linux / CentOS 8(告诉虚拟化层"这是台什么电脑")
④ 存储位置:选一个数据存储(磁盘放哪,下章讲)
⑤ 配置资源:
CPU:2 核
内存:4 GB
磁盘:100 GB
网卡:1 块(接哪个网络,第五章讲)
⑥ 完成 → 一台"虚拟电脑"诞生了 → 插入安装光盘 → 装系统
"虚拟机从用户(VM 里的操作系统)的角度看,就是一台普通的电脑:有 BIOS、有 CPU、有内存、有硬盘、有网卡。区别只在于——这些'硬件'不是真的硬件,是 Hypervisor 用软件'假装'出来的(这叫硬件虚拟化)。Guest OS 里的程序根本察觉不到自己跑在虚拟机上。"
"VM 在磁盘上其实就是一堆文件(.vmdk 虚拟磁盘、.vmx 配置文件、.nvram BIOS……)。这也是为什么 VM 能随便拷贝、迁移——它本质上是文件!"
四、ESXi 上跑通第一个 VM:云间书店的 Web 服务搬家
小陈按老周指导,把网店的 Web 服务从"万能服务器"迁到了一台新 VM 上:
云间书店虚拟化改造第一步(迁移计划):
物理机上的 7 个服务 → 拆成 7 台 VM:
VM1 web-01 :Nginx + Python Web (2 核 4G)
VM2 db-01 :MySQL (4 核 8G,数据库最重要)
VM3 cache-01 :Redis (2 核 2G)
VM4 file-01 :文件存储 (2 核 4G)
VM5 ai-01 :AI 荐书服务 (4 核 8G)
VM6 mq-01 :消息队列 (2 核 2G)
VM7 monitor-01 :监控 (1 核 1G)
物理机总资源:8 核 32G
7 台 VM 合计:17 核 29G(看起来超了?因为可以"超分"!)
小陈看着资源分配表,疑惑:"师傅,7 台 VM 加起来 17 核,物理机才 8 核?这不是超了吗?"
"问得好!这就是虚拟化的精髓之一——超分(Overcommitment)。"老周说,"物理机 8 核,VM 配置 17 核,听起来不合理,但实际没问题。为什么?因为 7 个服务的 CPU 不会同时满载——Web 高峰期时,Redis 闲着;半夜备份时,Web 闲着。Hypervisor 就是靠'错峰复用',让有限的物理资源服务更多的虚拟机。"
"但是!"老周强调,"超分是'锦上添花',不是'雪中送炭'。数据库这种吃内存的大户,内存绝对不要超分——内存不像 CPU 能排队,内存不够就是不够,会直接 OOM(内存耗尽)。所以我们的策略是:CPU 可以适度超分,内存按需分配、不超分。"
五、vCenter Server:管理多台 ESXi 的"总控台"
"一台 ESXi 能跑几十台 VM。但云间书店以后会有 3 台、5 台 ESXi——难道每台都单独登录管理?"老周说,"所以要上 vCenter Server——VMware 的统一管理平台。"
没有 vCenter: 有 vCenter:
ESXi1 单独管 ┌──────────────────┐
ESXi2 单独管 │ vCenter Server │ ← 统一管理所有
ESXi3 单独管 ├────┬────┬────────┤
(每次要登录三台机器,累死) │ESXi1│ESXi2│ ESXi3 │
└────┴────┴────────┘
vCenter 能干什么:
- 统一管理所有 ESXi 和 VM(一个界面看全部)
- 集中权限控制(给谁开什么权限)
- 高级功能的地基:HA、DRS、vMotion(第六章)
- 模板、克隆、批量部署(第八章)
- 监控、告警、性能图表(第九章)
"记住:单台 ESXi 是'单机版',vCenter 是'网络版'。 生产环境至少要 vCenter 管 2 台以上 ESXi,才有高可用的意义。"
六、章末:老周的第一层总结
第一层:虚拟化基础
├── Hypervisor:硬件与虚拟机之间的"包工头"(调度资源)
├── 类型1(裸机型):ESXi / Hyper-V / KVM → 生产环境
├── 类型2(托管型):Workstation / VirtualBox → 个人电脑
├── 虚拟机(VM):一台"虚拟电脑",本质是文件
├── 超分(Overcommitment):CPU 错峰复用,内存不要超分
└── vCenter:统一管理多台 ESXi 的"总控台"(高级功能的地基)
"小陈,这一层讲完,你已经能创建 VM 了。但你现在创建的 VM 都是'默认配置'——你知道那 4 个配置项(CPU、内存、磁盘、网卡)背后到底是怎么回事吗?"
小陈摇头:"我就跟着向导点……"
"知其然,还要知其所以然。 下一章,我们把一台虚拟机拆开,看看它的四大组成——vCPU、内存、虚拟磁盘、虚拟网卡,它们各自是怎么'假装'出来的。这是你理解后面所有内容(存储、网络、性能)的基础。"