Debian 升级后,Pacemaker 无法再启动 Nginx

Debian 升级后,Pacemaker 无法再启动 Nginx

我有一个 Pacemaker 集群,它控制多个类型的资源ocf:heartbeat:IPaddr2和一个类型的资源ocf:heartbeat:nginx。自从升级到 Debian 12 以来,它无法再启动 Nginx。发生的情况是,Pacemaker 尝试在一侧启动 Nginx,40 秒后放弃,然后在另一侧尝试,40 秒后再次放弃。在两个 40 秒间隔内,Nginx 似乎工作正常。经过这些尝试后,Nginx 资源保持停止状态,错误消息显示“无法执行 nginx start on ... (超时:资源代理未在 40 秒内完成)”。

我查看了各种日志文件,但还是找不到原因。我该如何进一步诊断和解决此问题?(作为一种解决方法,我可以使用 启动 Pacemaker 控制范围之外的 Nginx systemctl start nginx.service。与集群的正常运行相比,这不是最理想的,但确实表明配置是完整的。)

答案1

让我建议另一种解决方法。起搏器本身运行这个systemctl start nginx.service... stop ...。我在生产中成功使用了它(对我来说这不是一个“解决方法”)。

Pacemaker 可以自然地控制服务通过systemd,使用其单元,如文档

要使用它,请ocf:heartbeat:nginx创建 ,而不是资源systemd:nginx。在 CIB 中它看起来像<primitive id="nginx" class="systemd" type="nginx" />

请注意,Pacemaker 将请求启动或停止 systemd 单元;您需要禁用该服务使用 systemd 自动启动systemctl disable nginx.service

相关内容