Skip to content

VMware ESXi升级与集群整合完整指南

概述

VMware ESXi升级与集群整合是企业虚拟化环境演进的重要工作。本文档详细介绍从旧ESXi环境升级到新版本、集群整合和存储集成的完整流程,包括vCenter部署、ESXi升级、虚拟机迁移和存储集群构建等步骤。

环境信息

网络环境

  • 管理服务器:10.1.1.104(部署vCenter Server)
  • 新ESXi集群:10.1.1.101-104(升级后的ESXi 8.0集群)
  • 源ESXi环境:192.168.1.200(待迁移的旧环境)
  • 存储集群节点:10.1.1.111-114(iSCSI存储节点)

软件版本

  • vCenter Server:8.0
  • ESXi目标版本:8.0U1d

第一阶段:部署vCenter与ESXi升级

1. 安装vCenter 8.0

在管理服务器(10.1.1.104)上部署VMware vCenter Server 8.0:

bash
# 1. 下载vCenter Server 8.0安装包
# 2. 上传到管理服务器并解压
# 3. 执行安装程序,配置网络和存储访问权限

# 注意事项:
# - 确保硬件满足vCenter 8.0系统要求
# - 准备PostgreSQL或外部数据库
# - 配置适当的NTP时间同步
# - 预先准备SSL证书(如使用自定义证书)

2. 准备ESXi主机升级

bash
# 1. 通过数据存储浏览器将ESXi 8.0U1d升级包上传至各自的存储
# 文件位置:/vmfs/volumes/各自目录/VMware-ESXi-8.0U1d-23299997-depot.zip

# 2. 备份每台主机的配置文件和关键数据
# - 导出虚拟机配置
# - 备份网络配置
# - 保存自定义脚本和配置

3. 执行ESXi升级流程

对每台主机(10.1.1.101-104)执行以下步骤:

3.1 将虚拟机关机

bash
# 通过vCenter或直接关闭虚拟机
# 确保所有虚拟机已正常关机,而非强制关机

3.2 启用SSH服务

bash
# 通过DCUI启用SSH服务
# 或通过命令行启用:
vim-cmd vmsvc/getvalidationpolicy SSHServer
vim-cmd vmsvc/setvalidationpolicy SSHServer true

3.3 将主机置入维护模式

bash
# 通过vCenter或命令行置入维护模式
vim-cmd hostmaintenance.enter --maintenance-mode=true

3.4 通过SSH连接执行升级命令

bash
# 通过SSH连接到每台ESXi主机
ssh root@10.1.1.101

# 列出可用软件配置文件
esxcli software sources profile list -d /vmfs/volumes/各自目录/VMware-ESXi-8.0U1d-23299997-depot.zip

# 执行升级
esxcli software profile update --depot=/vmfs/volumes/各自目录/VMware-ESXi-8.0U1d-23299997-depot.zip -p ESXi-8.0U1d-23299997-standard

# 查看更新状态
esxcli software profile get

3.5 重启主机并验证升级结果

bash
# 重启ESXi主机
reboot

# 验证升级结果
esxcli system version get

3.6 退出维护模式并恢复虚拟机运行

bash
# 退出维护模式
vim-cmd hostmaintenance.enter --maintenance-mode=false

# 启动虚拟机

第二阶段:虚拟机迁移与集群整合

1. 配置vMotion和存储迁移网络

bash
# 在新的ESXi 8.0集群(10.1.1.101-104)上配置专用vMotion网络
# 创建vMotion端口组
# 配置物理网络适配器
# 验证与源环境(192.168.1.200)的网络连接

vMotion网络配置示例:

  • 专用网络接口:vmnic0-vmnic1
  • 网络隔离:VLAN 30专用于vMotion流量
  • MTU配置:9000(支持巨型帧)

2. 虚拟机迁移

将192.168.1.200上的所有虚拟机迁移至新的ESXi 8.0集群:

bash
# 使用vCenter的迁移功能
# 根据业务需求选择适当迁移方式:
# - vMotion在线迁移(小停机时间)
# - 冷迁移(适用于大型数据库或复杂系统)
# - 存储vMotion(通过共享存储)

迁移策略建议:

  • 低优先级虚拟机:首先迁移
  • 关键业务虚拟机:在非业务高峰期迁移
  • 大型数据库虚拟机:考虑冷迁移后启动

第三阶段:存储集群部署

1. 重装10.1.1.111-114节点

将10.1.1.111-114的四个节点重新安装为存储集群:

bash
# 1. 准备存储集群硬件
# - 确认硬件兼容性
# - 配置RAID控制器
# - 安装专用存储操作系统

# 2. 安装和配置ESXi
# - 4个节点安装ESXi 8.0
# - 配置专用管理网络

# 3. 配置vSAN或外部存储
# - 若使用vSAN,启用vSAN功能
# - 若使用外部存储,配置HBA卡

2. 配置iSCSI存储服务

bash
# 1. 配置iSCSI目标服务
# - 创建iSCSI目标
# - 配置LUN映射
# - 设置访问控制

# 2. 配置高可用性功能
# - 启用多路径
# - 配置故障转移机制

3. 存储集成

将iSCSI存储从10.1.1.111-114存储集群挂载到10.1.1.101-104 VMware集群:

