我们正在使用社区 Chef apache2 食谱并取得巨大成功;我的问题围绕着使用“通知”通知机制来告诉 Apache 2 配置更改。
我们运行自定义看门狗实用程序以重启整个应用程序,包括 Apache,如果它变得无响应。此看门狗实用程序查询特定状态 URL 以确定可用性。问题是,如果时机不对并且看门狗在 Chef 重新启动 Apache 时进行健康检查,那么整个应用程序堆栈都会被反弹。
有没有一种方法可以让“通知”机制在运行结束时重新启动 Apache 时关闭看门狗?然后在 Apache 重新启动后再次启动看门狗。
谢谢,
弗雷德。
另一种方法是让看门狗在确定服务确实关闭之前需要一段时间。因此,它应该在 3 分钟内测试 URL 10 次,以确定服务确实已关闭。这 10 个失败结果应该是连续的。
回答我自己的问题——我所做的是让看门狗应用程序“知道厨师”。也就是说,当 Chef 正在运行时,它不能重新启动任何东西,即使它注意到某些东西已关闭。这样可以防止虚假重启。