个人用云计算学习笔记 --24 虚拟化、KVM 基础使用与热迁移实验、VMware ESXi笔记

文章目录

虚拟化技术

一、虚拟化基础概念

1. 核心定义与组件

  • 虚拟化:通过虚拟化软件层(Hypervisor)将物理服务器的硬件资源(CPU、内存、存储等)抽象为虚拟硬件,为多个独立虚拟机提供运行环境,实现物理资源高效复用的技术。

  • 关键组件

    • 物理机(Host Machine):搭载硬件与 Host OS(物理机操作系统)的实体服务器;
    • 虚拟机(Guest Machine):运行在虚拟化层之上的虚拟服务器,搭载 Guest OS(虚拟机操作系统)与应用;
    • Hypervisor(虚拟机监控程序 / VMM):连接物理资源与虚拟机的核心中间层,负责资源虚拟化与分配。

二、虚拟化发展史

1. 关键时间线与里程碑事件

时间 核心事件
1964 年 IBM 开始在大型机上尝试虚拟化
1972 年 IBM 推出运行在大型机上的虚拟机
1999 年 Xen 正式被开源
2002 年 VMware 推出 x86 架构的虚拟化产品
2006 年 Qumranet 宣布 KVM 诞生
2008 年 微软在 Windows Server 2008 R2 中加入 Hyper-V;Linux 容器 LXC 推出
2010 年 IBM、红帽、惠普和英特尔成立开放虚拟化联盟,加速 KVM 推广
2011 年 红帽 6.0 版本中默认仅提供 KVM 虚拟化机制
2013 年 Docker 推出
2014 年 Rocket 推出

2. 主流虚拟化技术选型

  • 开源方案:KVM(大型企业首选,需具备研发能力);
  • 商业方案:VMware ESXI(中小型企业首选,易用性强);
  • 国产方案:FusionCompute(适配国内企业需求)。

三、虚拟化类型及特性

类型 核心实现方式 关键特点
全虚拟化 VMM 实现 CPU、内存、设备 I/O 全虚拟化 无需修改 Guest OS 与硬件,兼容性好;但处理器有额外开销
半虚拟化 VMM 负责 CPU 和内存虚拟化,设备 I/O 虚拟化由 Guest OS 实现 需修改 Guest OS 以协同 VMM,兼容性差;性能优于全虚拟化
硬件辅助虚拟化 借助 CPU 等硬件支持实现高效全虚拟化 无需修改 Guest OS,兼容性与性能兼具,是当前主流发展趋势

注:目前行业已全面采用硬件辅助虚拟化,依赖 CPU 硬件层面的指令集支持。

四、硬件辅助虚拟化的 CPU 支持要求

1. 必备指令集

  • Intel 处理器:需支持 VT-x、vmx 指令集;
  • AMD 处理器:需支持 AMD-V、vmx 指令集。

2. 支持状态检测工具与方法

  • 工具:CPU-Z、LeoMoon CPU-V、Windows 任务管理器、systeminfo 命令;
  • 检测要点:需确认 CPU 是否支持对应指令集,且 BIOS 中已启用虚拟化功能(如虚拟机监视器模式扩展、二级地址转换等)。

五、虚拟化核心特性

1. 四大核心特性

  • 分区:单台物理服务器可划分多个独立资源区域,同时运行多台虚拟机,每台虚拟机搭载独立操作系统与应用,仅感知虚拟硬件。
  • 隔离:虚拟机间相互独立,一台虚拟机的故障(如蓝屏、病毒感染)不会影响其他虚拟机;支持资源配额控制,避免单台虚拟机占用全部资源。
  • 封装:虚拟机的完整运行环境(硬件配置、BIOS、内存 / 磁盘 / CPU 状态)被封装为独立文件,可通过复制、移动文件实现虚拟机迁移。
  • 硬件独立:虚拟机依赖虚拟化层提供的虚拟硬件,与物理服务器硬件无关,无需修改即可在任意 x86 架构服务器(IBM、Dell、HP 等)上运行。

2. 隔离特性验证实验

  • 实验逻辑:同时开启两台虚拟机,使其中一台触发蓝屏故障,观察另一台虚拟机的运行状态;
  • 实验结论:故障虚拟机不会影响其他虚拟机的正常运行,验证隔离特性的有效性。

KVM 基础使用与热迁移实验笔记

