目前有这么一个需求,需要在电力不稳定的地方建立一个机房(需求就是必须那个地方建),但是那个地方电力时断时续,断了甚至不知道什么时候恢复(可能一两小时、可能一两天等)。因此需要一个服务器(等硬件设备)的优雅停机、优雅重启的方案
我的思路是,在断电和恢复的时候利用 UPS 做一些事情
- 当发生停电的时候触发 UPS 供电,然后服务器在 UPS 的电力供应的情况下向应用程序发送关机的信号,然后应用优雅关闭,虚拟机关闭,然后服务器关机断电
- 当监测到电力恢复并稳定的时候,服务器重启,服务器启动服务器上的虚拟机,虚拟机的 init 进程把一个个实际的应用启动起来,然后服务恢复
这样就可以在不人为干预(或尽可能少认为干预)的情况下完成服务关闭和恢复
那么有疑问来了
- 因为电力不稳定,频繁的关闭启动服务器、硬盘什么的会对其寿命和硬件稳定性产生损害吗(家用 PC 天天重启似乎也没啥问题)?
- 还有什么其他好的方法和建议呢(搬机房不予考虑)?
