【虚拟化技术】VMware ESXi 安装与操作指南

VMware ESXi 安装与操作指南

1. 概述

1.1 ESXi 简介与核心优势

VMware ESXi(曾用名 ESX,Elastic Sky X)是 VMware 公司开发的企业级裸金属(bare-metal)虚拟化操作系统。它直接安装在物理服务器硬件上,无需依赖底层操作系统即可实现硬件资源虚拟化,是 VMware vSphere 虚拟化平台的核心组件。

ESXi 的核心优势:

特性 说明
裸金属架构 直接运行在硬件上,性能损耗极低,接近物理服务器性能
资源整合 单台物理服务器可运行多个虚拟机,显著提升硬件利用率
高可用性 支持 vSphere HA、vMotion、DRS 等企业级功能
集中管理 通过 vSphere Client / Web Client 集中管理多台主机
隔离性强 虚拟机之间完全隔离,一个虚拟机崩溃不影响其他虚拟机
快照功能 支持虚拟机快照,便于测试和备份回滚
热迁移 支持在运行时迁移虚拟机,实现零停机维护

1.2 版本演进与选型建议

版本历史与关键里程碑:

版本 发布年份 关键特性
ESXi 3.x 2006 初始版本,引入 VMware Virtual Platform
ESXi 4.x 2009 体积大幅缩小,引入 vSphere 功能集
ESXi 5.x 2011 支持 32TB 虚拟机存储、vSphere Distributed Switch
ESXi 6.x 2015 支持 512 虚拟机/主机、Native Driver Stack
ESXi 7.0 2020 支持 NVMe、vSphere with Kubernetes、TPM 2.0
ESXi 8.0 2022 支持 NSX 4.x、Accelerated PState、更新的硬件支持

选型建议:

复制代码
┌─────────────────────────────────────────────────────────────┐
│                    ESXi 版本选择指南                          │
├─────────────────────────────────────────────────────────────┤
│  小规模部署 / 实验室 / 个人学习                                 │
│  → 推荐 ESXi 7.0 或 8.0 免费版(个人用途限制)                   │
│                                                             │
│  中小企业生产环境                                              │
│  → 推荐 ESXi 8.0 + vCenter Standard                          │
│                                                             │
│  大型企业 / 关键业务                                           │
│  → 推荐 ESXi 8.0 + vCenter Enterprise Plus                   │
│    (含 HA、DRS、vSphere Replication 等高级功能)               │
└──────────────────────────────────────────────────────────────┘

⚠️ 注意事项

  • ESXi 7.0 起停止对 32 位操作系统的支持
  • ESXi 8.0 需要 UEFI 启动,不支持传统 BIOS 启动模式
  • 免费版 ESXi 缺少 vMotion、HA 等高级功能,仅适合评估和学习

2. 安装前准备

2.1 硬件要求与兼容性检查

2.1.1 基本硬件要求
组件 ESXi 7.0 最低要求 ESXi 8.0 最低要求 推荐配置
CPU 2 核(64位 x86) 2 核(64位 x86) 8 核或更多
内存 4 GB 4 GB 32 GB 或更多
存储 8 GB(系统盘) 8 GB(系统盘) 128 GB SSD 或更大
网络 1 Gbps × 1 1 Gbps × 1 双 1Gbps 或万兆
2.1.2 硬件兼容性检查

🔒 安全建议:在生产环境部署前,务必通过 VMware Hardware Compatibility List (HCL) 验证服务器硬件兼容性。

访问 VMware Compatibility Guide 进行检查:

复制代码
检查项目清单:
□ 服务器型号是否在 HCL 列表中
□ RAID 控制卡是否在 HCL 列表中并有对应驱动
□ 网卡是否在 HCL 列表中(特别是 Intel I350、i219 等常见型号)
□ 存储控制器是否支持
□ 特殊硬件(HBA 卡、GPU、直连存储)兼容性

⚠️ 注意事项

  • 非 HCL 硬件可能导致安装失败或运行时不稳定
  • 某些服务器需要加载厂商定制 ESXi ISO(如 Dell、HP、Lenovo)
  • ESXi 8.0 对 NVMe 驱动支持更完善,但老旧 NVMe 设备可能需要额外驱动

2.2 下载 ESXi 镜像

2.2.1 官方下载渠道
  1. VMware 官方网站(需要注册账号):

  2. 厂商定制版(推荐用于品牌服务器):

2.2.2 文件选择
文件类型 适用场景 文件名示例
标准 ISO 通用服务器、自建服务器 VMware-VMvisor-Installer-8.0.x-xxxxx.x86_64.iso
厂商定制 ISO Dell/HP/Lenovo 等品牌服务器 VMware-VMvisor-Installer-8.0.x-xxxxx-LNV-xxxxx.iso

2.3 制作启动U盘

2.3.1 工具一:Rufus(推荐)

Rufus 是一款轻量级启动盘制作工具,支持 Windows。

操作步骤

复制代码
1. 下载 Rufus:https://rufus.ie/
2. 插入 U盘(至少 8GB)
3. 运行 Rufus,选择 U盘设备
4. 引导类型选择"镜像" → 选择下载的 ESXi ISO 文件
5. 分区方案选择:MBR(传统BIOS)或 GPT(UEFI)
6. 文件系统选择:FAT32
7. 点击"开始"等待写入完成
2.3.2 工具二:Ventoy(推荐用于多镜像)

Ventoy 支持一次制作后存放多个 ISO 文件,非常适合运维场景。

Ventoy 安装步骤

bash 复制代码
# Windows 环境
1. 下载 Ventoy:https://www.ventoy.net/cn/download.html
2. 解压后运行 Ventoy2Disk.exe
3. 选择目标U盘,点击"安装"
4. 将 ESXi ISO 文件复制到U盘根目录

# Linux/macOS 环境
$ sudo sh Ventoy2Disk.sh -i /dev/sdX   # sdX 为U盘设备名

⚠️ 注意事项

  • 制作启动盘会清空 U盘所有数据,请提前备份
  • ESXi 安装镜像较大,确保 U盘容量 ≥ 8GB
  • 部分老旧电脑可能无法从 USB 3.0 启动,尝试使用 USB 2.0 接口

2.4 规划网络与存储拓扑

2.4.1 网络规划

在安装前应规划好网络架构:

复制代码
┌──────────────────────────────────────────────────────────────────┐
│                    ESXi 网络架构规划                               │
├──────────────────────────────────────────────────────────────────┤
│                                                                  │
│   ┌─────────────┐     ┌─────────────┐     ┌─────────────┐        │
│   │  Management │     │   vMotion   │     │    vSAN     │        │
│   │  Network    │     │   Network   │     │   Network   │        │
│   │  (管理网络)   │     │  (迁移网络)  │     │  (存储网络)  │        │
│   │  192.168.1  │     │  192.168.10 │     │  192.168.20 │        │
│   └──────┬──────┘     └──────┬──────┘     └──────┬──────┘        │
│          │                   │                   │               │
│          └───────────────────┼───────────────────┘               │
│                              │                                   │
│                    ┌─────────┴─────────┐                         │
│                    │  Virtual Switch   │                         │
│                    │    (vSwitch0)     │                         │
│                    └─────────┬─────────┘                         │
│                              │                                   │
│                    ┌─────────┴─────────┐                         │
│                    │  Physical NICs    │                         │
│                    │   vmnic0 / vmnic1 │                         │
│                    └───────────────────┘                         │
│                                                                  │
└──────────────────────────────────────────────────────────────────┘

网络规划要点

网络类型 用途 典型 VLAN 带宽建议
Management ESXi 主机管理、vSphere Client 访问 1 (Native) 1 Gbps
vMotion 虚拟机实时迁移 10 1-10 Gbps
vSAN vSAN 分布式存储 20 10+ Gbps (多链路聚合)
VM Network 虚拟机业务网络 30+ 根据业务需求
FT (Fault Tolerance) 容错保护 专有 10+ Gbps
2.4.2 存储规划