bash
# 1. 在ESXi主机上配置软件iSCSI启动器
# - 添加iSCSI目标
# - 配置CHAP认证
# - 设置发现和登录

esxcli iscsi adapter discovery sendtarget -a 10.1.1.111 -d vmhba33
esxcli iscsi adapter discovery sendtarget -a 10.1.1.112 -d vmhba33
esxcli iscsi adapter discovery sendtarget -a 10.1.1.113 -d vmhba33
esxcli iscsi adapter discovery sendtarget -a 10.1.1.114 -d vmhba33

# 2. 配置MPIO多路径
# - 启用多路径策略
# - 设置负载均衡算法
# - 配置故障切换

esxcli storage nmp satp rule add --satp VMW_SATP_ALUA --psp VMW_PSP_FIXED --device "naa.*"

4. 在vCenter中注册新存储

bash
# 1. 添加iSCSI存储提供程序
# 2. 创建数据存储
# 3. 配置存储策略和性能调优

存储性能优化参数:

  • 队列深度:32-64
  • I/O大小:1MB
  • 缓存策略:write-back

高级配置与优化

1. 集群高级设置

bash
# 1. 配置DRS(Distributed Resource Scheduler)
# 启用自动化负载均衡
# 设置迁移阈值
# 配置电源管理

# 2. 配置HA(High Availability)
# 设置故障切换域
# 配置隔离响应
# 配置数据存储心跳

2. 网络优化

bash
# 1. 配置网络I/O控制
# 为管理流量、vMotion流量和虚拟机流量设置优先级

# 2. 启用Jumbo Frames
# 配置9000 MTU across all relevant switches

3. 存储性能调优

bash
# 1. 配置存储多路径
# 设置多路径策略为"round-robin"
# 启用路径负载均衡

# 2. 优化iSCSI参数
# 调整登录超时时间
# 优化重试参数

验证与测试

1. 集群功能验证

bash
# 1. 测试vMotion功能
# 在集群内部测试虚拟机迁移

# 2. 测试HA功能
# 模拟主机故障,验证虚拟机自动重启

# 3. 测试存储连接
# 验证所有ESXi主机都能访问共享存储

2. 性能基准测试

bash
# 1. 使用vRealize基准测试工具
# 测试CPU性能
# 测试内存性能
# 测试网络性能
# 测试存储性能

# 2. 压力测试
# 使用LoadRunner等工具模拟高负载
# 监控系统资源使用情况

注意事项与风险规避

1. 升级前准备

bash
# 1. 确保所有ESXi主机硬件兼容性
# 检查VMware硬件兼容性列表
# 确认BIOS/Firmware版本

# 2. 备份关键配置
# vCenter配置导出
# 集群配置备份
# 分布式交换机配置备份

# 3. 验证环境状态
# 网络连接测试
# 存储连接验证
# 许可证状态检查

2. 风险规避措施

bash
# 1. 准备详细的回滚计划
# 记录回滚步骤
# 准备回滚所需工具
# 预留足够的回滚时间窗口

# 2. 分阶段实施升级
# 先升级测试环境
- 再升级非关键生产环境
- 最后升级关键生产环境

# 3. 测试虚拟机兼容性
# 使用VMware工具测试兼容性
- 小规模试点测试
- 验证关键应用功能

3. 执行前检查

bash
# 1. 完整备份
# 全系统快照(支持的话)
- 关键数据库备份
- 虚拟机镜像备份

# 2. 状态检查
# 集群健康状态
- 存储空间利用率
- 网络延迟测试

# 3. 资源准备
- 确认足够临时存储空间
- 确认网络带宽满足需求
- 确认有足够的管理时间窗口

故障排查

1. 常见升级问题

问题1:升级失败

bash
# 检查升级日志
cat /var/log/vmware/esxupdate.log

# 检查磁盘空间
df -h

# 检查网络连接
ping vcenter-server

问题2:vMotion失败

bash
# 检查vMotion网络配置
esxcli network vswitch standard list

# 检查防火墙规则
esxcli network firewall ruleset list -r true

# 检查VMkernel日志
grep -i vmotion /var/log/vmkernel.log

2. 存储连接问题

bash
# 检查iSCSI会话状态
esxcli iscsi session list

# 检查路径状态
esxcli storage core path list

# 检查多路径配置
esxcli storage nmp device list

监控与维护

1. 集群监控

bash
# 1. 配置vCenter警报
# 设置主机CPU使用率警报
# 设置内存使用率警报
# 设置存储空间警报
# 设置网络连接警报

# 2. 配置性能图表
# CPU使用率趋势
# 内存使用率趋势
# 网络I/O趋势
# 存储I/O趋势

2. 定期维护

bash
# 1. 更新ESXi补丁
# 每季度检查安全补丁
# 安装关键补丁

# 2. 存储维护
# 定期检查存储性能
# 验证数据一致性
# 清理冗余数据

# 3. 文档维护
# 更新网络拓扑图
# 更新系统配置文档
- 记录变更日志

总结

VMware ESXi升级与集群整合是一项复杂的工程,需要周密规划和分阶段执行。通过合理的升级策略、迁移方案和存储配置,可以构建一个高性能、高可用的虚拟化平台。执行过程中需要注意风险规避,确保业务连续性,并建立完善的监控和维护机制。

用心记录,持续学习 | CNB