思路:利用curl,wget或者nmap判断RS节点的80端口是否打开。如果没有打开,则可判断RS已坏,就将他剔除负载均衡。
脚本:
#!/bin/bash
IP=`cat /usr/local/nginx/conf/extra/upstream01.conf|grep
192|awk -F "[;+ ]" '{print $2}'`
##取出RS的IP,组成数组
for ip in ${IP[@]} ##从数组中取出单个的RSip
do
a=`curl -I $ip | head -1|awk -F " " '{print $2}'` ##通过curl来判断该RS是否健康
if [[ $a -ne "200" ]] ##如果表头不为200
then
echo $ip ##可以写动作
fi
done
脚本只是提供一个思路。