存储类型对比

存储类型 访问方式 性能 配置复杂度 适用场景
本地磁盘 直连 SATA/SAS/NVMe 中-高 单主机、小规模部署
NFS 网络文件系统 文件级共享存储
iSCSI 块级协议 中-高 中-高 企业存储、高性能需求
vSAN 分布式软件定义存储 超融合架构

⚠️ 注意事项

  • ESXi 系统盘建议使用独立磁盘,避免与虚拟机数据盘混用
  • 生产环境建议至少配置 RAID 1 或 RAID 5/6 保护
  • iSCSI/NFS 存储需要规划独立的存储网络,避免业务流量干扰

3. ESXi 安装详解

3.1 BIOS/UEFI 设置

3.1.1 进入 BIOS/UEFI 设置

开启服务器或电脑,在启动过程中按指定按键进入 BIOS/UEFI:

厂商 按键 常见品牌示例
Dell F2 Dell PowerEdge
HP/HPE F10 HP ProLiant
Lenovo F1 Lenovo ThinkServer
普通 PC Del / F2 / Esc 华硕、技嘉、微星等
3.1.2 关键 BIOS/UEFI 设置项
复制代码
┌─────────────────────────────────────────────────────────────┐
│                   BIOS/UEFI 设置检查清单                      │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  1. 虚拟化技术 (Virtualization Technology)                    │
│     ✓ Intel VT-x / AMD-V → 启用 (Enabled)                    │
│                                                             │
│  2. 虚拟化 I/O (VT-d / AMD-Vi)                               │
│     ✓ 启用 → 支持 PCI 设备直通                                 │
│                                                             │
│  3. 启动模式                                                 │
│     ✓ UEFI Only 或 Legacy BIOS → 根据 ISO 类型选择            │
│     ✓ 建议使用 UEFI + Secure Boot(ESXi 8.0)                 │
│                                                             │
│  4. 启动顺序                                                 │
│     ✓ USB 设备 / 光驱 → 第一顺序                              │
│     ✓ 关闭不必要的引导设备                                     │
│                                                             │
│  5. 电源管理                                                 │
│     ✓ 高性能模式 (High Performance)                           │
│     ✓ 禁用 C-State / P-State(可选,提升性能)                  │
│                                                             │
│  6. SATA 模式                                                │
│     ✓ RAID 模式(如使用 RAID 卡)                              │
│     ✓ AHCI 模式(直连SATA/SAS)                                │
│     ✓ 禁用 IDE / Legacy 模式                                  │
│                                                              │
│  7. 显存分配 (部分服务器)                                       │
│     ✓ 分配至少 128MB 显存给集成显卡                              │
│                                                              │
└──────────────────────────────────────────────────────────────┘

⚠️ 注意事项

  • 不同厂商的 BIOS/UEFI 界面差异较大,请参考服务器用户手册
  • 虚拟化技术未启用将导致 ESXi 安装后虚拟机无法运行
  • 部分服务器需要更新 BIOS 版本才能支持 ESXi 8.0

3.2 安装步骤详解

以下为标准 ESXi 8.0 安装流程,按阶段说明:

阶段一:启动安装程序
复制代码
1. 插入制作好的启动 U盘
2. 开机并从 USB 设备启动
3. 等待 ESXi 安装程序加载(可能需要几分钟)

预期界面:
┌────────────────────────────────────────────────────────────┐
│                                                            │
│  Welcome to the VMware ESXi 8.0.0 Installation             │
│                                                            │
│        Press Enter to begin the installation               │
│                  or press Tab for more options             │
│                                                            │
└────────────────────────────────────────────────────────────┘
阶段二:加载安装程序
复制代码
4. 按 Enter 开始安装
5. 系统会显示 "Loading ESXi installer..."
6. 加载完成后进入安装向导
阶段三:选择安装目标磁盘
复制代码
┌────────────────────────────────────────────────────────────┐
│  Select a Disk to Install or Upgrade                       │
├────────────────────────────────────────────────────────────┤
│                                                            │
│    [ ] t10.ATA_____Samsung_SSD_850_EVO_500GB               │
│         → 476.94 GB                                        │
│                                                            │
│    [ ] t10.ATA_____WDC_WD5000AAKS_00D9B0                   │
│         → 465.76 GB                                        │
│                                                            │
│    [ ] Disk(s) with unpartitioned free space               │
│                                                            │
│  Press Enter to select the disk and begin installation     │
│                                                            │
└────────────────────────────────────────────────────────────┘

选择要点

  • 选择用于安装 ESXi 系统的磁盘(通常 8GB-128GB 足够)
  • 建议使用 SSD 或企业级磁盘作为系统盘
  • 注意不要选择包含重要数据的磁盘
阶段四:选择键盘布局
复制代码
┌────────────────────────────────────────────────────────────┐
│  Please select a keyboard layout:                          │
├────────────────────────────────────────────────────────────┤
│                                                            │
│    [ ] US Default                                          │
│    [ ] US International                                    │
│    [ ] United Kingdom                                      │
│    [ ] German (no dead keys)                               │
│    [ ] French                                              │
│    [ ] Chinese (Simplified) - Default                      │
│    [ ] ...                                                 │
│                                                            │
└────────────────────────────────────────────────────────────┘
阶段五:设置 root 密码
复制代码
┌────────────────────────────────────────────────────────────┐
│  Enter a root password for the ESXi host.                  │
│  The root password cannot be empty.                        │
├────────────────────────────────────────────────────────────┤
│                                                            │
│  Root Password:     [••••••••••]                           │
│  Confirm Password:  [••••••••••]                           │
│                                                            │
│  Password must contain:                                    │
│    - at least 8 characters                                 │
│                                                            │
└────────────────────────────────────────────────────────────┘

🔒 安全建议

  • root 密码应使用强密码(大小写字母+数字+特殊字符,≥12位)
  • 生产环境建议配置复杂密码策略
  • 务必记录此密码,后续管理需要使用
阶段六:确认安装设置
复制代码
┌────────────────────────────────────────────────────────────┐
│                   Confirm Install                          │
├────────────────────────────────────────────────────────────┤
│                                                            │
│  ESXi will be installed on:                                │
│    t10.ATA_____Samsung_SSD_850_EVO_500GB                   │
│                                                            │
│  WARNING: This will erase all partitions on:               │
│           sda                                              │
│                                                            │
│    [ ] The disk appears to contain a valid ESXi            │
│        installation.  Press Enter to upgrade or            │
│        press Tab to select a different disk.               │
│                                                            │
│              Press Enter to install ESXi                   │
│                                                            │
└────────────────────────────────────────────────────────────┘
阶段七:安装进行中
复制代码
┌────────────────────────────────────────────────────────────┐
│                                                            │
│  Installing ESXi 8.0.0                                     │
│                                                            │
│  [████████████████████████████░░░░░░░░░░░░░]  75%          │
│                                                            │
│  Copying files to disk...                                  │
│                                                            │
└────────────────────────────────────────────────────────────┘

等待安装完成(约 5-15 分钟)。

阶段八:安装完成
复制代码
┌────────────────────────────────────────────────────────────┐
│                                                            │
│  Installation Complete                                     │
│                                                            │
│  ESXi 8.0.0 has been successfully installed                │
│                                                            │
│  Reboot the host and remove the installation media.        │
│                                                            │
│              Press Enter to reboot                         │
│                                                            │
└────────────────────────────────────────────────────────────┘

3.3 安装后首次登录与控制台界面

3.3.1 DCUI 直接控制台用户界面

ESXi 安装完成后,服务器显示器将显示 DCUI(Direct Console User Interface)界面:

