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 ...
随机推荐
- 【液晶模块系列基础视频】5.1X-GUI字体驱动1
============================= 技术论坛:http://www.eeschool.org 博客地址:http://xiaomagee.cnblogs.com 官方网店:ht ...
- Java静态块学习
静态块是类里面的构造器,对象有构造器那么类也有构造器,类里面的构造器叫做初始化方法.也就是new一个对象他会经过一个构造器.加载一个类,也有被初始化的一片代码,这个就称之为静态块.一个类里面可以有很多 ...
- PHP 设计模式 笔记与总结(2)开发 PSR-0 的基础框架
[PSR-0 规范的三项约定]: ① 命名空间必须与绝对路径一致 ② 类名的首字母必须大写 ③ 除入口文件外,其他".php"必须只有一个类(不能有可执行的代码) [开发符合 PS ...
- nginx日志配置[转]
* * * sh /home/zyf/sh/cut_nginx_log.sh 这样就每天的0点1分把nginx日志重命名为日期格式,并重新生成今天的新日志文件。 日志对于统计排错来说非常有利的。本文 ...
- Java中instanceof用法
java 中的instanceof 运算符是用来在运行时指出对象是否是特定类的一个实例.instanceof通过返回一个布尔值来指出,这个对象是否是这个特定类或者是它的子类的一个实例. 用法:resu ...
- BLE链路层状态机
BLE的Link层,应当是了解BLE需要首先熟悉的一部分,BLE的Controller部分主要都在围绕这一部分实现的.Link层的内容规定了BLE底层是怎么实现蓝牙设备之间的控制,数据传输等等的.Li ...
- windows下Qt5.1.0配置android环境搭建 good
1.首先下载好需要配置的软件: 1>Qt 5.1.0 for Android (Windows 32-bit, 716 MB)(Info)下载地址: http://qt-project.org/ ...
- Compiling Inkscape on Windows
http://wiki.inkscape.org/wiki/index.php/Compiling_Inkscape_on_Windows http://www.oschina.net/news/80 ...
- Qt之窗体拖拽、自适应分辨率、自适应大小 good
Qt之自定义界面(实现无边框.可移动) Qt之自定义界面(窗体缩放-跨平台终极版) Qt之自定义界面(窗体缩放) http://blog.csdn.net/liang19890820/article/ ...
- const 修饰函数
At the very first ,I got a problem . Vector Vector::operator+(const Vector &v)const{ return Vect ...