如何验证后端服务器作为 keepalived 健康检查的一部分是否可以访问?

如何验证后端服务器作为 keepalived 健康检查的一部分是否可以访问?

我目前正在使用 Keepalived 配置高可用性设置来管理 Nginx 服务器之间的故障转移。作为此设置的一部分,我需要实现健康检查脚本来验证 Nginx 是否正在运行以及 Nginx 提供的后端站点是否可访问。

我目前使用的脚本用于killall -0 nginx检查 Nginx 进程是否正在运行。但是,我不确定这是否是确保 Nginx 功能和后端站点可访问性的最有效方法。

使用 curl 脚本向 Nginx 服务器发送 HEAD 请求是否是更好的方法?以下是我正在考虑的修改后的脚本:

vrrp_script check_nginx {
script "/usr/bin/curl --silent --head --fail http://localhost:80/ || exit 1"
interval 2
}

这种替代方法是否更可靠、更可靠,可用于在 Keepalived 脚本中验证 Nginx 功能和后端站点可访问性?我是否应该考虑任何潜在的缺点或更好的替代方案?任何见解或建议都将不胜感激。谢谢!

相关内容