Haproxy 关于服务器故障事件

Haproxy 关于服务器故障事件

我已设置了一个 HAproxy 服务器(前端)和多个 Web 服务器(后端)。是否可以配置 HAproxy,以便在 Web 服务器宕机时执行脚本?

答案1

我认为您问的是您想在后端服务器之一发生故障时发送邮件,对吗?我不认为有办法从 HAProxy 内部触发此操作。一种方法是让脚本定期检查后端的状态,并在后端发生故障时发送电子邮件。您可以使用 HAProxy 套接字接口获取此信息。文档是这里。您可能需要解析show stat命令的输出。祝您好运!

答案2

我相信下面的脚本会对你有所帮助。请根据需要对其进行修改。你需要在你的 cron 中安排它。当 apache 停机和重新启动时,你可以使用 mailx 发送电子邮件。

RESTART="/etc/init.d/httpd restart"

#incase if you are on Deb based boxes
#RESTART="/etc/init.d/apache2 restart"


PGREP="/usr/bin/pgrep"

HTTPD="httpd"

# find httpd pid
$PGREP ${HTTPD}

if [ $? -ne 0 ] 
then
 # restart apache
 $RESTART
fi

答案3

你可以通过 HaProxy 本身来执行此操作,它为你提供了 httpchk 指令,下面是一些示例语法

option httpchk
option httpchk <uri>
option httpchk <method> <uri>
option httpchk <method> <uri> <version>

相关内容