一、KVM 基础使用

(一)图形界面操作(virt-manager)

  1. 调出方式:图形界面在应用列表找 "Virtual Machine Manager",或命令行输入 virt-manager

  2. 镜像上传:用 MobaXterm 等工具通过 SFTP 连接 KVM 主机(IP:192.168.108.101,端口 22),创建 /iso 目录存放镜像,上传后验证路径。

  3. 虚拟机创建:

    • 新建虚拟机,选择 "本地光盘安装",浏览至 /iso 目录选择镜像,自动识别系统类型。

      • 配置资源:内存(如 4096MiB)、CPU(如 2 核)、磁盘容量(如 40GiB),设置虚拟机名称(如 win7)。
    • Windows 7 安装:按 Shift+F10 调出 CMD,输入 lusrmgr.msc 启用 Administrator 账户。

      上面这个界面按shift+F10跳出CMD,有些笔记本需要多按Fn

      账户已禁用去勾选



  1. 快照管理:关闭虚拟机后,在配置界面点击 "Create new snapshot",输入名称和描述即可创建。

  2. 设备扩展:支持通过图形界面为虚拟机添加硬盘、网卡等设备。

(二)命令行操作(virsh/qemu-img/virt-install)

  1. 核心命令:

    • 版本查看:virsh version
    • 虚拟机管理:启动 virsh start 虚拟机名、关机 virsh shutdown 虚拟机名、强制关闭 virsh destroy 虚拟机名、挂起 virsh suspend 虚拟机名、恢复 virsh resume 虚拟机名、列出所有 virsh list --all
    • 自启动设置:启用 virsh autostart 虚拟机名、禁用 virsh autostart --disable 虚拟机名
    • 配置文件:查看 virsh dumpxml 虚拟机名、编辑 virsh edit 虚拟机名
  2. 磁盘操作:

    • 创建磁盘:qemu-img create -f qcow2 磁盘路径 大小(如 /disk/vm2.qcow2 20G
    • 查看磁盘信息:qemu-img info 磁盘路径
  3. 命令行创建虚拟机(virt-install):

    bash 复制代码
    virt-install --name 虚拟机名 --memory 内存大小 --vcpus 核数 --disk path=磁盘路径 --location 镜像路径 --network network=default --noautoconsole
    • 示例:创建 CentOS 7 虚拟机 vm2,内存 4096MiB,2 核 CPU,磁盘路径 /disk/vm2.qcow2,镜像路径 /iso/CentOS-7-x86_64-Minimal-1810.iso
  4. 虚拟机管理方式:图形界面直接操作,或通过 VNC 连接(创建时指定 --vnclisten=0.0.0.0 --vncport=5903 --vnc,关闭防火墙后连接 IP:端口)。

二、KVM 热迁移实验

(一)实验环境准备

  1. 节点规划:

    • KVM1:192.168.108.101(源主机)

    • KVM2:192.168.108.102(目标主机,通过 KVM1 完整克隆)

    • NFS 服务器:192.168.108.100(共享存储,完整克隆)

  2. 基础配置:

    • 修改 KVM2 和 NFS 主机名:hostnamectl set-hostname 主机名,刷新终端 bash
    • 配置 IP 地址:编辑 /etc/sysconfig/network-scripts/ifcfg-ens160,修改 IPADDR,重启网络 nmcli connection reload 网卡名
    • 同步 hosts 文件:KVM1 编辑 /etc/hosts 添加三节点映射,KVM2 和 NFS 通过 scp 复制该文件。

(二)共享存储配置(NFS)

  1. NFS 服务器操作:
    • 创建共享目录:mkdir /nfs
    • 编辑配置文件:vim /etc/exports,添加 /nfs *(rw,no_root_squash,no_subtree_check)
    • 重启服务:systemctl restart nfs-server.service,关闭防火墙 systemctl stop firewalld.service
    • 测试共享:showmount -e localhost 验证。
  2. KVM1/KVM2 操作:
    • 创建挂载目录:mkdir /NFS
    • 测试连接:showmount -e 192.168.108.100 验证 NFS 共享。
    • 图形界面添加共享存储:打开 virt-manager,进入 "Connection Details",添加存储池,类型选 "Network Exported Directory",填写 NFS 主机名、源路径 /nfs 和目标路径 /NFS

(三)热迁移操作

  1. 前提条件:KVM1、KVM2 关闭防火墙 systemctl stop firewalld.service,虚拟机存储位于共享存储(如 /NFS/centos7.0)。

  2. 迁移步骤:

    • 在 KVM1 的 virt-manager 中,右键运行中的虚拟机(如 centos7.0),选择 "Migrate..."。

    • 目标主机选择 KVM2,填写地址 192.168.108.102,端口默认 49152,选择 "Direct" 模式,点击 "Migrate" 完成迁移。

三、核心命令汇总

(一)基础管理命令

功能 命令
调出图形界面 virt-manager
查看 KVM 版本 virsh version
列出所有虚拟机 virsh list --all
启动虚拟机 virsh start 虚拟机名
关闭虚拟机 virsh shutdown 虚拟机名
强制关闭虚拟机 virsh destroy 虚拟机名
挂起虚拟机 virsh suspend 虚拟机名
恢复虚拟机 virsh resume 虚拟机名
设置自启动 virsh autostart 虚拟机名
禁用自启动 virsh autostart --disable 虚拟机名

(二)磁盘与虚拟机创建命令

功能 命令
创建磁盘 qemu-img create -f qcow2 路径 大小
查看磁盘信息 qemu-img info 磁盘路径
命令行创建虚拟机 virt-install --name 名称 --memory 内存 --vcpus 核数 --disk path=磁盘 --location 镜像 --network default --noautoconsole

(三)热迁移相关命令

功能 命令
重启 NFS 服务 systemctl restart nfs-server.service
关闭防火墙 systemctl stop firewalld.service
测试 NFS 共享 showmount -e NFS服务器IP

四、注意事项

  1. 操作前关闭防火墙,避免端口拦截(如 SSH、VNC、NFS 相关端口)。
  2. 热迁移需确保源主机和目标主机的存储、网络配置一致,依赖共享存储(NFS)实现磁盘数据共享。
  3. Windows 系统安装时需启用 Administrator 账户,通过命令行操作完成配置。
  4. 命令行创建的虚拟机可通过图形界面或 VNC 连接管理,灵活适配不同使用场景。

VMware ESXi

一、ESXi 基础定义与定位

  • 定义:VMware 推出的商业级裸金属虚拟化 Hypervisor(虚拟机监控程序 / VMM),直接安装在物理服务器硬件上,无需依赖底层操作系统(Host OS),可将物理资源抽象为虚拟硬件,为多个虚拟机(Guest Machine)提供独立运行环境。
  • 核心定位:虚拟化技术文档中明确的主流商业虚拟化方案,适配中小型企业(无复杂研发能力),是私有云、混合云架构中核心的虚拟化基础设施组件。

二、ESXi 核心特性(契合虚拟化四大核心特点)

1. 分区特性

  • 支持单台物理服务器划分多独立资源区域,同时运行多台虚拟机,每台虚拟机可搭载不同操作系统(如 Ubuntu、Windows、Redhat)及应用,仅感知 ESXi 提供的虚拟硬件(CPU、内存、网卡等)。

2. 隔离特性

  • 虚拟机间完全隔离,单台虚拟机故障(如蓝屏、病毒感染)不会影响其他虚拟机运行;支持资源配额控制,可设置虚拟机最小 / 最大资源使用量,避免资源抢占。

3. 封装特性

  • 虚拟机完整运行环境(硬件配置、BIOS、内存 / 磁盘状态)封装为独立文件(如.vmdk 磁盘文件、.vmx 配置文件),可通过复制、移动文件实现跨服务器迁移。

4. 硬件独立特性

  • 虚拟机依赖 ESXi 提供的标准化虚拟硬件,与物理服务器硬件无关,无需修改即可在任意兼容的 x86 服务器(IBM、Dell、HP 等)上运行,打破硬件与操作系统的约束。

三、ESXi 所属虚拟化类型与技术原理

  • 所属类型:硬件辅助虚拟化(当前行业主流),依赖 CPU 硬件指令集支持(Intel VT-x、vmx 或 AMD AMD-V、vmx)。

  • 技术优势:无需修改 Guest OS,兼具全虚拟化的兼容性与接近物理机的性能,消除了传统软件虚拟化的额外开销。

  • 与其他类型对比:

    虚拟化类型 ESXi 适配性 核心差异
    全虚拟化 不适用(ESXi 为硬件辅助虚拟化) 软件模拟硬件,有 CPU 额外开销
    半虚拟化 不适用 需修改 Guest OS,兼容性差
    硬件辅助虚拟化 完全适配 依赖 CPU 硬件支持,兼容性 + 性能兼具

四、ESXi 硬件支持要求

1. CPU 核心要求

  • 必须支持硬件辅助虚拟化指令集:Intel 处理器需支持 VT-x、vmx;AMD 处理器需支持 AMD-V、vmx。
  • 检测工具:可通过 CPU-Z、LeoMoon CPU-V、systeminfo 命令验证 CPU 指令集支持及 BIOS 中虚拟化功能启用状态。

2. 其他硬件兼容

  • 适配主流 x86 服务器硬件(内存、存储、网卡),支持与华为云等云服务对接(如混合云备份、跨平台资源调度)。

五、ESXi 与其他虚拟化方案对比(基于文档分类)

方案类型 代表产品 适用场景 核心差异
商业方案 VMware ESXi 中小型企业(无研发能力) 易用性强、稳定性高、商业技术支持完善
开源方案 KVM 大型企业(具备研发能力) 免费、可定制化,需自行维护
国产方案 FusionCompute 国内企业(适配国产化需求) 自主可控,支持国产化硬件 / 操作系统

六、ESXi 核心优势(文档隐含特性延伸)

  • 轻量高效:微内核架构,占用物理资源少(仅需数百 MB 存储空间),虚拟化开销低,最大化释放硬件性能。
  • 集中管理:可通过 vCenter Server 集中管理多台 ESXi 主机,实现虚拟机生命周期管理、资源调度、集群高可用(HA)配置。
  • 稳定可靠:支持虚拟机热迁移(vMotion)、硬件故障自动检测、数据冗余存储,保障业务不中断。

七、典型应用场景

  • 中小型企业 IT 基础设施虚拟化:将多台物理服务器整合为 ESXi 集群,运行办公系统、数据库、Web 应用等,降低硬件采购与运维成本。
  • 开发测试环境搭建:快速创建 / 销毁虚拟机,为不同开发 / 测试任务提供独立环境,提升研发效率。
    MB 存储空间),虚拟化开销低,最大化释放硬件性能。
  • 集中管理:可通过 vCenter Server 集中管理多台 ESXi 主机,实现虚拟机生命周期管理、资源调度、集群高可用(HA)配置。
  • 稳定可靠:支持虚拟机热迁移(vMotion)、硬件故障自动检测、数据冗余存储,保障业务不中断。

