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所构建的基 ...
随机推荐
- rational rose java.lang.classNotFoundException
C:\Windows\Java\TrustLib\RoseDataModeler.zip;C:\Windows\Java\TrustLib\comwrappers.zip;C:\Win ...
- Easy and cheap cluster building on AWS backup
https://grapeot.me/easy-and-cheap-cluster-building-on-aws.html Thu 17 July 2014 , by Yan Wang | 2 Co ...
- 01背包问题之2(dp)
01背包问题之2 有n个物品,重量和价值分别为wi和vi,从这些物品中挑选出重量不超过W的物品,求所有挑选方案中物品价值总和的最大值 限制条件: 1 <= n <= 100; 1 < ...
- C++解析六-继承
面向对象程序设计中最重要的一个概念是继承.继承允许我们依据另一个类来定义一个类,这使得创建和维护一个应用程序变得更容易.这样做,也达到了重用代码功能和提高执行时间的效果.当创建一个类时,您不需要重新编 ...
- July_One_Week—linked list
#include <stdio.h> #include <stdlib.h> typedef struct linklist { unsigned int count; str ...
- bzoj5016
题解: 吧询问变成前缀形式 然后莫队 代码: #include<bits/stdc++.h> ; using namespace std; ]; ,L=,R=; ,Ans[N]; bool ...
- PropertiesUtil 获取文件属性值
有时候不要把一些属性值写死在代码中,而是写在配置在文件中,方便更改 PropertiesUtil工具类:读取key-value形式的配置文件,根据key获得value值 1.测试类 public c ...
- 简单选择排序(Simple Selection Sort)
body, table{font-family: 微软雅黑; font-size: 13.5pt} table{border-collapse: collapse; border: solid gra ...
- 四:(之三)制作镜像和一些docker命令
3.DIY image 3.1如何去掉sudo权限命令,让当前用户拥有操作docker的权限? 3.2 制作一个image: 拉取一个非常小的base image,hello-world.其中是一个可 ...
- Android : 修改内核源码 and 编译、打包成新的boot.img
一.Android内核源码的下载: 1.Google GIT地址: $ git clone https://android.googlesource.com/kernel/common.git $ g ...