一个监控磁盘的nagios脚本

1. 在客户端上创建脚本/usr/local/nagios/libexec/check_disk.sh
vim  /usr/local/nagios/libexec/check_disk.sh 写入如下内容:(client上)
#!/bin/bash
#!/bin/bash
row=`df -h |wc -l`
for i in `seq 2 $row`
do
ava=`df -h |sed -n “$i”p|awk ‘{print $4}’`
u_per=`df -h |sed -n “$i”p|sed -n “s/\%//”p|awk ‘{print $5}’`
p_p=`df -h -P|sed -n “$i”p|awk ‘{print $6}’`
if [ “$u_per” -gt “97”  ];then
echo -n “$p_p CRITICAL $u_per% $ava  ”
sta[$i]=2
elif [ “$u_per” -gt “95” ];then
echo -n “$p_p WARNING! $u_per% $ava  ”
sta[$i]=1
else
echo -n “$p_p OK $u_per% $ava  ”
sta[$i]=0
fi
done
n=0
for j in `seq 2 $row`
do
if [ “${sta[$j]}” -gt $n  ];then
n=${sta[$j]}
fi
done
exit $n

2. 保存后,修改该脚本的权限
chmod +x  /usr/lib/nagios/plugins//check_disk.sh (client上)
3. 然后编辑/etc/nagios/nrpe.cfg文件
vim /etc/nagios/nrpe.cfg  # 加入一行:(client上)
command[check_disk]=/usr/lib/nagios/plugins/check_disk.sh
保存,重启nrpe服务
/etc/init.d/nrpe restart (client上)
4. 检测刚才的脚本是否正常运行的方法是,到server端执行如下命令:
check_nrpe -H 192.168.210.12 -c check_disk (server上)
如果正常的话,会输出一行磁盘检测的数据,否则可能会报错。
5. 到server上添加相应的service
192.168.210.12.cfg     # 加入如下内容:
define service{
use     generic-service
host_name       192.168.0.12
service_description     check_disk
check_command           check_nrpe!check_disk
max_check_attempts 5
normal_check_interval 1
}
6. 重启nagios服务
/etc/init.d/nagios restart   (server上)

时间: 2024-10-09 22:01:02

一个监控磁盘的nagios脚本的相关文章

mysql 主从备份监控slave状态nagios脚本

#!/bin/bash cmd='mysql -uslave -ppasswd -P3306 -h 192.168.0.72 -Be' status=`$cmd 'show slave status\G'` Seconds_Behind_Master=`echo "$status"|awk '/Seconds_Behind_Master/{FS=":";print $2}'` Read_Master_Log_Pos=`echo "$status"

Linux监控磁盘大小的脚本

#!/bin/bash #monitor available disk spare SPACE=`df -h | sed -n '/\/$/p'|gawk '{print $5}'| sed -s 's/%/ /g'` if [ $SPACE -gt  30 ] then echo "192.168.2.2的磁盘空间不足30%,请管理员及时增加空间存储量" | mutt -s "192.168.2.2" [email protected] fi

Linux/Unix shell 脚本监控磁盘可用空间

Linux下监控磁盘的空闲空间的shell脚本,对于系统管理员或DBA来说,必不可少.下面是给出的一个监控磁盘空间空间shell脚本的样本,供大家参考. 1.监控磁盘的空闲空间shell脚本 [python] view plain copy print? [email protected]:~/dba_scripts/custom/bin> more ck_fs_space.sh #!/bin/bash # --------------------------------------------

一个监控挂载盘的python脚本

我们产品线有一个公用的挂载盘,主要是用来方便各位开发放置他们自己的一些工作材料,比如异常的日志,或者tcpdump的抓包等等,但是这个盘由于使用人众多,容量自然要有监控,于是就有了写这个脚本的动机. 在这里我写了两个脚本,上面这个是用来监控磁盘容量,然后通过df -h的排序生成前十名占容量最大的文件夹,把这个文件夹的名字和对应的大小重定向到一个叫alarm.txt这个文件里,这个文件就是邮件正文.然后在确定他们的主人,得到他们主人的邮箱地址,最后用下面那个脚本来发送邮件: #!/usr/bin/

用于Nagios中监控elasticsearch健康状态脚本

在Nagios社区中上找了下相关用于监控elasticsearch索引的脚本,再经过修改下,可以在平时用于传入elasticsearch的监听ip用于在Nagios中使用监控elasticsearch健康状态的脚本 #!/bin/bash #check_elasticsearch_health.sh #Memo for Nagios outputs STATE_OK=0 STATE_WARNING=1 STATE_CRITICAL=2 STATE_UNKNOWN=3 #Position para

【Python运维脚本】Python监控磁盘

#!/usr/bin/env python # -*- coding=utf-8 -*- #Using GPL v3.3 #Author: [email protected] #Python监控磁盘 """ 1.实现原理:通过SNMP协议获取系统信息,再进行相应的计算和格式化,最后输出结果 2.特别注意:被监控的机器上需要支持snmp.yum install -y net-snmp*安装 """ #!/usr/bin/python import

python脚本监控磁盘空间

写了个python小程序,监控磁盘空间,前面部分网上也有很多,写博客的目的是记录下来,已供自己后面使用,思路就是用pexpect 这个模块,ssh到不同的机器上,查到磁盘空间,最后对查到的结果进行处理,然后存到mysql数据中.以下是代码: #coding=utf8 import pexpect import getpass,os,sys import re,datetime, time def ssh_command (user, host, password, command): ssh_n

Linux监控软件之 Nagios

一.简介 Nagios是一款开源的电脑系统和网络监视工具,能有效监控Windows.Linux和Unix的主机状态,交换机路由器等网络设置,打印机等.在系统或服务状态异常时发出邮件或短信报警第一时间通知网站运维人员,在状态恢复后发出正常的邮件或短信通知. Nagios原名为NetSaint,由Ethan Galstad开发并维护至今.NAGIOS是一个缩写形式: "Nagios Ain't Gonna Insist On Sainthood" Sainthood 翻译为圣徒,而&quo

监控三剑客之Nagios

Nagios是一个流行的电脑系统和网络监控程序,它检测主机和服务,当异常发生和解除时能提醒用户.它是基于GPLv2开发的开源软件,可免费获得及使用. nagios工作原理 nagios的功能是监控服务和主机,但是其自身并不包括这些功能,所有的监控.检测功能都是通过各种插件来完成的.启动nagios后,它会周期性的自动调用插件去检测服务器状态,同时nagios会维持一个队列,所有插件返回的状态信息都进入队列,nagios每次都从队首读取信息,进行处理后,再把状态结果通过web显示出来.这就是被动模