虚拟化实战:KVM 热迁移 + VMware ESXivCenter 实验全记录

发布时间:2026/10/24 6:42:56
虚拟化实战:KVM 热迁移 + VMware ESXivCenter 实验全记录

虚拟化实战:KVM 热迁移 + VMware ESXi/vCenter 实验全记录

前言

在云计算与虚拟化技术中,虚拟机迁移是保障业务连续性、服务器硬件维护、资源弹性调度的核心能力。 KVM 是开源主流虚拟化方案,ESXi 是企业级商业虚拟化代表。本文基于两套完整实验,带你分别实操KVM 基于 NFS 共享存储的热迁移,以及在 VMware Workstation 模拟环境下部署 ESXi7.0 + vCenter Server (VCSA),理解虚拟化共享存储、虚拟机生命周期、企业虚拟化平台搭建的核心思想。

实验环境说明:全部实验运行在 VMware Workstation Pro 17,使用 NAT 网络,网段规划:192.168.108.0/24,适合学习、练习虚拟化原理,生产环境需要做硬件、网络、存储的进一步优化。

一、KVM 热迁移实验:业务不中断搬迁虚拟机

什么是热迁移?

热迁移(Live Migration):虚拟机业务运行状态下,从一台宿主机搬迁到另外一台宿主机,业务只产生极短时间的卡顿,不需要关机停机。

✅ 典型生产使用场景

  1. 服务器硬件维护、版本升级:把主机上所有虚拟机迁移走,再对物理机操作,规避停机风险。
  2. 节能减排:整合业务到少量服务器,关闭空闲服务器,降低电力消耗。
  3. 负载均衡:将虚拟机从高负载主机调度到空闲主机,平衡集群资源。

⚠️核心硬性前提:共享存储源宿主机、目标宿主机不能使用本地磁盘存放虚拟机磁盘文件,必须使用 NFS、Ceph RBD、iSCSI 等共享存储。磁盘数据本身不迁移,只迁移虚拟机内存页、CPU 寄存器、设备运行状态。

热迁移内部工作流程

  1. 目标宿主机创建一台硬件规格完全一致的空虚拟机。
  2. 迭代拷贝源虚拟机内存:第一轮拷贝全部内存,后续循环拷贝迁移过程中新产生变更的内存脏页;
  3. 当脏页数据量缩小到阈值,短暂暂停源虚拟机,把剩余少量状态数据迁移完成;
  4. 在目标主机拉起虚拟机,源主机清理旧虚拟机实例,业务切换完成。

实验环境规划

表格

虚拟机IP 地址角色
KVM1192.168.108.101源 KVM 虚拟化宿主机
KVM2192.168.108.102目标 KVM 虚拟化宿主机
NFS192.168.108.100NFS 共享存储服务器

实验搭建步骤:

  1. 在 VMware Workstation 对 KVM1 做好快照,通过完整克隆快速生成 KVM2、NFS 三台虚拟机。

注意:不要使用链接克隆,链接克隆虚拟机存在依赖,实验环境容易出现异常。

  1. 修改主机名、静态 IP,三台机器统一/etc/hosts域名解析,使用 scp 命令把 hosts 配置批量分发到另外两台机器,保证主机名互通。
  2. NFS 服务端配置共享目录 编辑/etc/exports配置共享权限:
/nfs *(rw,no_root_squash,no_subtree_check)

启动 nfs‑server 服务,关闭防火墙,使用showmount -e localhost验证共享发布成功。

  1. KVM1、KVM2 客户端:创建本地挂载目录/NFS。打开virt‑manager(虚拟机管理器),添加netfs(NFS)类型存储池,对接 NFS 服务器共享目录。两台 KVM 宿主机看到同一套共享存储。
  2. 在 KVM1 上,选择 NFS 共享存储池创建一台 CentOS7 虚拟机,虚拟机磁盘文件存放在 NFS,不能放在 KVM 本地磁盘。

执行热迁移实操

  1. KVM1、KVM2 关闭防火墙,避免迁移端口被拦截。
  2. virt‑manager 图形界面,右键正在运行的虚拟机,选择Migrate迁移。
  3. 目标主机选择 KVM2,迁移模式 Direct,端口 49152,点击 Migrate。
  4. 等待迁移完成,观察界面:运行中的虚拟机从 KVM1 节点转移到 KVM2 节点,虚拟机业务不会关机。

❗排坑要点

  1. 虚拟机磁盘必须放在共享存储,本地磁盘无法热迁移;
  2. 两台宿主机 CPU 型号尽量一致,异构 CPU 需要开启 CPU 兼容模式;
  3. 防火墙、selinux 会阻碍迁移,实验环境可以直接关闭。

二、企业虚拟化:VMware ESXi7.0 + vCenter Server (VCSA) 部署

KVM 是开源虚拟化,而 VMware vSphere 是企业生产环境广泛使用的虚拟化栈,ESXi 是底层 Hypervisor,vCenter(VCSA)实现多 ESXi 集中管理、vMotion 迁移、HA 高可用等高级特性。

