我的系统配置如下:
- Linux 服务器上的数据库服务器
- 另一台 Linux 服务器上的 Web 应用程序
出于卫生目的,我希望每周至少在晚上重启这些服务器一次。
限制条件如下:
- 当 Web 应用程序加载时,数据库必须已经在线
- 停机时间应尽可能短
- 不想依赖服务器之间的时间同步
您能建议一个简单而干净的方法来实现这一点吗?
我想我必须创建一个 cron 作业,但是除了发出服务器关闭命令之外,我不知道如何等待 Web 应用程序启动直到数据库再次上线。
答案1
为了“清理”而重启服务器是一种糟糕的管理方法。除非您正在安装更新或有正当理由,否则请不要这样做。
如果您确实想继续,并且您认为数据库服务器需要一段时间才能重新启动(而 Web 服务器则不需要),那么您可以将 Web 服务器的重新启动安排在 Web 节点几分钟后进行(以便在持续时间内呈现一个漂亮的错误页面)。或者,您可以编写一个脚本,彻底关闭数据库服务器并确保它在重新启动 Web 服务器之前重新上线。
编辑:我还注意到您在标题中提到了主/从。您描述的拓扑不包括任何主/从。