Skip to content

Homelab 异常断电修复实录:从半夜关机到 vCenter 重生

Homelab 异常断电修复实录:从半夜关机到 vCenter 重生示意图

一台靠得住的服务器,总会在你最不注意的时候,给你上一课。

事发经过

一个普通的夜晚,家里意外断电。我以为这只是个小事——等电来了,服务器自然就起来了。但当我第二天早上去看时,发现事情并没有那么简单。

  • 半夜自动关机:服务器在电来之后曾短暂启动,但在凌晨时分又自动关机了。
  • 按开机键无反应:尝试再次开机,CPU风扇转了几圈后停了下来,再按开机键没有任何反应。
  • 故障范围:主板指示灯和网卡指示灯均正常闪烁,说明电源待机电路是好的,问题出在信号传递环节。

第一阶段:硬件层面的排查

电源保护模式触发

现象:按下开机键,CPU风扇转几圈就停了,电源风扇也没有持续运转。

排查过程

  1. 彻底放电:拔掉电源线,按住开机键30秒,释放主板余电。
  2. 最小化启动:只保留主板、CPU、一根内存条和电源,断开所有硬盘和外设。
  3. 观察现象:电源风扇短暂转动后停止,说明主板进入了保护模式。

CMOS 重置

现象:最小化启动失败后,问题可能出在BIOS设置上。

操作

  1. 拔掉电源线,找到主板上的纽扣电池(CR2032)。
  2. 取下电池,等待2分钟。
  3. 装回电池,重新插电开机。

结果:服务器自动启动了,但无法识别系统盘(ESXi未启动)。

第二阶段:系统启动失败

找不到启动盘

现象:服务器能通电,风扇正常转动,但无法进入ESXi系统。Ping 192.168.0.201 超时。

原因分析:BIOS重置后,启动顺序可能发生了改变,或者SATA线在操作过程中松动。

解决方案

  1. 重新插拔了系统盘(三星860 EVO)的SATA数据线和电源线。
  2. 通过关机重启的方式重新引导尝试 BIOS 自动识别系统盘。

结果:ESXi成功启动,192.168.0.201 可以正常访问。

第三阶段:vCenter 启动失败

no healthy upstream

现象

  • VAMI管理端口(:5480)可以正常访问,显示所有核心组件状态为“正常”。
  • 主Web端口(:443)访问时提示 no healthy upstream

原因分析:vCenter的核心服务已经启动,但负责提供Web界面的服务(httpd)没有正常响应。

排查与修复

  1. 通过VAMI确认服务状态
    • 访问 https://192.168.0.202:5480
    • 确认CPU、内存、数据库、存储等组件均为绿色正常状态。
  2. 进入vCenter控制台手动启动服务
    • 登录vCenter虚拟机控制台(使用root账户)。
    • 执行命令查看服务状态:
      bash
      service-control --status
    • 发现vpxdpostgres等关键服务未正常启动。
  3. 手动启动全部vCenter服务
    bash
    service-control --start --all
    • 等待约2-3分钟,服务全部启动成功。
  4. 验证修复
    • 再次访问 https://192.168.0.202,vCenter Web客户端正常显示。
    • 使用 [email protected] 成功登录。

修复全程时间线

时间点现象操作结果
凌晨(断电后)服务器自动关机-故障发生
早上按开机键无反应彻底放电、最小化启动风扇转几圈后停转
上午仍无法正常开机CMOS重置服务器通电,但无法识别系统盘
中午ESXi无法启动重新插拔SATA线,手动选择启动盘ESXi成功启动
下午vCenter Web界面 no healthy upstream通过控制台执行 service-control --start --allvCenter完全恢复

经验总结与建议

1. 断电对Homelab的影响不容小觑

一次看似普通的断电,可能会引发一系列连锁反应:

  • 电源保护机制触发,导致无法开机。
  • BIOS设置丢失,启动顺序改变。
  • vCenter服务依赖复杂,异常关机后可能不会自动恢复。

2. 解决这类问题的标准思路

阶段问题表现优先排查方向
硬件层按开机键无反应,风扇转一下就停电源保护模式、CMOS重置、最小化启动
系统层服务器能通电,但ESXi无法启动BIOS启动顺序、SATA线连接状态
服务层ESXi启动正常,但vCenter无法访问VAMI(:5480)检查服务状态,手动启动服务

3. 减少未来风险的几个建议

  • 配置VMware Tools自动启动:在vCenter虚拟机选项中,设置“自动启动”为“始终自动启动”。
  • 考虑UPS(不间断电源):如果条件允许,一台UPS可以为服务器提供断电后的缓冲时间,避免频繁异常关机。
  • 定期记录系统状态:记录ESXi和vCenter的IP地址、密码、服务状态,方便排查时快速定位。

结语

这次断电修复,虽然过程曲折,但也让我对Homelab的硬件和服务架构有了更深的理解。很多时候,我们在顺利时不会注意到系统的脆弱性,而一次故障,往往是最好的学习机会。

这台服务器现在又安静地跑起来了,继续为我的K8s实验、GitLab CI/CD和分布式研发环境提供支持。而这份记录,也希望能在未来的某一天,帮你更快地走出类似的困境。


附录:涉及的IP地址

  • ESXi管理地址https://192.168.0.201
  • vCenter管理地址https://192.168.0.202
  • vCenter VAMI管理端口https://192.168.0.202:5480
最后更新2026/07/16 16:32
如果你觉得这篇文章有帮助,或者想聊聊技术、工作,欢迎通过下面方式联系我:
contact fishfinal