复制代码
┌────────────────────────────────────────────────────────────┐
│                                                            │
│   VMware ESXi 8.0.0 GA (VMware, Inc.)                      │
│                                                            │
│   [root@localhost:~]                                       │
│                                                            │
│   Host Name: localhost                                     │
│   IP Address: 192.168.1.100 (DHCP)                         │
│                                                            │
│   Press F2 to customize system/view logs                   │
│   Press F12 to shutdown/restart the host                   │
│                                                            │
│   F2  Log in to this host                                  │
│   F11  Enter Boot Manager                                  │
│   F12  Shut down/Restart                                   │
│                                                            │
│                                                            │
│                                                            │
└────────────────────────────────────────────────────────────┘
3.3.2 DCUI 功能说明
按键 功能 说明
F2 登录/配置 进入系统配置(网络、存储、安全等)
F11 引导管理器 选择从哪个设备启动
F12 关机/重启 关闭或重启 ESXi 主机
Esc 返回 返回上级菜单
3.3.3 ESXi Embedded Host Client(Web 管理界面)

安装完成后,通过浏览器访问 ESXi Web 管理界面:

复制代码
访问地址:https://192.168.1.100/ui
或:        https://<ESXi_IP>/ui

登录凭据

  • 用户名:root
  • 密码:安装时设置的 root 密码

⚠️ 注意事项

  • 首次登录时使用 HTTPS,浏览器可能提示证书不受信任(正常)
  • 免费版 ESXi 的 Web Client 功能与授权版本相同,但不支持 vCenter 管理

4. 初始配置

4.1 配置管理网络

4.1.1 通过 DCUI 配置静态 IP
  1. 在 DCUI 界面按 F2 输入 root 密码登录

  2. 选择 Configure Management Network

  3. 选择 IPv4 Configuration

    ┌────────────────────────────────────────────────────────────┐
    │ IPv4 Configuration │
    ├────────────────────────────────────────────────────────────┤
    │ │
    │ ○ Use dynamic IP address validation (DHCP) │
    │ ● Set static IP address and network configuration: │
    │ │
    │ IPv4 Address: [192.168.1.100 ] │
    │ Subnet Mask: [255.255.255.0 ] │
    │ Default Gateway: [192.168.1.1 ] │
    │ │
    │ Press Enter to confirm changes │
    │ │
    └────────────────────────────────────────────────────────────┘

4.1.2 配置 DNS 和主机名

返回 Configure Management Network 界面,选择 DNS Configuration

复制代码
┌────────────────────────────────────────────────────────────┐
│  DNS Configuration                                         │
├────────────────────────────────────────────────────────────┤
│                                                            │
│    ○ Use the following DNS configuration:                  │
│  ● Automatically obtain DNS settings (DHCP)                │
│                                                            │
│  Host Name:  [esxi01.example.local       ]                 │
│                                                            │
│  Primary DNS Server:     [8.8.8.8           ]              │
│  Secondary DNS Server:   [8.8.4.4           ]              │
│                                                            │
│              Press Enter to confirm changes                │
│                                                            │
└────────────────────────────────────────────────────────────┘
4.1.3 通过 ESXi Shell 配置网络(CLI)
bash 复制代码
# 查看当前网络配置
esxcli network ip interface list

# 配置静态 IP(使用 vmnic0)
esxcli network ip interface ipv4 set -i vmk0 -I 192.168.1.100 -N 255.255.255.0 -t static

# 配置默认网关
esxcli network ip route ipv4 add -g 192.168.1.1 -n 0.0.0.0/0

# 配置 DNS
esxcli network ip dns server add -s 8.8.8.8
esxcli network ip dns server add -s 8.8.4.4

# 设置主机名
esxcli system hostname set --host=esxi01
esxcli system hostname set --domain=example.local
4.1.4 配置 VLAN(可选)
bash 复制代码
# 为管理网络设置 VLAN ID(例如 VLAN 10)
esxcli network ip interface tag add -i vmk0 -t DVSTagger -v 10

# 查看接口 VLAN 配置
esxcli network ip interface tag list

⚠️ 注意事项

  • 修改网络配置可能中断管理连接
  • 生产环境建议通过 vCenter 或 Web Client 修改网络
  • 修改完成后记得测试网络连通性

4.2 配置存储

4.2.1 配置本地存储

ESXi 安装后,本地磁盘通常会自动识别并配置为 datastore。

bash 复制代码
# 查看已识别的存储设备
esxcli storage core device list

# 查看存储适配器
esxcli storage core adapter list

# 查看 datastores
esxcli storage vmfs extent list
4.2.2 通过 Web Client 配置 iSCSI 存储

