![APC Smart-UPS:远程断电?](https://linux22.com/image/522677/APC%20Smart-UPS%EF%BC%9A%E8%BF%9C%E7%A8%8B%E6%96%AD%E7%94%B5%EF%BC%9F.png)
鉴于:
- 一个服务器机房,里面有大约二十几台机架式服务器和一个 PBX。
- 大约有十几台 APC Smart-UPS 2200 为该设备提供电源。
- 一个灭火项目,要求在释放灭火剂来扑灭电气火灾时立即切断所有服务器的电源。
- 我们假设,使用单独的硬件,我们将能够从灭火系统的警报继电器输出生成 SNMP 陷阱,并且这将触发我们的 Nagios 服务器(幸运的是它不与任何其他服务器共享机架或 UPS)上的某种 UPS 电源关闭脚本。
问题:
- 假设我们为每个 UPS 配备以太网卡,是否可以通过 SNMP 关闭插入 APC UPS 的所有设备的电源?我看到的文档大量提到了在电源故障时通过 PowerChute 正常关闭服务器的能力;在这种情况下,我们没有时间正常关闭它们。
- 为了实现此目的,我们使用哪种型号的以太网适配器重要吗?看来旧的 10Mbps 型号 (AP9606) 翻新后的价格比购买当前型号的卡便宜很多;我不清楚除了以太网带宽之外,功能集是否有显著差异。
- 出于某种原因,使用串行电缆而不是以太网卡是否更好?
这个问题的目的是了解您使用 APC UPS 的实际经验。到目前为止,我们还没有使用过任何远程管理功能,而且我迄今为止找到的文档似乎没有明确说明是否可以通过 SNMP 随意关闭电源。
答案1
根据 UPS 的具体型号,最好的办法是将这些 UPS 背面的 EPO 端口连接到消防面板上的 EPO 开关。
Smart-UPS 2200 手册,请参阅第 6 页。
由于这些 UPS 实际上具有内置的紧急断电功能,为了让您的消防检查员满意,您需要将这些端口连接到消防面板本身的 EPO 功能。我不是电工,所以我不知道如何将 10 个这样的端口连接到消防面板上的单个 EPO 端口,但这个问题应该由消防面板系统供应商来回答。
在与每个 UPS 相连的服务器上安装自杀软件监视器这种半心半意的做法,足以让消防检查员以特殊的方式摇头,这意味着你必须重新做一遍,但这次是正确的。
答案2
请注意,对于计算机而言,“关机”和“断电”是有区别的。当服务器自行关闭时,主板仍保持供电,并且服务器完全能够自行重新启动(想想局域网唤醒)。断电 ATX 供电主板的唯一方法是切断电源。在灭火情况下,您希望从服务器中切断所有电源,而不仅仅是让服务器自行关闭。
也就是说,如果您有任何提前通知,您应该向服务器发送的命令不是“正常关闭”——这可能需要几分钟才能完成。相反,您的目标应该仅限于保护数据完整性。紧急同步和卸载所有文件系统是一个更好的选择,因为它通常需要不到一秒钟的时间才能完成,这可能是您拥有的所有时间。
echo s >| /proc/sysrq-trigger
echo u >| /proc/sysrq-trigger
答案3
当我得知 Nagios / SNMP 解决方案正在执行灭火工作时,我将无法安然入睡。
我唯一能接受的选择是:UPS 内部的某些设备在检测到过热(例如环境温度明显高于正常值)时触发关机;或者使用某种热继电器或类似装置硬接线到 EPO 端口(有时称为 REPO 端口)。您希望它在任何情况下都能正常工作,毫无疑问。
答案4
我用过NUT(网络 UPS 工具)在 Linux 上通过串行端口、USB 和 SNMP 监控和控制 APC UPS。(您可能需要一些多端口串行卡来处理一堆 UPS。)有适用于 Windows 的客户端,并且该软件可在大多数 Unix 版本上运行。
NUT 有在电池耗尽前强制关机的选项。根据命令集,可以立即关闭电源,或立即启动受控关机。系统间控制通过系统正常以太网端口进行。
剩下的问题就是通知主控制器灭火系统已经启动。