防止 MicroServer Gen 10 Plus 的风扇突然狂飙
今年元旦我把之前用的 Gen 8 换成了 Gen 10 Plus。后来想着现在性能上去了,可以把 NAS 的功能也合并进来,于是就把给 NAS 用的两块机械硬盘迁进了 Gen 10 Plus 里。但就在这之后,我发现它的风扇时不时就会突然狂转一分多钟,然后再降回平时的转速。而且这个问题不分白天黑夜,甚至有一次大半夜把我吵醒,不胜其烦。终于在上周,我找到了问题的根源,并彻底解决了。
一些无效的尝试
这一节并没有解决方案,如果你不关心我之前的心路历程,那么可以放心跳到下一节。
最起初,我以为是机械硬盘发热导致的,毕竟问题是出在我把机械硬盘装进来之后。为此我还调换了硬盘的安装位置,把机械硬盘从 3、4 号盘位移到了靠上的 1、3 号盘位。
1 | --------------------- --------------------- |
可惜,并没有任何好转。风扇依旧时不时开始跟李有田似的狂飙,唯一区别是风扇能刹住车(为李有田默哀一秒……
后来我觉得,会不会是硬盘在跑 PT 的时候真的太热了?但是我也在下载的时候摸过硬盘,那个温度撑死只能算温热,怎么想也不会造成整机过热啊?但是本着 “能解决问题就行,哪怕再花点钱” 的想法,我开始找用来替换的 4TB 2.5 寸 SATA 接口固态硬盘。结果…… 并不理想,现在京东自营只找到了三款。更难受的是,根据论坛上的赛博邻居反馈,其中两款是数据火葬场;而剩下的那款,一块盘要卖我两千多块,也就是说两块盘加起来比我买这台 Gen 10 Plus 都贵。所以,换硬盘这个方案也被否了。
正巧就在这个时候,它又开始狂飙。我想,iLO 里面不是能看见温度吗?那赶紧看看是啥玩意这么热呗?这一看,才找到了问题的根源。
问题根源及解决方案
趁着风扇狂飙之际,我进入了 iLO 的温度页面,发现有个传感器 12 - AHCI Max HD
的当前温度是 50°C,而它的警告阈值是 60°C,严重错误阈值是 70°C。也就是说,这时候 BIOS 发现这个东西烫的要挂掉了,所以就要赶紧让风扇转起来散热。等了一会风扇慢下来之后,我发现这个传感器的值变成了 35°C,而且怎么刷新都不变。
搁网上一顿冲浪之后找到了惠普的一篇通告,从这里得知这并不是一个物理上的传感器,它检测到的温度是通过惠普的一个叫 Agentless Management Service
的软件组件向主板汇报的。此外还找到日立的一个类似的通告说硬盘在 AHCI 模式下会导致风扇转速异常升高。
到 ESXi 里面检查了之后,发现我用的惠普定制系统里面是带着 AMS 组件的。这时候我灵机一动,既然是因为 AMS 汇报了错误的温度才导致这个问题,而要让 AMS 汇报正确的温度,那我就得把硬盘换成 HPE 认证的盘,可想而知这玩意没准会相当贵,而且作为个人用户都不一定买得到。那如果我把 AMS 卸了,让传感器拿不到数据呢?
说干就干。保险起见我先去了惠普支持网站,下载好了最新版的 AMS 软件包,一旦出了问题我还可以把它再装回去。然后回到 ESXi,开启 SSH。
1 | # 找到AMS的软件包名 |
两条卸载命令都成功之后,逐个关掉虚拟机,然后重启 ESXi 使修改生效。果不其然,重启之后,iLO 系统信息里面显示 Agentless Management Service
不可用,温度页面里 12 - AHCI HD Max
传感器也消失了。经过一星期的测试,风扇也确实没再狂飙过。问题解决!
一点碎碎念
尽管这个解决方案远称不上完美,甚至有点 “解决提出问题的人” 的感觉。但这应该是权衡利弊之后的最优解。买 HPE 认证硬盘?拜托我只是拿它存电影而已,虽然要是全丢了也挺心疼,但它们确实不值这个钱。卖掉 Gen 10 Plus 再自己组一套 NAS?那又太折腾了,我实在懒得搞。而且就算夏天天气热起来之后,我毕竟也不是重度 PT 玩家,大部分时间硬盘都是空载的,我相信它不会变得很热,不会因为俩机械硬盘搞炸整台服务器。