步骤 1:启用 iSCSI 软件适配器

  1. 登录 ESXi Web Client (https://<ESXi_IP>/ui)
  2. 导航到 存储适配器
  3. 点击 添加软件适配器 → 选择 iSCSI

步骤 2:配置 iSCSI 参数

  1. 选择刚创建的 iSCSI 适配器 (vmhba64)
  2. 点击 属性网络配置
  3. 点击 添加 绑定到管理网络 VMkernel 端口

步骤 3:添加 iSCSI 目标

  1. 在 iSCSI 适配器属性中,点击 目标添加动态目标添加静态目标

  2. 输入 iSCSI 存储的 IQN 和 IP 地址:

    复制代码
    iSCSI Name:     iqn.1992-08.com.example:storage.array01
    IP Address:     192.168.20.10:3260

步骤 4:重新扫描存储

  1. 点击 重新扫描适配器 按钮
  2. 等待扫描完成,新 datastore 应出现在存储列表中
4.2.3 通过 Web Client 配置 NFS 存储

步骤 1:添加 NFS 数据存储

  1. 登录 ESXi Web Client
  2. 导航到 存储数据存储新建数据存储
  3. 选择 挂载 NFS 数据存储

步骤 2:配置 NFS 参数

复制代码
┌────────────────────────────────────────────────────────────┐
│  NFS Mount Configuration                                   │
├────────────────────────────────────────────────────────────┤
│                                                            │
│  数据存储名称:  [NFS-Datastore-01    ]                       │
│                                                            │
│  NFS 服务器:    [192.168.20.20       ]                      │
│                                                            │
│  NFS 挂载点:    [/exports/nfs_share  ]                      │
│                                                            │
│  NFS 版本:      ○ NFS 3    ● NFS 4.1                        │
│                                                            │
└────────────────────────────────────────────────────────────┘
4.2.4 通过 CLI 配置 NFS
bash 复制代码
# 挂载 NFS 3 数据存储
esxcli storage nfs add -H 192.168.20.20 -s /exports/nfs_share -v NFS-Datastore-01

# 挂载 NFS 4.1 数据存储
esxcli storage nfs41 add -H 192.168.20.20 -s /exports/nfs_share -v NFS-Datastore-01

# 查看已挂载的 NFS 数据存储
esxcli storage nfs list

# 卸载 NFS 数据存储
esxcli storage nfs remove -v NFS-Datastore-01

4.3 添加授权许可证

4.3.1 免费版 ESXi(无许可证限制)

ESXi 安装后默认以评估模式运行,有效期 60 天。免费版许可证功能受限:

功能 免费版 授权版
虚拟机数量 无限制* 无限制
vSphere Client ✅ 支持 ✅ 支持
vMotion ❌ 不支持 ✅ 支持
HA ❌ 不支持 ✅ 支持
DRS ❌ 不支持 ✅ 支持
vSphere Replication ❌ 不支持 ✅ 支持
vCenter Server 管理 ❌ 不支持 ✅ 支持

*免费版最多支持 2 个物理 CPU 和一些功能限制

4.3.2 添加许可证步骤

方法一:通过 Web Client

  1. 登录 ESXi Web Client
  2. 导航到 管理许可许可证
  3. 点击 分配许可证
  4. 输入许可证密钥或从已分配的许可证中选择
  5. 点击 确定

方法二:通过 DCUI

  1. F2 登录 DCUI
  2. 选择 Licensed Features
  3. 选择 Assign License
  4. 输入许可证密钥

方法三:通过 CLI

bash 复制代码
# 查看当前许可证状态
esxcli software vib install

# 获取许可证信息
esxcli license --help

# 使用 vSphere CLI (PowerCLI) 添加许可证
Connect-VIServer -Server <ESXi_IP> -User root -Password <password>
Set-VMHost -VMHost <ESXi_IP> -LicenseKey <license_key>

🔒 安全建议

  • 生产环境务必使用有效许可证
  • 许可证密钥应妥善保管,不要泄露
  • 建议设置许可证过期提醒

5. 虚拟机管理

5.1 创建虚拟机

5.1.1 通过 Web Client 创建虚拟机

步骤 1:启动新建虚拟机向导

  1. 登录 ESXi Web Client (https://<ESXi_IP>/ui)
  2. 导航到 虚拟机创建/注册虚拟机
  3. 选择 创建新虚拟机下一步

步骤 2:配置虚拟机基本信息

复制代码
┌────────────────────────────────────────────────────────────┐
│  选择创建类型                                                │
├────────────────────────────────────────────────────────────┤
│                                                            │
│  ● 创建新虚拟机                                              │
│  ○ 从 OVA 文件部署虚拟机                                      │
│  ○ 注册现有虚拟机                                            │
│                                                            │
└────────────────────────────────────────────────────────────┘

步骤 3:填写虚拟机详情

复制代码
┌────────────────────────────────────────────────────────────┐
│  名称和客户机操作系统                                         │
├────────────────────────────────────────────────────────────┤
│                                                            │
│  名称:           [WebServer-01          ]                   │
│                                                            │
│  兼容性:         [ESXi 8.0 及更高版本      ]                  │
│                                                            │
│  Guest OS 系列:  ● Linux    ○ Windows  ○ 其他                │
│                                                            │
│  Guest OS 版本:  [Ubuntu Linux (64 位)   ]                  │
│                                                            │
└────────────────────────────────────────────────────────────┘

常见操作系统选择对照表

操作系统 Guest OS 系列 Guest OS 版本
Windows Server 2022 Windows Windows Server 2022 或更高版 (64 位)
Windows 11 Windows Windows 11 (64 位)
Windows 10 Windows Windows 10 (64 位)
Ubuntu 22.04 Linux Ubuntu Linux (64 位)
CentOS 8 Linux CentOS 8 (64 位)
Rocky Linux 9 Linux 其他 Linux (64 位)
VMware ESXi 8 VMware Photon OS (64 位) VMware ESXi 8.x

步骤 4:选择存储

  • 选择虚拟机配置文件和虚拟磁盘的存储位置
  • 建议选择性能较好的 datastore

步骤 5:配置虚拟硬件

复制代码
┌────────────────────────────────────────────────────────────┐
│  配置虚拟硬件                                                │
├────────────────────────────────────────────────────────────┤
│                                                            │
│  CPU:         2 核         [调整 ▼]                         │
│  内存:        4 GB        [调整 ▼]                          │
│  硬盘:        80 GB       [调整 ▼]                          │
│  网络适配器:   VM Network [调整 ▼]                           │
│  CD/DVD:      [ ] 已连接  [▼] 客户端设备                      │
│                                                            │
│  SCSI 控制器:  [LSI Logic SAS ▼]                            │
│                                                            │
└────────────────────────────────────────────────────────────┘

硬件资源建议

资源 最低建议 生产环境建议
CPU 1 核 2-4 核或更多
内存 1 GB 2-8 GB 或更多
硬盘 20 GB 40-100 GB 或更多
网络 1 适配器 1-2 适配器

⚠️ 注意事项

  • Windows 11 虚拟机需要 EFI 引导和 TPM 2.0 模拟(可选功能)
  • 生产环境建议预留 20-30% 资源余量
  • 克隆虚拟机前确保配置正确
5.1.2 通过 CLI 使用 OVF Tool 创建虚拟机
bash 复制代码
# 安装 OVF Tool(需单独下载)
# 下载地址:https://developer.vmware.com/web/tool/ovf

# 部署 OVA/OVF 文件
ovftool --diskMode=thin --datastore=datastore1 \
  --network="VM Network" \
  --name=WebServer-01 \
  /path/to/ubuntu.ova \
  vi://root:password@<ESXi_IP>/

# 常用参数说明:
# --diskMode: thin(精简置备)或 eagerZeroedThick(厚置备)
# --datastore: 目标数据存储
# --network: 目标网络
# --name: 虚拟机名称

5.2 虚拟机网络

5.2.1 虚拟交换机概念

ESXi 使用虚拟交换机(vSwitch)连接虚拟机和物理网络:

复制代码
┌─────────────────────────────────────────────────────────────────┐
│                     ESXi 虚拟网络架构                             │
├─────────────────────────────────────────────────────────────────┤
│                                                                 │
│  ┌─────────────┐    ┌─────────────┐    ┌─────────────┐          │
│  │   VM 1      │    │   VM 2      │    │   VM 3      │          │
│  │  Web Server │    │  Database   │    │  App Server │          │
│  └──────┬──────┘    └──────┬──────┘    └──────┬──────┘          │
│         │                  │                  │                 │
│         │ Port Group       │ Port Group       │ Port Group      │
│         │ "Web Network"    │ "DB Network"     │ "App Network"   │
│         │ (VLAN 10)        │ (VLAN 20)        │ (VLAN 30)       │
│         │                  │                  │                 │
│  ┌──────┴──────────────────┴──────────────────┴──────┐          │
│  │                    vSwitch0                       │          │
│  │                                                   │          │
│  │  ┌──────────┐  ┌──────────┐  ┌──────────┐         │          │
│  │  │ Port 1   │  │ Port 2   │  │ Port 3   │  ...    │          │
│  │  └──────────┘  └──────────┘  └──────────┘         │          │
│  └───────────────────────┬───────────────────────────┘          │
│                          │                                      │
│              ┌───────────┴───────────┐                          │
│              │    Physical NICs      │                          │
│              │   vmnic0   vmnic1      │                         │
│              └───────────────────────┘                          │
│                          │                                      │
│              ┌───────────┴───────────┐                          │
│              │   Physical Network    │                          │
│              │   (Cisco Switch)      │                          │
│              └───────────────────────┘                          │
│                                                                 │
└─────────────────────────────────────────────────────────────────┘
5.2.2 通过 Web Client 配置虚拟交换机

创建标准虚拟交换机

  1. 登录 ESXi Web Client
  2. 导航到 网络虚拟交换机
  3. 点击 添加标准虚拟交换机
  4. 配置上行链路(物理网卡)
  5. 设置名称(如 vSwitch1)
  6. 点击 添加

创建端口组

  1. 在同一界面点击 端口组
  2. 点击 添加端口组
  3. 配置:
    • 名称:如 Web-Network
    • VLAN ID:如 10(可选)
    • 虚拟交换机:选择关联的 vSwitch
5.2.3 通过 CLI 配置网络
bash 复制代码
# 创建虚拟交换机
esxcli network vswitch standard add -v vSwitch1

# 添加上行链路(物理网卡)到虚拟交换机
esxcli network vswitch standard uplink add -v vSwitch1 -u vmnic1

# 创建端口组
esxcli network vswitch standard portgroup add -p "Web-Network" -v vSwitch1

# 设置端口组 VLAN ID
esxcli network vswitch standard portgroup set -p "Web-Network" -v 10

# 查看虚拟交换机配置
esxcli network vswitch standard list

# 查看端口组配置
esxcli network vswitch standard portgroup list
5.2.4 VMkernel 端口配置

VMkernel 端口用于 ESXi 主机之间的通信(如 vMotion、存储):

bash 复制代码
# 创建 VMkernel 端口
esxcli network ip interface add -i vmk1 -p "vMotion-Network" -M <MAC地址>

# 配置 VMkernel IP
esxcli network ip interface ipv4 set -i vmk1 -I 192.168.10.100 -N 255.255.255.0 -t static

# 启用 vMotion 服务
esxcli network ip interface service add -i vmk1 -s vmotion

# 查看 VMkernel 端口
esxcli network ip interface list

# 查看 VMkernel 服务
esxcli network ip interface service list

5.3 虚拟机生命周期管理

5.3.1 虚拟机基本操作
操作 Web Client 位置 说明
开机 虚拟机 → 电源 → 打开电源 启动虚拟机
关机 虚拟机 → 电源 → 关闭电源 优雅关闭(如支持)或强制关闭
重启 虚拟机 → 电源 → 重启客户机 发送重启信号到虚拟机
暂停 虚拟机 → 电源 → 暂停 暂停虚拟机(内存保持)
控制台访问 右键虚拟机 → 打开控制台 远程查看虚拟机屏幕
5.3.2 快照管理

创建快照

bash 复制代码
# 使用 vmware-vmadm 创建快照(ESXi 6.7+)
vim-cmd vmsvc/snapshot.create <vm_id> <snapshot_name> <description>

# 示例:获取虚拟机 ID
vim-cmd vmsvc/getallvms

# 创建快照
vim-cmd vmsvc/snapshot.create 1 "Before-Patch-Backup" "Patch installation backup"

快照操作

bash 复制代码
# 列出快照
vim-cmd vmsvc/snapshot.get <vm_id>

# 恢复到快照
vim-cmd vmsvc/snapshot.revert <vm_id> <snapshot_id> suppressPowerOn

# 删除快照
vim-cmd vmsvc/snapshot.remove <vm_id> <snapshot_id>

⚠️ 注意事项

  • 快照不是备份!仅用于短期测试和回滚
  • 生产环境快照不宜保留超过 24-72 小时
  • 快照会显著增加存储占用和影响性能
  • 删除快照可能需要较长时间(合并磁盘)
5.3.3 克隆虚拟机

通过 Web Client 克隆

  1. 右键点击源虚拟机 → 克隆克隆为虚拟机
  2. 输入新虚拟机名称
  3. 选择计算资源和存储
  4. 选择克隆选项:
    • 快速克隆:链接到源磁盘,快速但依赖源
    • 完整克隆:创建独立磁盘,耗时但独立

通过 CLI 克隆

bash 复制代码
# 使用 ovftool 克隆虚拟机
ovftool "vi://root:password@<ESXi_IP>/<source_vm_name>" \
  "/path/to/clone_target"

# 或使用 govc(需要安装 VMware Go SDK)
govc vm.clone -vm <source_vm> -host=<ESXi_IP> <new_vm_name>
5.3.4 模板与自定义规范

创建模板

  1. 配置一个标准虚拟机
  2. 安装 VMware Tools
  3. 配置好操作系统(如更新、创建用户)
  4. 右键虚拟机 → 克隆克隆为模板

使用模板部署

  1. 右键模板 → 从此模板部署虚拟机
  2. 选择名称、资源配置
  3. 配置 guest 自定义(IP、主机名等)
5.3.5 迁移虚拟机(需要 vMotion 许可证)

免费版 ESXi 不支持 vMotion,仅授权版本可用

bash 复制代码
# 通过 vSphere CLI 迁移虚拟机
# 需要 vCenter Server 环境

# 冷迁移(虚拟机需关机)
New-VM -VMFilePath "[datastore1] myvm/myvm.vmx" -VMHost destinationhost -Datastore destination-datastore

# vMotion 热迁移(虚拟机运行中)
Move-VM -VM myvm -Destination destination-host

6. 日常操作与维护

6.1 通过 vSphere Client / Web Client 管理

6.1.1 Web Client 界面导航
复制代码
┌────────────────────────────────────────────────────────────────────┐
│                    ESXi Web Client 导航结构                         │
├────────────────────────────────────────────────────────────────────┤
│                                                                    │
│  [左侧导航栏]                                                       │
│                                                                    │
│  📊 主页                                                           │
│     ├─ 摘要                                                         │
│     ├─ 监控                                                         │
│     └─ 近期任务                                                     │
│                                                                    │
│  🖥️ 虚拟机                                                         │
│     ├─ 虚拟机列表                                                   │
│     └─ 映射视图                                                     │
│                                                                    │
│  📁 存储                                                           │
│     ├─ 数据存储                                                     │
│     └─ 存储适配器                                                   │
│                                                                    │
│  🔌 网络                                                           │
│     ├─ 虚拟交换机                                                   │
│     ├─ 端口组                                                       │
│     └─ VMkernel适配器                                               │
│                                                                    │
│  ⚙️ 管理                                                             │
│     ├─ 授权                                                         │
│     ├─ 高级设置                                                      │
│     ├─ 计时                                                         │
│     ├─ 服务                                                         │
│     └─ 系统                                                         │
│                                                                     │
│  🔧 主机                                                            │
│     ├─ 硬件                                                         │
│     ├─ 电源管理                                                     │
│     └─ 安全配置文件                                                  │
│                                                                    │
└────────────────────────────────────────────────────────────────────┘
6.1.2 常用管理任务

查看主机健康状态

  1. 导航到 主页摘要
  2. 检查硬件状态、许可证状态、网络连接

查看虚拟机状态

  1. 导航到 虚拟机
  2. 查看所有虚拟机列表及运行状态
  3. 点击单个虚拟机查看详细信息

6.2 性能监控与资源调度

6.2.1 性能监控工具

ESXi Embedded Host Client

  • 实时查看 CPU、内存、网络、磁盘使用率
  • 位置:主机监控性能

esxtop / resxtop(命令行)

bash 复制代码
# 进入 esxtop 交互模式
esxtop

# 按性能指标排序快捷键:
#   c = CPU    m = Memory    n = Network
#   d = Disk   v = VM       u = Disk adapter

# 查看特定虚拟机的资源使用
esxtop -v

# 批处理模式(保存到文件)
esxtop -b -n 100 > /tmp/esxtop_output.csv

# 使用 resxtop 远程监控(需要 vCenter)
resxtop -h <vCenter_IP> -u root --passwordfile=/tmp/passfile

查看实时性能(esxcli)

bash 复制代码
# 查看 CPU 信息
esxcli hardware cpu global get

# 查看内存信息
esxcli hardware memory get

# 查看磁盘 I/O 统计
esxcli storage core device stats get

# 查看网络统计
esxcli network vmnic list
esxcli network nic stats get -n vmnic0
6.2.2 资源管理

设置虚拟机资源限制

bash 复制代码
# 查看虚拟机资源设置
vim-cmd vmsvc/get.guest <vm_id>

# 使用 PowerCLI 设置资源
# 示例:设置 CPU 限制
Get-VM -Name "WebServer-01" | Get-VMResourceConfiguration |
    Set-VMResourceConfiguration -CpuReservationMhz 2048

# 示例:设置内存限制
Get-VM -Name "WebServer-01" | Set-VM -MemoryGB 8 -Confirm:$false

6.3 备份与恢复策略

6.3.1 自动关机保护

配置 ESXi 主机关机脚本

bash 复制代码
# 创建关机脚本位置
mkdir -p /storeparts/software/customizations

# 创建关机脚本
cat > /storeparts/software/customizations/poweroff_vms.sh << 'EOF'
#!/bin/sh

# 关闭所有运行中的虚拟机
for vm in $(vim-cmd vmsvc/getallvms | grep -E "[0-9]+" | awk '{print $1}'); do
    power_state=$(vim-cmd vmsvc/power.getstate $vm | grep "Powered")
    if [[ "$power_state" == *"Powered on"* ]]; then
        vm_name=$(vim-cmd vmsvc/get.config $vm | grep "displayName" | cut -d "'" -f2)
        echo "Shutting down $vm_name (ID: $vm)..."
        vim-cmd vmsvc/power.shutdown $vm
    fi
done

# 等待虚拟机关闭
sleep 60

# 强制关闭仍未关闭的虚拟机
for vm in $(vim-cmd vmsvc/getallvms | grep -E "[0-9]+" | awk '{print $1}'); do
    power_state=$(vim-cmd vmsvc/power.getstate $vm | grep "Powered")
    if [[ "$power_state" == *"Powered on"* ]]; then
        vim-cmd vmsvc/power.off $vm
    fi
done

echo "All VMs shut down"
EOF

chmod +x /storeparts/software/customizations/poweroff_vms.sh
6.3.2 虚拟机备份方案

方案一:手动备份(适合小规模)

bash 复制代码
# 手动备份虚拟机文件到 NFS
#!/bin/bash
# backup_vm.sh

VM_NAME="WebServer-01"
BACKUP_DEST="/vmfs/volumes/NFS-Backup/"

# 获取虚拟机路径
VM_PATH=$(find /vmfs/volumes -name "${VM_NAME}.vmx" 2>/dev/null | head -1)

if [ -z "$VM_PATH" ]; then
    echo "VM not found"
    exit 1
fi

VM_DIR=$(dirname "$VM_PATH")
TIMESTAMP=$(date +%Y%m%d_%H%M%S)

# 创建备份目录
mkdir -p "${BACKUP_DEST}/${VM_NAME}_${TIMESTAMP}"

# 复制虚拟机文件
cp -r "$VM_DIR"/* "${BACKUP_DEST}/${VM_NAME}_${TIMESTAMP}/"

# 压缩备份(可选)
tar -czvf "${BACKUP_DEST}/${VM_NAME}_${TIMESTAMP}.tar.gz" \
    -C "$(dirname ${BACKUP_DEST})" "${VM_NAME}_${TIMESTAMP}"

# 删除未压缩备份
rm -rf "${BACKUP_DEST}/${VM_NAME}_${TIMESTAMP}"

echo "Backup completed: ${BACKUP_DEST}/${VM_NAME}_${TIMESTAMP}.tar.gz"

方案二:使用 Veeam Backup & Replication(企业级)

复制代码
推荐备份策略:
┌──────────────────────────────────────────────────────────────────┐
│ 备份频率建议:                                                     │
│ ├─ 每日增量备份(工作日)                                           │
│ ├─ 每周完整备份(周末)                                             │
│ └─ 保留策略:每日 7 天 / 每周 4 周 / 每月 12 个月                    │
│                                                                 │
│ 备份目标优先级:                                                   │
│ 1. 独立存储(避免与源数据同磁盘故障)                                 │
│ 2. 支持重复数据删除(节省存储空间)                                   │
│ 3. 支持加密(敏感数据保护)                                          │
└──────────────────────────────────────────────────────────────────┘

方案三:使用 ghettoVCB(开源脚本)

bash 复制代码
# ghettoVCB 备份脚本配置示例
# 创建配置文件 /etc/ghettovcb/ghettovcb.conf

VM_BACKUP_VOLUME=/vmfs/volumes/backup-datastore
DATASTORE_NAMES=datastore1
VM_BACKUP_ROTATION=3
POWER_VM_DOWN_BEFORE_BACKUP=0
ALLOW_VMS_WITH_SNAPSHOTS_TO_BE_BACKEDUP=0
ENABLE_COMPRESSION=0
BACKUP_LOG_OUTPUT=/var/log/ghettovcb.log
6.3.3 备份与恢复最佳实践

🔒 安全建议

  • 备份数据应存储在独立于源存储的位置
  • 定期测试恢复流程,确保备份可用
  • 对备份数据进行加密或物理安全保护
  • 记录备份恢复步骤文档

6.4 更新与补丁管理

6.4.1 查看当前版本与补丁
bash 复制代码
# 查看 ESXi 版本信息
vmware -v

# 查看已安装的 VIB 包
esxcli software vib list

# 查看补丁信息
esxcli software sources profile list -d /vmfs/volumes/datastore1/ESXi800-202310001.zip
6.4.2 使用 ESXCLI 安装补丁
bash 复制代码
# 挂载补丁文件到 ESXi
# 方式一:通过 vSphere Client 上传 ISO/ZIP

# 方式二:通过 SCP 上传
scp ESXi800-202310001.zip root@<ESXi_IP>:/tmp/

# 安装补丁(维护模式)
esxcli software vib update -d /tmp/ESXi800-202310001.zip

# 重启生效
reboot
6.4.3 配置主机进入维护模式
bash 复制代码
# 进入维护模式(所有虚拟机需关闭或迁移)
vim-cmd hostsvc/maintenance_mode_enter

# 验证维护模式状态
vim-cmd hostsvc/maintenance_mode_status

# 退出维护模式
vim-cmd hostsvc/maintenance_mode_exit
6.4.4 自动更新(使用 Image Builder)
bash 复制代码
# 列出可用的软件配置文件
esxcli software profile profile list

# 更新到最新配置文件
esxcli software profile update -d https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/vmw-depot-index.xml -p ESXi-8.0.0-202310001-standard

# 或使用本地补丁文件
esxcli software profile update -d /tmp/ESXi800-202310001.zip -p ESXi-8.0.0-202310001-standard

⚠️ 注意事项

  • 安装补丁前务必备份主机配置
  • 生产环境建议在非工作时间进行更新
  • 更新前确保所有虚拟机已备份或可以接受停机
  • 遵循 VMware 官方补丁说明和兼容性指南

7. 常见问题排查

7.1 安装常见问题

问题 1:安装过程中提示 "No Network Adapters"

现象:安装向导提示 "No Network Adapters",无法继续。

原因

  • 网卡驱动不支持
  • 网卡硬件故障
  • 使用的 ISO 版本与网卡不匹配

解决方案

复制代码
1. 确认网卡型号
   └─ 在服务器 BIOS 中查看或使用 lspci 命令(Linux 环境)

2. 下载包含网卡驱动的厂商定制版 ISO
   └─ Dell/HP/Lenovo 定制版通常包含更多驱动

3. 使用 VMware Integration Manager (vLCM) 注入驱动
   └─ 适用于 ESXi 7.0+

4. 手动集成第三方驱动到 ISO
   └─ 使用 ESXi-Customizer 或 PowerCLI
问题 2:安装完成后无法识别本地磁盘

现象:安装成功但 ESXi 启动后本地磁盘显示为 "incompatible"。

原因

  • RAID 卡驱动缺失
  • RAID 卡配置不正确
  • 磁盘模式设置错误

解决方案

bash 复制代码
# 1. 检查存储适配器状态
esxcli storage adapter list

# 2. 查看详细日志
cat /var/log/vmkernel.log | grep -i sata
cat /var/log/vmkernel.log | grep -i raid

# 3. 确认 RAID 配置
# └─ 进入 RAID 卡 BIOS (启动时按 Ctrl+R 或 Ctrl+A)
# └─ 确认磁盘已创建为虚拟磁盘 (Virtual Drive)
问题 3:安装提示 "Failed to Load lzma" 或 "Fatal Error"

现象:安装过程报错 "Failed to load lzma"。

原因

  • ISO 文件损坏
  • U盘制作过程损坏
  • 镜像下载不完整

解决方案

复制代码
1. 重新下载 ESXi ISO
   └─ 确认下载完整性(MD5/SHA1 校验)

2. 重新制作启动盘
   └─ 使用 Rufus 选择 "写入方式:DD镜像模式"

3. 尝试使用不同 U盘或使用 DVD 安装

7.2 网络/存储连接问题

问题 4:ESXi 主机无法 ping 通网关

排查步骤

bash 复制代码
# 1. 检查 IP 配置
esxcli network ip interface ipv4 get

# 2. 检查物理网卡状态
esxcli network nic list

# 3. 测试网络连通性
vmkping -I vmk0 192.168.1.1

# 4. 查看路由
esxcli network ip route ipv4 list

# 5. 检查防火墙
esxcli network firewall ruleset list
esxcli network firewall ruleset rule list | grep -i icmp
问题 5:iSCSI 存储无法连接

排查步骤

bash 复制代码
# 1. 确认 iSCSI 软件适配器已启用
esxcli iscsi software get

# 2. 检查 iSCSI 适配器状态
esxcli iscsi adapter list

# 3. 确认 iSCSI 目标可达
vmkping -I vmk0 192.168.20.10

# 4. 查看 iSCSI 适配器配置
esxcli iscsi adapter target list

# 5. 检查 CHAP 设置(如使用)
esxcli iscsi adapter auth portal credentials get -A chap -a <adapter>

# 6. 重新扫描 iSCSI 适配器
esxcli storage adapter rescan -A vmhba64
问题 6:NFS 挂载失败

排查步骤

bash 复制代码
# 1. 确认 NFS 服务器可达
vmkping -I vmk0 192.168.20.20

# 2. 测试 NFS 挂载(从 ESXi)
vmkfstools -H 192.168.20.20

# 3. 检查 NFS 版本兼容性
esxcli storage nfs list

# 4. 查看日志
cat /var/log/vmkernel.log | grep -i nfs

# 5. 尝试使用 NFSv3(某些旧 NFS 服务器)
esxcli storage nfs remove -v NFS-Datastore-01
esxcli storage nfs add -H 192.168.20.20 -s /exports/nfs_share -v NFS-Datastore-01 -o nfsvers=3

⚠️ 注意事项

  • NFS 存储需要 UDP/TCP 2049 端口
  • ESXi 默认使用 NFSv4.1,某些旧存储可能不支持
  • 确保 ESXi 和 NFS 服务器在同一网络或路由可达

7.3 性能问题

问题 7:虚拟机性能缓慢

排查步骤

bash 复制代码
# 1. 检查 ESXi 主机资源使用
esxtop
# 按 m = 内存, c = CPU, d = 磁盘 查看

# 2. 检查虚拟机资源限制
vim-cmd vmsvc/get.guest <vm_id> | grep -E "cpu|memory|resource"

# 3. 检查存储延迟
esxcli storage core device stats get
# 正常延迟应 < 10ms,高延迟可能表示存储问题

# 4. 检查网络带宽
esxcli network vmnic stats get -n vmnic0

# 5. 检查虚拟机磁盘模式
# └─ 精简置备可能导致性能下降
# └─ 建议生产环境使用厚置备延迟置零或 eager zeroed thick
问题 8:ESXi 主机资源不足告警

排查步骤

bash 复制代码
# 1. 查看内存使用
esxcli hardware memory get
esxcli system stats memory get

# 2. 查看 CPU 使用
esxcli hardware cpu global get

# 3. 检查是否有虚拟机内存膨胀 (memory ballooning)
# 在 esxtop 中按 m,然后观察 MCTL 列

# 4. 优化建议:
# └─ 关闭不需要的虚拟机
# └─ 减少虚拟机内存/CPU 分配
# └─ 添加更多物理内存
# └─ 迁移虚拟机到其他主机
问题 9:快照导致性能下降

症状:虚拟机运行变慢,存储空间异常。

解决方案

bash 复制代码
# 1. 查看快照
vim-cmd vmsvc/snapshot.get <vm_id>

# 2. 查看快照文件
ls -la /vmfs/volumes/<datastore>/<vm_name>/

# 3. 删除快照
# 方式一:Web Client 中右键删除
# 方式二:CLI
vim-cmd vmsvc/snapshot.remove <vm_id>

⚠️ 注意事项

  • 删除大量快照可能需要较长时间
  • 删除快照过程中不要中断操作
  • 快照文件 (.vmdk-flat, .vmdk) 在删除前不要手动操作

7.4 其他常见问题

问题 10:无法访问 ESXi Web Client

排查步骤

bash 复制代码
# 1. 确认 ESXi 服务状态
/etc/init.d/hostd status
/etc/init.d/vpxa status

# 2. 重启管理代理
/etc/init.d/hostd restart
/etc/init.d/vpxa restart

# 3. 检查端口占用
netstat -an | grep 443
netstat -an | grep 80

# 4. 检查防火墙
esxcli network firewall ruleset list

# 5. 确认 DCUI 可访问
# └─ 如 DCUI 正常但 Web Client 异常,可能是服务问题

8. 进阶主题

8.1 vCenter Server 简介

8.1.1 vCenter Server 功能

vCenter Server 是 VMware 企业级虚拟化管理的核心组件,提供集中管理多台 ESXi 主机的能力:

功能 说明 ESXi 免费版 + vCenter Standard
集中管理 统一管理多台 ESXi 主机
vMotion 零停机虚拟机迁移
分布式资源调度 (DRS) 自动负载均衡
高可用性 (HA) 主机故障自动恢复
vSphere Replication 虚拟机复制
快照管理 集中管理快照
模板管理 模板部署虚拟机
8.1.2 vCenter Server 部署模式
复制代码
┌─────────────────────────────────────────────────────────────┐
│                 vCenter Server 部署模式                      │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  模式一:vCenter Server Appliance (VCSA) [推荐]              │
│  ├─ 基于 Photon OS 的虚拟机                                  │
│  ├─ 预装 PostgreSQL 数据库                                   │
│  ├─ 支持 Windows 或 Linux 版本                               │
│  └─ 易于部署和管理                                            │
│                                                             │
│  模式二:Windows vCenter Server [传统模式]                    │
│  ├─ 需要独立的 Windows Server                                │
│  ├─ 需要外部数据库(SQL Server)                              │
│  └─ 已逐渐被淘汰                                             │
│                                                             │
└─────────────────────────────────────────────────────────────┘

⚠️ 注意事项

  • vCenter Server 需要独立许可证(费用较高)
  • 单台 vCenter 可管理数千台 ESXi 主机
  • VCSA 最低要求:2 vCPU, 12GB RAM, 300GB 存储

8.2 高可用性(HA)基础概念

8.2.1 vSphere HA 架构
复制代码
┌──────────────────────────────────────────────────────────┐
│                   vSphere HA 架构                         │
├──────────────────────────────────────────────────────────┤
│                                                          │
│   ┌─────────────┐    ┌─────────────┐    ┌─────────────┐  │
│   │   ESXi 1    │    │   ESXi 2    │    │   ESXi 3    │  │
│   │             │    │             │    │             │  │
│   │  [VM A]     │    │  [VM B]     │    │  [VM C]     │  │
│   │  [VM D]     │    │             │    │  [VM E]     │  │
│   │             │    │             │    │             │  │
│   └──────┬──────┘    └──────┬──────┘    └──────┬──────┘  │
│          │                  │                  │         │
│          └──────────────────┼──────────────────┘         │
│                             │                            │
│                    ┌────────┴────────┐                   │
│                    │  vCenter Server  │                  │
│                    │  (HA Cluster)    │                  │
│                    └────────┬────────┘                   │
│                             │                            │
│              Heartbeat Network (检测心跳)                 │
│                             │                            │
│          ┌──────────────────┼──────────────────┐         │
│          │                  │                  │         │
│          ▼                  ▼                  ▼         │
│   主机故障检测      网络分区检测      虚拟机保护               │
│                                                          │
└──────────────────────────────────────────────────────────┘
8.2.2 HA 工作原理
复制代码
故障检测与恢复流程:

1. 心跳检测
   ├─ ESXi 主机每 5 秒通过专用网络发送心跳
   ├─ 超过 15 秒无心跳 → 标记为疑似故障
   └─ 超过 30 秒无心跳 → 触发故障恢复

2. 虚拟机重启
   ├─ vCenter 自动在集群其他主机上重启虚拟机
   ├─ 目标主机选择依据:
   │   ├─ 资源可用性
   │   ├─ 主机优先级
   │   └─ DRS 规则(如配置)
   └─ 尽量保持虚拟机启动顺序

3. 接入控制
   ├─ 计算集群容错能力
   ├─ 确保有足够资源重启故障主机虚拟机
   └─ 防止 "资源碎片化"

⚠️ 注意事项

  • vSphere HA 需要 vCenter Server 和共享存储
  • 集群中所有主机需在同一网络且网络可达
  • 建议配置专用 HA 心跳网络

8.3 注意事项与最佳实践

8.3.1 安全最佳实践

🔒 安全建议

bash 复制代码
# 1. 强化 ESXi 主机安全
# 启用高级安全设置
esxcli system settings advanced set -o /UserVars/SuppressShellWarning -i 1
esxcli system settings advanced set -o /Security/AccountLockout -i 1

# 2. 禁用不必要的服务
esxcli system的安全 profile list
esxcli system的安全 profile set -p <profile_name> --disable <service>

# 3. 配置防火墙规则
esxcli network firewall ruleset set -r <ruleset_name> -e true

# 4. 定期更新和打补丁
# 建立补丁管理流程

# 5. 使用 Secure Boot (UEFI)
# 确保固件支持并启用

# 6. 监控安全事件
tail -f /var/log/hostd.log
tail -f /var/log/vobd.log
8.3.2 性能最佳实践
复制代码
┌───────────────────────────────────────────────────────────┐
│                  ESXi 性能优化建议                         │
├───────────────────────────────────────────────────────────┤
│                                                           │
│  CPU 优化:                                                │
│  ├─ 避免 CPU overcommit 过高(生产环境建议 < 4:1)           │
│  ├─ 启用 CPU Hot-Add(如需要)                              │
│  └─ 为实时迁移虚拟机分配专用 CPU 资源                        │
│                                                           │
│  内存优化:                                                │
│  ├─ 配置虚拟机内存预留(关键业务)                           │
│  ├─ 启用内存 Ballooning 和 Swapping(最后手段)             │
│  ├─ 设置合理的内存大小,避免浪费                             │
│  └─ 禁用内存指标警告(可选)                                │
│                                                          │
│  存储优化:                                               │
│  ├─ 使用企业级 SSD 作为缓存                                │
│  ├─ 为每台虚拟机使用独立 VMDK 文件                          │
│  ├─ 启用 Storage I/O Control(SIOC)                      │
│  └─ 避免存储过度订阅(Oversubscription)                    │
│                                                           │
│  网络优化:                                                │
│  ├─ 使用 VMXNET3 半虚拟化网卡驱动                           │
│  ├─ 启用 TSO/LRO(TCP Segmentation Offload)              │
│  ├─ 为不同流量使用独立物理网络                              │
│  └─ 配置网络 I/O Control(NIOC)                          │
│                                                         │
└─────────────────────────────────────────────────────────┘
8.3.3 运维最佳实践
复制代码
┌─────────────────────────────────────────────────────────────┐
│                  ESXi 运维检查清单                            │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  日常检查:                                                   │
│  □ 主机硬件健康状态(温度、风扇、电源)                           │
│  □ 存储容量使用率                                             │
│  □ 虚拟机运行状态                                             │
│  □ 告警和事件日志                                             │
│                                                             │
│  周/月度检查:                                               │
│  □ 性能趋势分析                                              │
│  □ 备份任务执行情况                                           │
│  □ 快照清理(如有)                                           │
│  □ 许可证有效期检查                                           │
│                                                            │
│  季度/年度检查:                                             │
│  □ 固件更新(BIOS、iLO/iDRAC、RAID卡)                        │
│  □ ESXi 版本升级规划                                         │
│  □ 灾难恢复演练                                              │
│  □ 安全审计和策略审查                                         │
│                                                             │
└─────────────────────────────────────────────────────────────┘
8.3.4 容量规划建议
场景 CPU 内存 存储 网络
小型实验室 4-8核 16-32GB 256GB-1TB 1Gbps
中型企业 16-32核 128-512GB 2-10TB 双 1Gbps
大型企业 32+核 512GB+ 10TB+ 万兆/聚合

附录

附录 A:常用 ESXi 命令速查表

bash 复制代码
# ==================== 系统信息 ====================
vmware -v                          # 查看 ESXi 版本
esxcli system version get          # 详细版本信息
esxcli hardware cpu global get     # CPU 信息
esxcli hardware memory get         # 内存信息
esxcli hardware platform get       # 平台信息
esxcli system stats uptime get     # 运行时间

# ==================== 网络管理 ====================
esxcli network ip interface list              # 查看网络接口
esxcli network vswitch standard list           # 查看虚拟交换机
esxcli network ip route ipv4 list              # 查看路由表
esxcli network ip dns server list             # 查看 DNS
vmkping -I vmk0 192.168.1.1                    # 测试网络连通性

# ==================== 存储管理 ====================
esxcli storage vmfs extent list                # 查看存储卷
esxcli storage nfs list                        # 查看 NFS 挂载
esxcli storage core device list                # 查看存储设备
esxcli storage adapter list                   # 查看存储适配器
esxcli storage core device stats get           # 查看设备统计

# ==================== 虚拟机管理 ====================
vim-cmd vmsvc/getallvms                        # 列出所有虚拟机
vim-cmd vmsvc/power.on <vm_id>                # 开机
vim-cmd vmsvc/power.off <vm_id>               # 关机
vim-cmd vmsvc/power.shutdown <vm_id>          # 优雅关机
vim-cmd vmsvc/power.reboot <vm_id>            # 重启
vim-cmd vmsvc/snapshot.create <vm_id> <name>  # 创建快照
vim-cmd vmsvc/snapshot.get <vm_id>            # 列出快照

# ==================== 主机管理 ====================
vim-cmd hostsvc/maintenance_mode_enter         # 进入维护模式
vim-cmd hostsvc/maintenance_mode_exit          # 退出维护模式
esxcli system shutdown reboot -r "reason"     # 重启
esxcli system shutdown poweroff -r "reason"   # 关机

# ==================== 软件/补丁 ====================
esxcli software vib list                      # 列出已安装 VIB
esxcli software profile list                  # 列出可用配置文件
esxcli software profile update                # 更新配置文件

附录 B:ESXi 端口参考

端口 协议 用途
22 TCP SSH / ESXi Shell
80 TCP HTTP (重定向到 443)
443 TCP vSphere Client / Web Client
902 TCP vSphere Client 控制台 / VMware Converter
903 TCP 虚拟机控制台 (旧版)
5480 TCP ESXi 主机管理 (VAMI)
5989 TCP CIM WBEM 服务
8080 TCP vSphere Web Services SDK
8200 TCP vSphere HA 通信
8443 TCP vSphere Web Client
3260 TCP iSCSI 存储
2049 TCP/UDP NFS 存储
123 UDP NTP 时间同步

附录 C:资源链接

资源 链接
VMware 官方文档 https://docs.vmware.com/cn/VMware-vSphere/
VMware HCL https://www.vmware.com/resources/compatibility
ESXi 下载 https://customerconnect.vmware.com
VMware 知识库 https://kb.vmware.com
VMware 社区 https://communities.vmware.com

文档结束

版本历史

  • v1.0 (2025-01):初始版本,涵盖 ESXi 7.0/8.0 安装与操作指南
相关推荐
ps酷教程1 小时前
Jackson 解决没有无参构造函数的反序列化问题
java
NiceCloud喜云1 小时前
Opus 4.8 的 Effort Control 怎么选:Low 到 Max 五档策略
android·java·大数据·前端·c++·python·spring
AI玫瑰助手2 小时前
Python函数:默认参数的定义与注意事项
开发语言·python·信息可视化
ylscode2 小时前
PureLogs 信息窃取恶意软件惊现高危变种:借道 MsBuild.exe 进程空心化实施无痕攻击
网络·安全·安全威胁分析
IPHWT 零软网络2 小时前
MX60E-A信创级智能语音网关技术实现与架构分析
网络·网络安全·国产自研·技术实现·智能语音网关·政企通信·信创技术
油炸自行车2 小时前
Claude Code 错误:API Error: 400 Failed to deserialize the JSON body into the
开发语言·javascript·json·trae·claude code·api error 400
肩上风骋2 小时前
C++14特性
开发语言·c++·c++14特性
_日拱一卒2 小时前
LeetCode:994腐烂的橘子
java·数据结构·算法·leetcode·深度优先
隔窗听雨眠2 小时前
Nginx网关响应慢排查手记
java·服务器·nginx
IT大白鼠2 小时前
RSTP协议原理与配置详解:快速生成树技术的深度解析
网络·网络协议