是什么
维护模式是 ESXi 主机的一种状态:进入后主机不再接受新的虚机调度,集群若启用 DRS 会把虚机迁走,否则虚机按 DRS 关闭策略被关机。打补丁、升级版本、更换内存与网卡等硬件操作前必须先把主机推进维护模式。SSH 则默认关闭,用于临时执行 esxcli 等命令行操作,属于额外暴露的管理面。
基本信息
| 进入维护 | esxcli system maintenanceMode set --enable true |
|---|---|
| 查看状态 | esxcli system maintenanceMode get |
| 退出维护 | esxcli system maintenanceMode set --enable false |
| 备用命令 | vim-cmd hostsvc/maintenance_mode_enter,老版本脚本中常见 |
| SSH 开关 | vSphere Client 主机 → 操作 → 服务,或用 vim-cmd hostsvc/start_ssh 与 stop_ssh |
典型使用场景
- 升级 ESXi 版本或打补丁前腾空主机,避免升级重启造成虚机异常断电
- 更换硬件、调整 RAID 或 BIOS 设置等需要重启主机的维护动作
- 集群滚动维护:逐台进入维护模式,完成后退出再处理下一台
- 临时开启 SSH 执行 esxcli 批量巡检,采集版本、硬件、网络信息
- 排障时对比主机上虚机分布,确认容量与反亲和规则是否满足迁移条件
维护模式操作序列
维护模式操作序列
esxcli system maintenanceMode get # 进入前先看当前状态
esxcli vm process list | head # 确认本机还有哪些虚机在跑
esxcli system maintenanceMode set --enable true # 进入维护模式
esxcli system maintenanceMode get # 复核已生效
# 维护动作:补丁、固件、硬件……
esxcli system maintenanceMode set --enable false # 维护结束退出状态判读
| 检查项 | 命令或入口 | 判读要点 |
|---|---|---|
| 维护模式状态 | esxcli system maintenanceMode get | Enabled 表示已腾空;Disabled 表示仍承载虚机 |
| 本机虚机 | esxcli vm process list | 进入维护模式后应无业务虚机进程 |
| SSH 服务 | vSphere Client 主机服务列表 | Running 即管理面已暴露,维护结束应停止 |
| 主机容量 | 集群摘要页的资源占用 | 集群剩余容量需覆盖被迁走虚机的需求 |
没有 DRS 却直接进入维护模式,主机上的虚机会按策略关机,业务随之中断。进维护前确认集群已启用 DRS,且目标主机有足够资源承接。
手动启动的 SSH 服务在主机重启后不会自动恢复,这是有意的设计;如需自动启动要在服务策略里显式设置,长期开启并不推荐。