MSC服务器-主从检测脚本-check_server_state.sh
说明:
发现keepalived会在凌晨自动进行主从切换,导致msc相关进程运行不稳定;
通过运行check_server_state.sh,及时终止/启动相关进程;
所有脚本使用supervisord进行管理;
使用smon管理supervisor
#!/bin/bash
msc_vip="10.108.144.6"
check_log="/var/log/sunlight/check_server_state.log"
check_vip=$(ip addr | grep $msc_vip | wc -l)
function print_date()
{
echo `date "+%Y/%m/%d %H:%M:%S"`
}
while true
do
echo "-------------------------------------------------------------"
#master
if [ $check_vip -eq 1 ];then
echo "[ info ] $(print_date) Server is in master state......"
check_gslb=$(ps -ef | grep "gslb_server" | grep -v grep | wc -l)
echo "[ info ] $(print_date) check_gslb number : $check_gslb"
if [ $check_gslb -lt 1 ];then
/usr/local/sunlight/cdn/gslb/bin/startup.sh
fi
check_gnm=$(ps -ef | grep "gnm_server" | grep -v grep | wc -l)
echo "[ info ] $(print_date) check_gnm number : $check_gnm"
if [ $check_gnm -lt 1 ];then
/usr/local/sunlight/cdn/gnm/bin/startup.sh
fi
check_nm=$(ps -ef | grep -E "\bnm_server" | grep -v grep | wc -l)
echo "[ info ] $(print_date) check_nm number : $check_nm"
if [ $check_nm -lt 1 ];then
/usr/local/sunlight/cdn/nm/bin/startup.sh
fi
check_vms=$(ps -ef | grep vms_server | grep -v grep | wc -l)
echo "[ info ] $(print_date) check_vms number : $check_vms"
if [ $check_vms -lt 1 ];then
/usr/local/sunlight/cdn/vms/bin/startup.sh
fi
fi
#slave
if [ $check_vip -ne 1 ];then
echo "[ info ] $(print_date) Server is in slave state......"
check_gslb=$(ps -ef | grep "gslb_server" | grep -v grep | wc -l)
echo "[ info ] $(print_date) check_gslb number : $check_gslb"
if [ $check_gslb -gt 0 ];then
/usr/local/sunlight/cdn/gslb/bin/shutdown.sh
fi
check_gnm=$(ps -ef | grep "gnm_server" | grep -v grep | wc -l)
echo "[ info ] $(print_date) check_gnm number : $check_gnm"
if [ $check_gnm -gt 0 ];then
/usr/local/sunlight/cdn/gnm/bin/shutdown.sh
fi
check_nm=$(ps -ef | grep -E "\bnm_server" | grep -v grep | wc -l)
echo "[ info ] $(print_date) check_nm number : $check_nm"
if [ $check_nm -gt 0 ];then
/usr/local/sunlight/cdn/nm/bin/shutdown.sh
fi
fi
sleep 60
done
MSC服务器-主从检测脚本-check_server_state.sh的更多相关文章
- 检查服务器主从状态的脚本-check_server_state.sh
分别检查服务器在Master/Slave状态下,各项服务是否正常,否则报警: 原来使用keepalived每隔1分钟调用,由于执行结果对keepalived的weight参数有影响,所以移动到外部,使 ...
- python MySQL-Slave从服务器状态检测脚本
#!/bin/bash mysql -e "show slave status\G" > mysql_status.txt array=($(egrep 'Slave_IO_ ...
- Tomcat重启脚本restart.sh停止脚本stop.sh
Tomcat重启脚本restart.sh停止脚本stop.sh Tomcat本身提供了 startup.sh(启动)shutdown.sh(关闭)脚本,我们在部署中经常会出现死进程形象,无法杀掉进程需 ...
- Linux 服务器系统监控脚本 Shell【转】
转自: Linux 服务器系统监控脚本 Shell - 今日头条(www.toutiao.com)http://www.toutiao.com/i6373134402163048961/ 本程序在Ce ...
- Redis + keepalived 高可用行配置检测脚本
Redis 在生产配置中:除redis集群.哨兵模式之外:主从模式还是比较普遍的. 配置 redis 多主从:由 keepalived 做 VIP 地址漂移.可以实现redis的高可用性. keepa ...
- 脚本kafka-configs.sh用法解析
引用博客来自李志涛:https://www.cnblogs.com/lizherui/p/12275193.html 前言介绍 网络上针对脚本kafka-configs.sh用法,也有一些各种文章,但 ...
- Tomcat启动脚本catalina.sh
1 - 概述脚本catalina.sh用于启动和关闭tomcat服务器,是最关键的脚本另外的脚本startup.sh和shutdown.sh都是使用不同的参数调用了该脚本该脚本的使用方法如下(引自该脚 ...
- [记录]CentOS搭建SVN服务器(主从同步)
CentOS搭建SVN服务器(主从同步)1.安装步骤如下: 1)安装: #yum install subversion 2)查看安装位置: #rpm -ql subversion 3)查看版本: #/ ...
- Odoo Linux服务器一键安装脚本使用指南
Odoo安装脚本介绍 为了帮助更多Linux服务器维护人员快速部署Odoo,为此开源智造(OSCG)基于André Schenkels曾经开放的openerp-install-scripts所构建的基 ...
随机推荐
- nginx补丁格式说明(CVE-2016-4450为例)
nginx安全公告地址:http://nginx.org/en/security_advisories.html CVE-2016-4450:一个特定构造的数据包,可引发nginx引用空指针,导致ng ...
- 运维相关 docker
- 整合elk(2)(十三)
配置.启动kibana 到kibana的安装目录: 1 ./bin/kibana 默认配置即可. 访问localhost:5601,网页显示: 证明启动成功. 创建springboot工程 起步依赖如 ...
- 【性能测试工具ab】ab工具使用
1.在安装了apache服务器后,或者wampserver后,在bin目录下,有一个ab.exe文件 2.使用,进入ab.exe所在的文件夹 3.ab -c 10 -n 1000 htt ...
- learning ddr init power-up initialization sequence
- Java 方法重载 方法重写
方法重载规则 参数个数不同 参数个数相同,但参数列表中对应的某个参数的类型不一样 方法的返回类型和参数名称不参与重载 "编译期绑定",,因为未产生对象,只看参数.引用类型绑定方法 ...
- Ubuntu16.04无法使用WiFi
本人联想431,安装ubuntu16.04 lts,打开之后没有wife,参考这个解决 http://blog.csdn.net/bubblem/article/details/53575017 U ...
- OOP⑵
1.问题? 怎么创建对象? 类名 对象名=new 类名(); 在java中只要是看到了()! 这就是方法! 2.构造方法: 创建某个对象的方法! Student stu=new Student(); ...
- 七. Python基础(7)--文件的读写
七. Python基础(7)--文件的读写 1 ● 文件读取的知识补充 f = open('file', encoding = 'utf-8') content1 = f.read() content ...
- opencv3.0+vs2013安装记录
为了能够更好的学习图像,我觉得opencv是一个必不可少的库,因此在以后的研究上使用opencv作为研究工具,与大家共同进步. 话归正题:先搭建opencv的环境. 1.下载安装包3.0 a,官网打开 ...