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所构建的基 ...
随机推荐
- Vuejs实现轮播图
css: <style type="text/css"> * { margin: 0; padding: 0; list-style: none; } .clearfi ...
- FTP服务器搭建(Centos7)
1.1.1 查看是否安装vsftp rpm -qa | grep vsftpd 1.1.2 如果没有安装: yum -y install vsftpd 1.2.3 vsftpd.conf 配置文件 匿 ...
- How to import a GitHub project into Eclipse
Assuming you have created a project in GitHub, these are the steps to import it into Eclipse. First, ...
- Java线程池理解及用法
前言 多线程的异步执行方式,虽然能够最大限度发挥多核计算机的计算能力,但是如果不加控制,反而会对系统造成负担.线程本身也要占用内存空间,大量的线程会占用内存资源并且可能会导致Out of Memory ...
- matlab中高维数组怎么做PCA?
PCA需要先求数据的散布矩阵x*x',再求其特征向量,那么随便一个400*450的图像,就是180000维,矩阵就是180000*180000,matlab无法容纳,那么通常的PCA对图像的降维,比如 ...
- Vue(一) 数据绑定和第一个Vue应用
学习 Vue.js 最有效的方法是查看官网文档 数据绑定和第一个Vue应用 先从一段简单的 HTML 代码开始,感受 Vue.js 最核心的功能. <!DOCTYPE html> < ...
- Python自然语言处理---信息提取
1.数据 目前的数据总体上分为结构化和非结构化的数据.结构化的数据是指实体和关系的规范和可预测的组织.大部分的需要处理的数据都属于非结构化的数据. 2.信息提取 简言之就是从文本中获取信息意义的方法. ...
- java 一些容易忽视的小点-数据类型和运算符篇
注释 文档注释: 以"/**"开头以"*/"结尾,注释中包含一些说明性的文字及一些JavaDoc标签(后期写项目时,可以生成项目的API) 行注释: 以 ...
- day9-复习学习python实例
学习实例代码 #求1到100的和print ("##################1到100求和#################")def sum(a,b): s = 0 fo ...
- Yii验证码简单使用及
控制器:(写了貌似也没用,未解决验证码位数:位数可改核心代码) public $layout = false;//隐藏导航 public function actions(){ return [ // ...