注意:真实生产 ESXi 直接安装物理服务器,本文是在 Workstation 中嵌套运行 ESXi,用于学习实验。

1. ESXi7.0 虚拟机安装

  1. 在 Workstation 新建虚拟机,客户机操作系统选择VMware ESXi 7;配置 CPU、内存,添加 4 块网卡,挂载 ESXi 安装 ISO 镜像。

  2. 开机进入 ESXi 安装程序,接受 EULA 许可,选择磁盘安装,设置 root 密码,完成后重启。

  3. 按

    F2

    进入系统定制界面,输入 root 密码,配置管理网络:

    • 将多块网卡加入管理网络;
    • 设置静态 IPv4 地址、网关、DNS;保存网络配置。
  4. 浏览器打开https://ESXi‑IP访问 ESXi Web 客户端。ESXi 默认 60 天评估模式,可以导入许可证解锁全部功能。

2. ESXi 基础存储与虚拟机管理

  1. 给 ESXi 虚拟机新增硬盘,网页端新建VMFS‑6 数据存储。

VMFS 是 VMware 专属文件系统,专门存放虚拟机磁盘。

  1. 在数据存储中创建 iso、vm 目录,上传 Windows ISO 镜像。
  2. 创建 Windows10 虚拟机:选择上传好的 ISO 镜像,配置 CPU、内存、磁盘。这里重点理解三种磁盘置备模式:

表格

置备模式特点适用场景
精简置备创建速度快,磁盘空间按需分配,实际占用小于设定大小数据盘、测试环境
厚置备‑延迟置零一次性分配全部空间,但不做格式化,使用的时候再清零非核心业务盘
厚置备‑置零创建时完成全盘格式化,IO 性能最好,耗时较长系统盘,生产虚拟机
  1. Windows 系统安装完成之后优化:
    • 使用lusrmgr.msc开启内置Administrator管理员账户,删除安装过程新建普通账号;
    • 安装VMware Tools,实现虚拟机监控时间同步、鼠标优化、资源状态采集。
  2. ESXi 常用功能:监控虚拟机 CPU / 内存 / 网络资源;设置虚拟机开机自启;拍摄快照做备份,快照可以快速回滚系统中毒、配置错误的故障环境。

3. 部署 vCenter Server Appliance (VCSA)

单台 ESXi 只能单机管理,多台 ESXi 集群、vMotion、HA 高级功能,需要部署 VCSA。VCSA7.0 已经不再提供 Windows 版本,是独立 Linux 虚拟机设备。

前置准备

  • ESXi 主机增加硬盘、扩容内存;新建独立 VMFS 数据存储用于存放 VCSA 虚拟机。

部署流程

  1. Windows 主机挂载 VCSA 完整 ISO 镜像,进入目录vcsa‑ui‑installer\win32,运行installer.exe。
  2. 选择【安装】,接受许可协议;填写要部署的 ESXi 主机 IP、root 账号密码。

⚠️注意区分两个密码:ESXi 主机 root 密码 和VCSA 虚拟机自身 root 密码,二者相互独立,新手极易混淆。

  1. 选择部署规模,实验环境选择微型;选择刚刚准备好的数据存储,可开启精简置备。
  2. 配置 VCSA 静态 IP、网关、DNS,确认配置,执行第一阶段部署,自动在 ESXi 上创建 VCSA 虚拟机。

部署完成后,就可以登录 vCenter 网页,添加多台 ESXi 主机,后续就可以体验企业级的 vMotion 迁移、集群高可用等高级特性。

三、KVM vs VMware ESXi 核心对比总结

表格

对比项KVM(Libvirt/virt‑manager)VMware ESXi+vCenter
许可证完全开源免费ESXi 免费版功能受限,高级特性需要商业授权
热迁移libvirt 热迁移,依赖 NFS/Ceph 共享存储vMotion,依赖共享存储(VMFS/NFS/vSAN)
管理工具virt‑manager、virsh 命令行ESXi WebUI,vCenter Server 集中管理多主机
适用场景中小企业、私有云、开源云平台 OpenStack大型政企、数据中心,成熟稳定企业虚拟化
实验环境Linux 宿主机运行 KVM可嵌套部署在 VMware Workstation 做学习

四、学习感悟

  1. 共享存储是虚拟机热迁移的基石。不管是开源 KVM 还是商业 VMware vMotion,热迁移不能依靠拷贝本地磁盘,磁盘必须多台主机同时可访问。
  2. 虚拟化两大价值:资源池化 + 业务不中断运维。热迁移就是 “业务不中断运维” 的代表性技术,服务器升级、硬件故障规避都靠它。
  3. 嵌套虚拟化(VMware 里面跑 KVM、VMware 里面跑 ESXi)适合做学习实验,但嵌套会损耗性能,绝对不能用于生产业务。

拓展思考:热迁移也有局限性,内存变化极其剧烈的高负载业务,脏页无法收敛,会迁移失败,此时只能使用冷迁移(关机迁移)。