nagios监控linux主机监控内存脚本
说明
工作包括两部分监控端(一二三)和被监控端(四)
一、nrpe.cfg中添加脚本
nrpe.cfg中添加命令索引
command[check_used_mem]=/usr/local/nagios/libexec/check_used_mem.sh 80 90
说明:实际内存使用量超过80%警告;超过90%严重警告
二、添加具体脚本
参考脚本check_used_mem.sh
warn=$1
critical=$2
all=`free | sed -n '2p' | awk '{print $2}'`
used=`free | sed -n '3p' | awk '{print $3}'`
let "c=$used*100/$all"
if [[ $c -lt $warn ]]
then
echo "used mem/total < $warn% [used:$used, total:$total:$all]"
exit 0
elif [[ $c -lt $critical ]]
then
echo "used mem/total ≥$warn% [used:$used, total:$total:$all]"
exit 1
else
echo "used mem/total ≥$critical% [used:$used, total:$total:$all]"
exit 2
fi
解释:
1. $1、$2分别指输入的第一、二个参数,比如:
del.sh脚本内容为
#/bin/bash
echo $
- sh del.sh a #第一个参数是a
- chmod a+x ./del.sh a #第一个参数是a
2. free用来查看内存的使用情况
[root@xen_202_12 /]# free -m
total used free shared buffers cached
Mem:
-/+ buffers/cache:
Swap:
- total 内存总数: 3072
- used 已经使用的内存数: 2459
- free 空闲的内存数: 612
- shared 当前已经废弃不用,总是0
- buffers: Buffer Cache内存数: 13220
- cached: Page Cache内存数: 2720160
关系:total = used + free
第3行:
-/+ buffers/cache的意思:
-buffers/cache 的内存数: 447 (等于第1行的 used - buffers - cached)
+buffers/cache 的内存数: 2624 (等于第1行的 free + buffers + cached)
注:此处的内存数在用上面式子计算后,在大小上有一点点出入(还不知道是什么原因)。
可见-buffers/cache反映的是被程序实实在在吃掉的内存,而+buffers/cache反映的是可以挪用的内存总数。
3. sed -n '2p'指的是查找第二行
4. awk '{print $2} 指的是第二列,其中默认以空格分隔。可以利用-F指定分隔符
$echo 1b234b56b7 | awk -F 'b' '{print $2}'
5. 实用[[]],<用来比较字符串;-lt用来比较数字
三、重启nrpe
/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d
四、在监控端添加监控项
define service {
use generic-service
host_name 100.61.73.2,,,73.3
service_description 内存
check_command check_nrpe!check_used_mem
notifications_enabled
}
nagios监控linux主机监控内存脚本的更多相关文章
- nagios安装及监控Linux主机
服务端的操作:##################################安装lamp环境及依赖包########################## 24 rpm -ivh gd-de ...
- 一步步实现Nagios监控linux主机及飞信报警
一步步实现Nagios监控linux主机及飞信报警 上篇文章介绍了在linux主机上架设nagios监控服务,并对windows主机进行服务状态变化的监控,这次我们继续上次内容. 首先实现n ...
- Nagios配置—添加linux主机监控
nagios安装请参看:Nginx平台安装Nagios监控服务 下面是我添加linux监控机的过程,如有错误或者不当的地方请指出: 测试环境: 监控主机:nagios+nagios插件+nrpe+网站 ...
- Zabbix监控Linux主机设置
说明: Zabbix监控服务端已经配置完成,现在要使用Zabbix对Linux主机进行监控. 具体操作: 以下操作在被监控的Linux主机进行,这里以CentOS 6.x系统为例. 一.配 ...
- 使用cacti监控linux主机
介绍:使用cacti监控linux主机,需要在linux主机上面安装snmp服务,并修改snmpd.conf文件,指定cacti服务器的地址,然后在cacti的前台界面添加此主机即可,此处以监控cen ...
- zabbix通过snmp监控linux主机
1.安装net-snmp [root@db01 ~]# yum install -y net-snmp 2.修改配置文件 [root@db01 ~]# vim /etc/snmp/snmpd.conf ...
- zabbix通过agent监控linux主机
前言: 前几篇博客分别介绍了通过snmp来进行监控linux主机与windows主机,本篇介绍通过agent客户端来进行系统监控. 环境: server:192.168.249.142 client: ...
- zabbix监控linux 以及监控mysql
Zabbix监控Linux主机设置方法 linux客户端 :59.128 安装了mysql 配置zabbix的yum源 rpm -ivh http://repo.zabbix.com/zabbix/2 ...
- Cacti监控Linux主机
1 要监视一台Linux主机,需要在被监控的主机上安装net-snmp相关软件包,CentOS安装可使用“yum -y install net-snmp”命令:# yum -y install net ...
随机推荐
- metasploit--exploit模块信息
Name Disclosure Date Rank Description ---- ...
- Hibernate + proxool 连接数超过最大允许连接数
主要原因是操作完成没有释放连接,在Hibernate中增加设定 <prop key="hibernate.connection.release_mode">after_ ...
- 类库引用EF
安装EntityFramework 添加引用system.data.entity;
- 坑人的七牛CDN
最近七牛CDN不知道咋啦的,一下子就不行了,提示错误信息如下 "upload image source key fail: unexpected EOF" 找客服提交工单都没有解决 ...
- 函数式编程Map()&Reduce()
.forEach():每个元素都调用指定函数,可传三个参数:数组元素丶元素索引丶数组本身丶 , , , , , , , ]; a.forEach(function(v,i,a){a[i]=v+;}); ...
- Cas服务器设置(java),java、php客户端配置
由于多个项目需要帐号的互通,所以一开始就是用cas去做的,不得不说cas要配置的东西挺多的,但是项目安全性不需要太高,所以没有做https的请求,也就是没有弄证书,这虽然省了很多时间和精力,但是项目之 ...
- hive运行的相关配置
一:执行SQL的方式 1.配置的键值 2.minimal下运行fetch 3.设定hive.fetch.task.conversion=more 4.在more下运行fetch 二:虚拟列 一共三个虚 ...
- css背景图片定位练习(二): background-position的百分比
background-position:x y; 百分比定位并不能直观的看出来,需要通过计算. background-position百分比计算公式: (容器宽度—背景图片的宽度)*x%=xpx(容器 ...
- android监听屏幕打开关闭广播无响应的情况
android在屏幕打开和关闭的时候会发出广播,但是如果receiver配置在AndroidManifest.xml中时,receiver是接受不到任何广播的. <receiver androi ...
- 数据写入文本文件并读出到浏览器的PHP代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...