keepalived+nginx 脚本自动故障切换

一、keepalived通过脚本监控服务状态
上次谈到keepalived基本配置,下面这部分介绍keepalived使用脚本来检测服务状态。
master 配置
image
使用脚本检测健康状态
image
注意script 后需要填写所使用的脚本的绝对路径
image
实例中启用检测脚本
image
虚拟服务器配置
1> delay_loop:健康检查时间间隔,单位:秒
2> lb_algo:负载均衡调度算法,互联网应用常用方式为wlc或rr
3> lb_kind:负载均衡转发规则。包括DR、NAT、TUN 3种,一般使用路由(DR)转发规则。
4> persistence_timeout:http服务会话保持时间,单位:秒
5> protocol:转发协议,分为TCP和UDP两种

image
真实服务器配置,可以配置多个。
1> weight:负载权重,值越大,转发的优先级越高
2> notify_down:服务停止后执行的脚本
3> WEB_CHECK:服务有效性检测

  • connect_port:服务连接端口
  • connect_timeout:服务连接超时时长,单位:秒
  • nb_get_retry:服务连接失败重试次数
  • delay_before_retry:重试连接间隔,单位:秒
    image
    检测脚本
    判断nginx状态是否为0,为0则nginx服务停止,立即关闭keepalived服务,使VIP漂移到另一台服务器。
    可以自己编写功能更复杂的脚本,例如探测WEB服务某个特定网页的返回状态码等等。
posted @ 2021-10-26 16:51  清风6661  阅读(814)  评论(0)    收藏  举报