批量监控服务器服务是否正常

工做中会遇到服务异常中止的情况,针对这些问题,作了一个服务状态的监控。shell

例如时间同步服务 NTP,异常中止,没有告警系统是个很危险的情况。bash

本文采用:ide

shell脚本+自定义监控zabbix 实现短信告警blog

脚本以下:ip

#!/bin/bash


# Confirm OS Version
unset OS_VERSION

uname -r | grep el5 > /dev/null && OS_VERSION=el5
uname -r | grep el6 > /dev/null && OS_VERSION=el6
uname -r | grep el7 > /dev/null && OS_VERSION=el7

# Begin check 
if [ "$OS_VERSION" = "el5" -o "$OS_VERSION" = "el6" ];then
    pidof ntpd &> /dev/null
    if [ $? -ne 0 ];then
		ntpd_service_status=false   ##能够将这里的值定义一个变量,作为参数,自定义
		到监控项中
        echo "ntpd_service_status $ntpd_service_status"
        echo "DOWN"
        echo "Check [ntp service status]... FAILED"
    
	else
		ntpd_service_status=true
       
#        echo "UP"
    fi
elif [ "$OS_VERSION" = "el7" ];then
    pidof chronyd &> /dev/null
    if [ $? -ne 0 ];then
		ntpd_service_status=false
        echo "DOWN"
        echo "Check [chrony service status]... FAILED"
       
    else
		ntpd_service_status=true
        echo "UP"
    fi
fi


zabbix 脚本传参存放路径
get

**yum安装的**同步

/usr/lib/zabbix/alertscripts/it

在写一个简单的传参脚本io

#!/bin/bash
addressee=$1
theme=$2
content=$3

    echo "$addressee" >> /tmp/test.txt
    echo "$addressee" >> /tmp/test.txt
    echo "$addressee" >> /tmp/test.txt
    
为了验证zabbix是否调用脚本,写了一个echo  生活实验环境没有公司的阿里大鱼可用,思路同样

zabbix报警媒介设置class

wKioL1lEnwDAtgGDAACCVy3M5mo197.png



配置动做


wKioL1lEpPbi4dCvAACWDdfB5Ds651.png


配置用户--报警媒介

wKiom1lEqHjzeP3IAACFYjTAvw8629.png-wh_50

配置到主机,手动触发告警。

相关文章
相关标签/搜索