LVS节点健康检查及管理脚本
在LVS负载均衡主节点上,模拟keepalived健康检查功能管理LVS节点,当节点挂掉从服务器池中剔除,好了再加到服务器池中来。
工具:yum install -y ipvsadm
web03:10.0.0.17
web04:10.0.0.18
VIP:10.0.0.13

#!/bin/bash
web3() {
curl -I -m 10 -o /dev/null -s -w %{http_code}"\n" 10.0.0.17
}
web4() {
curl -I -m 10 -o /dev/null -s -w %{http_code}"\n" 10.0.0.18
}
ipvs_web3=$(ipvsadm -Ln |grep 10.0.0.17 |wc -l)
ipvs_web4=$(ipvsadm -Ln |grep 10.0.0.18 |wc -l)
checknum=1
checkloop=4
if [ `web3` -eq 200 ];then
if [ $ipvs_web3 -eq 0 ] ;then
ipvsadm -a -t 10.0.0.13:80 -r 10.0.0.17:80 -g -w 1
if [ $? -eq 0 ];then
echo "web03上线"
fi
else
echo "web03正常"
fi
else
if [ $ipvs_web3 -eq 1 ] ;then
while [ $checknum -le $checkloop ];do
if [ `web3` -eq 200 ];then
break
else
let checknum++
fi
if [ $checknum -eq 3 ] ;then
ipvsadm -d -t 10.0.0.13:80 -r 10.0.0.17:80
if [ $? -eq 0 ];then
echo "web03下线"
fi
fi
sleep 1
done
fi
fi
if [ `web4` -eq 200 ];then
if [ $ipvs_web4 -eq 0 ] ;then
ipvsadm -a -t 10.0.0.13:80 -r 10.0.0.18:80 -g -w 1
if [ $? -eq 0 ];then
echo "web04上线"
fi
else
echo "web04正常"
fi
else
if [ $ipvs_web4 -eq 1 ] ;then
while [ $checknum -le $checkloop ];do
if [ `web4` -eq 200 ];then
break
else
let checknum++
fi
if [ $checknum -eq 3 ] ;then
ipvsadm -d -t 10.0.0.13:80 -r 10.0.0.18:80
if [ $? -eq 0 ];then
echo "web04下线"
fi
fi
sleep 1
done
fi
fi
程序还有点bug,不过能用ヽ( ̄▽ ̄)ノ
日期:2018-03-30
LVS节点健康检查及管理脚本的更多相关文章
- Nginx实战系列之功能篇----后端节点健康检查(转)
公司前一段对业务线上的nginx做了整理,重点就是对nginx上负载均衡器的后端节点做健康检查.目前,nginx对后端节点健康检查的方式主要有3种,这里列出: 1.ngx_http_proxy_m ...
- Nginx实战系列之功能篇----后端节点健康检查
目前,nginx对后端节点健康检查的方式主要有3种,这里列出: 1.ngx_http_proxy_module 模块和ngx_http_upstream_module模块(自带) 官网地址: ...
- CentOS7.4 Keepalived+LVS 负载均衡 后台节点健康检查
主机信息 VIP 10.10.10.55 LVS01 10.10.10.59 Web01 10.10.10.60 Web02 10.10.10.61 一.apache简单配置 1.(10.10.10. ...
- 5.Lvs+Keepalived健康检查
1. Nginx+keepalived对后端服务器心跳检查(需要自定义脚本) 原理:Keepalived并不跟nginx耦合,它俩完全不是一家人但是keepalived提供一个机制:让用户自定义一个s ...
- nginx后端节点健康检查
一.nginx健康检查的三种方式 .ngx_http_proxy_module 模块和ngx_http_upstream_module模块(自带) 官网地址:http://nginx.org/en/d ...
- Nginx负载均衡中后端节点服务器健康检查的操作梳理
正常情况下,nginx做反向代理,如果后端节点服务器宕掉的话,nginx默认是不能把这台realserver踢出upstream负载集群的,所以还会有请求转发到后端的这台realserver上面,这样 ...
- nginx之健康检查
正常情况下,nginx做反向代理,如果后端节点服务器宕掉的话,nginx默认是不能把这台realserver踢出upstream负载集群的,所以还会有请求转发到后端的这台realserver上面,这样 ...
- 23、nginx动态添加nginx_upstream_check_module健康检查模块
nginx_upstream_check_module模块地址:https://github.com/yaoweibin/nginx_upstream_check_module 23.1.说明: 1. ...
- lvs健康检查脚本第三版
如下是学习完马哥视频lvs后改写的健康检查脚本第三版.利用工作之余三四个小时时间才把整个逻辑搞清楚,有时候自己都有点蒙圈,尤其是在写到while循环的时候.总的来说非常感谢马哥的慷慨解囊!脚本原稿及思 ...
随机推荐
- python新手菜鸟之基础篇
s=0 for i in range(1,101): s += i else: print(s) def main(n): '''打印菱形图形''' for i in range(n): print( ...
- [安全转帖]浅析安全威胁情报共享框架OpenIOC
浅析安全威胁情报共享框架OpenIOC https://www.freebuf.com/sectool/86580.html Indicator of compromise Outline: 1. I ...
- git bash 连接github并提交项目工程
借鉴博客:https://www.cnblogs.com/flora5/p/7152556.html https://blog.csdn.net/heng_yan/article/details/79 ...
- Quill 富文本编辑器
Quill 富文本编辑器 https://quilljs.com/ https://github.com/quilljs/quill https://github.com/quilljs/awesom ...
- python正则匹配示例
text="山东省临沂市兰山区 市委大院中区21号楼4单元 276002 奥特曼1号 18254998111" #匹配手机号 m=re.findall(r"1\d{10} ...
- 正则 re模块
Python 正则表达式 re 模块 简介 正则表达式(regular expression)是可以匹配文本片段的模式.最简单的正则表达式就是普通字符串,可以匹配其自身.比如,正则表达式 ‘hello ...
- 使用TCP取样器测试Socket接口
1 JMeter下载安装 下载地址:JMeter,选择Binaries下面的zip包. 检查java环境,是否安装了jdk或者jre. 解压zip包->找到bin目录下jmeter.bat文件- ...
- 基于Python清除破损图片需求实现
处理同事爬取的图片时,其因爬取过程中因图片类型/网络等问题,获取到较大批次破损图片,现需清除破损文件,并做简要记录. 要点: 在python中,可以使⽤imghdr模块中的what()⽅法判断图⽚⽂件 ...
- 理解vue 修饰符sync
也是在vux中看到了这个sync 现在我们来看看vue中的sync 我们先看下官方文档:vue .sync 修饰符,里面说vue .sync 修饰符以前存在于vue1.0版本里,但是在在 2.0 中移 ...
- Linux uniq 命令
Linux uniq 命令 Linux 命令大全 Linux uniq 命令用于检查及删除文本文件中重复出现的行列,一般与 sort 命令结合使用. uniq 可检查文本文件中重复出现的行列. 语法 ...