确保在关闭期间 /etc/init.d/nginx 之后停止 upstart 作业

确保在关闭期间 /etc/init.d/nginx 之后停止 upstart 作业

我有一个 upstart 作业 X,它控制一些 Web 进程。在关闭期间,我想确保 X 在 /etc/init.d/nginx 之后停止,这样就不会有任何 502 返回到此服务器前面的 HAProxy 实例。HAProxy 每 2 秒进行一次健康检查,如果 X 先停止,那么在健康检查获得 502 并将服务器从轮换中移除之前,可能还会有很多其他 502 响应。另一方面,如果 nginx 先停止,那么 HAProxy 将无法建立连接,并立即将服务器从轮换中移除。

要求:

  • 启动/停止/重启 nginx -> X 没有任何反应
  • 启动/停止/重启 X -> nginx 没有任何反应
  • 系统关闭 -> 关闭 nginx,然后关闭 X

这可行吗?我是否必须将 X 设为 sysv 初始化脚本?

相关内容