liukaida 发表于 2018-12-29 12:37:40

Keepalived检测

  一.MISC_CHECK:
  1.根据脚本返回值进行处理
  (1).返回0 #目标正常,权重不变
  (2).返回1 #目标异常并立马移除服务队列
  (3).返回2~254 #当目标异常时,修改权重为“返回值-2”,但不移除服务队列,仅当配置                        #了"misc_dynamic"有效
  

  2.示例
  virutal_server 192.168.10.201 80 {
  delay_loop 3
  lb_algo rr
  lb_kind DR
  persistence 15

  protocol TCP
  real_server 192.168.10.38 80 {

  MISC_CHECK {
  #指定脚本绝对路径,脚本与参数必须包含在引号内
  misc_path "/etc/keepalived/bin/Ha_check.sh 192.168.10.38:80"
  #指定检测超时时间

  misc_timeout 3

  #权重调整
  #misc_dynamic
  }
  }
   real_server 192.168.10.35 80 {

            MISC_CHECK {
                  #指定脚本绝对路径,脚本与参数必须包含在引号内
                   misc_path "/etc/keepalived/bin/Ha_check.sh 192.168.10.35:80"
                   #指定检测超时时间

                   misc_timeout 3

                   #权重调整
                   #misc_dynamic
            }
         }
  }
  3.Ha_check.sh 脚本(chmod 755 /etc/keepalived/bin/Ha_check.sh)
  #!/bin/bash

  if [ $# -ne 1 ]
  then
  echo "Warning: check_command error."
  exit 1;
  else
  Check_Host=$1;
  Check_Get=`curl -x $Check_Host --connect-timeout 1 -m 1 -I http://www.baidu.com2>/dev/null | grep "200 OK" | wc -l`
  if [ ${Check_Get} -eq 1 ]

  then
  exit 0;
  else
  exit 1;
  fi
  fi



页: [1]
查看完整版本: Keepalived检测