如何在UPS后唤醒服务器closures主电源时closures服务器?

我有几台连接到APC UPS的Linux服务器。 它们通过USB连接到UPS,并configuration为在UPS发出主电源丢失并且一段时间后没有返回的信号时closures。 这很好。 此外,它们通过跳线configuration,以便在电源丢失时自动开机,然后返回。 这也很好。

造成问题的情况是主电源丢失,服务器closures,但在UPS用完之前主电源恢复。 在这种情况下,我们希望服务器重新启动,但是由于电源在UPS之后永远不会丢失,所以服务器从不会看到电源恢复事件,因此无法启动。

我希望有一个设备,可以插入主电源pre-UPS,并感知电源返回状态,并可能通过唤醒发送唤醒信号,预先configuration服务器唤醒一旦主电源已经返回某人可以指向我。

备选build议也赞赏,只有我不能做的是取代服务器硬件,我宁愿保持相同的UPS,如果可能的话。

使用UPS时实施的典型场景是:

  1. 在掉电时,UPS会通知与其连接的系统上的软件组件。
  2. 如果电源丢失时间超过n秒,UPS驱动程序将通知UPS并暂停系统而不closures电源 (这很重要)。
  3. UPS等待m秒,系统停止,并切断电源。
  4. 当UPS恢复供电并且UPS电池被充电到最低限度时(以便在机器启动后电源丢失时它可以支持通电和干净的关机),UPS恢复系统的电源。
  5. 系统通知(在BIOS / UEFI级别),它们在断电之前已通电,因此启动。

在大多数服务器BIOS中,您可以将系统设置为在断电之前恢复电源状态。 这意味着,如果服务器断电并且电源丢失,插入电源后它将保持closures状态。另一方面,如果电源开启,当电源丢失时,AC将会上电恢复。

由BillThor提到的NUT应该允许你实现这种情况。

这个问题,我解决了使用一个小的Linux机箱(华硕wl豪华或smth)插入主UPS,并尽快唤醒作为权力恢复。 启动脚本包括一个5分钟的延迟,以避免电源状态(上/下),WOL所有服务器(所有w2k3,一个Linux)的任何变化,并与我的状态短信。

在阅读了很多build议之后,我认为一个很好的解决scheme就是使用任何一台旧电脑(如果你不在乎功耗),还是使用某种直接连接能源的树莓派。

所以,当电源上升时,一个脚本会检查服务器是否打开,如果没有,则通过networking发送一个OWL。

对于这种情况我使用NUT(networkingUPS工具) 。 您将需要基于Unix / Linux的服务器来监视UPS。 一旦关机开始,它将确保UPS电源循环。 如果服务器在恢复供电时重启,这将使服务器恢复。

有一个Windows服务器的客户端,所以他们可以closures干净。

如果您的BIOS有可能设置开机时间,则可以在关机后将其设置为50分钟,如果通过UPS关机信号触发关机。

所以在你的情况下,服务器将在50m + boot + shutdown-time latest之后再次运行。

我喜欢所有前面提到的想法。 我想build议在笔记本电脑上运行“NUT”服务器或“WoL”服务器,盖上盖子。 这样,仅靠电池就可以运行4-6个小时。 有些笔记本电脑可以一次安装2个电池,甚至长时间运行。