HAProxy Web服务器状态监测

三种状态监测方式: •基于四层的传输端口做状态监测

server 172.18.200.103 172.18.200.103:80 check port 9000 addr 172.18.200.104 inter 3s fall 3 rise 5 weight 1

•基于指定URI 做状态监测
•基于指定URI的request请求头部内容做状态监测
option httpchk

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

示例:

listen web_prot_http_nodes
	bind 192.168.7.102:80
	mode http
	log global
	option httpchk GET /wp-includes/js/jquery/jquery.js?ver=1.12.4 HTTP/1.0 #基于指定URL
	#option httpchk HEAD /wp-includes/js/jquery/jquery.js?ver=1.12.4 HTTP/1.0\r\nHost:\192.168.7.102 #通过request获取的头部信息进行匹配进行健康检测,节省很多不必要的网络开销,降低磁盘IO。
	server 192.168.7.102 blogs.studylinux.net:80 check inter 3000 fall 3 rise 5
	server 192.168.7.101 192.168.7.101:8080 cookie web1 check inter 3000 fall 3 rise 5

实战演示:

在后端服务器(192.168.37.37)新建一个monitor_page目录,并在目录下创建一个index.html文件。

[root@centos37html]#mkdir /var/www/html/monitor_page
[root@centos37html]#echo OK >  monitor_page/index.html
vim  /etc/haproxy/haproxy.cfg

#官网业务访问入口=====================================

listen WEB_PORT_80
        bind 192.168.37.17:80
        mode tcp   改为tcp类型,也会从http服务进行访问。
        rspidel Server:.*
        #option httpchk GET /monitor_page/index.html  HTTP/1.0
        option httpchk HEAD  /monitor_page/index.html  HTTP/1.0\r\nHost:\192.168.37.17 生产用,用HEAD模式,可以节省很多不必要的网络开销,降低磁盘IO,声明是从17的IP地址发起的请求。
        server web1 192.168.37.27:80 check inter 3000 fall 3 rise 5
        server web2 192.168.37.37:80 check inter 3000 fall 3 rise 5

改为HEAD模式(只获取头部信息,并设置为每五秒监控一次),就不会在后端服务器日志中不会再显示文件大小,节省不必要的网络开销,降低磁盘IO。

在网页上进行状态页检查,此时可以看到后端服务器(192.168.37.27)没有monitor_page此目录,就会显示down机现象。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章