七、典型应用场景

  • 中小型企业 IT 基础设施虚拟化:将多台物理服务器整合为 ESXi 集群,运行办公系统、数据库、Web 应用等,降低硬件采购与运维成本。
  • 开发测试环境搭建:快速创建 / 销毁虚拟机,为不同开发 / 测试任务提供独立环境,提升研发效率。
  • 混合云部署:作为私有云核心,与公有云(如华为云)协同,实现资源弹性扩展与数据灾备。
相关推荐
Dying.Light20 小时前
Linux部署问题
linux·运维·服务器
S190120 小时前
Linux的常用指令
linux·运维·服务器
萤丰信息20 小时前
AI 筑基・生态共荣:智慧园区的价值重构与未来新途
大数据·运维·人工智能·科技·智慧城市·智慧园区
(❁´◡`❁)Jimmy(❁´◡`❁)20 小时前
Exgcd 学习笔记
笔记·学习·算法
傻小胖20 小时前
21.ETH-权益证明-北大肖臻老师客堂笔记
笔记·区块链
小义_20 小时前
【RH134知识点问答题】第7章 管理基本存储
linux·运维·服务器
运维小欣20 小时前
Agentic AI 与 Agentic Ops 驱动,智能运维迈向新高度
运维·人工智能
_运维那些事儿21 小时前
VM环境的CI/CD
linux·运维·网络·阿里云·ci/cd·docker·云计算
云小逸21 小时前
【nmap源码学习】 Nmap网络扫描工具深度解析:从基础参数到核心扫描逻辑
网络·数据库·学习
Trouvaille ~1 天前
【Linux】UDP Socket编程实战(一):Echo Server从零到一
linux·运维·服务器·网络·c++·websocket·udp