环境:

nagios server:192.168.8.42 host_name:node4.chinasoft.com

nagios client:192.168.8.41 host_name:node3.chinasoft.com





1.编辑nagios.cfg文件

vim /usr/local/nagios/etc/nagios.cfg

添加

cfg_file=/usr/local/nagios/etc/objects/hosts.cfg

cfg_file=/usr/local/nagios/etc/objects/service.cfg





注释掉

# Definitions for monitoring the local (Linux) host

#cfg_file=/usr/local/nagios/etc/objects/localhost.cfg





2.生成hosts.cfg和service.cfg文件

cd /usr/local/nagios/etc/objects/

head -50 localhost.cfg >hosts.cfg

chown nagios.nagios hosts.cfg





# touch service.cfg

[root@node4 objects]# chown -R nagios.nagios service.cfg 





3.编辑hosts.cfg、service.cfg增加被监控的主机





define host{

use linux-server

    host_name
node4.chinasoft.com

alias node4.chinasoft.com

address
192.168.8.42

}

define host{

        use             linux-server

        host_name       node3.chinasoft.com

        alias           node3.chinasoft.com

        address         192.168.8.41

}





# Define an optional hostgroup for Linux machines





define hostgroup{

        hostgroup_name  linux-servers ; The name of the hostgroup

        alias           Linux Servers ; Long name of the group

        members         node4.chinasoft.com,node3.chinasoft.com     ; Comma separated list of hosts that belong to this group

        }





编辑service文件

vim service.cfg 

define service{

use generic-service

host_name node3.chinasoft.com,node4.chinasoft.com

service_descriptiondisk partition

check_command
check_nrpe!check_disk

}





编辑commands.cfg添加check_nrpe命令

# 'check_nrpe" command definition

define command{

command_name
check_nrpe

command_line
$USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$

}





4.编辑nagios启动脚本,打开报错日志

vim /etc/init.d/nagios

改为:$NagiosBin -v $NagiosCfgFile





检测语法是否正确

/etc/init.d/nagios checkconfig

或者

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg 





5.开启jack用户的访问权限

sed -i 's#nagiosadmin#jack#g' /usr/local/nagios/etc/cgi.cfg





6.client的配置

编辑/usr/local/nagios/etc/cgi.cfg,运行服务端连接

allowed_hosts=127.0.0.1,192.168.8.42





报错:

Connection refused by host 

排错:

/usr/local/nagios/libexec/check_nrpe -H 192.168.8.42 -c check_disk

NRPE: Command 'check_disk' not defined

check_disk命令没有定义

增加相关定义即可,如下:

cp /usr/local/nagios/etc/nrpe.cfg /usr/local/nagios/etc/nrpe.cfg.ori

sed -i '199,203d' /usr/local/nagios/etc/nrpe.cfg





echo "command[check_load]=/usr/local/nagios/libexec/check_load -w 15,10,6 -c 30,25,20">>/usr/local/nagios/etc/nrpe.cfg

echo "command[check_mem]=/usr/local/nagios/libexec/check_memory.pl -w 6% -c 3%">>/usr/local/nagios/etc/nrpe.cfg

echo "command[check_disk]=/usr/local/nagios/libexec/check_disk -w 20% -c 8% -p /">>/usr/local/nagios/etc/nrpe.cfg

echo "command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20% -c 10%">>/usr/local/nagios/etc/nrpe.cfg

echo "command[check_iostat]=/usr/local/nagios/libexec/check_iostat -w 6 -c 10">>/usr/local/nagios/etc/nrpe.cfg





重启nrpe服务

pkill nrpe

# /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d

# ps -ef|grep nrpe

nagios   52207     1  0 15:39 ?        00:00:00 /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d

root     52209  1703  0 15:39 pts/0    00:00:00 grep nrpe





在客户端执行命令:

# /usr/local/nagios/libexec/check_nrpe -H 127.0.0.1 -c check_disk

DISK OK - free space: / 16337 MB (87% inode=95%);| /=2348MB;15748;18110;0;19685

[root@node4 etc]# /usr/local/nagios/libexec/check_nrpe -H 192.168.8.42 -c check_disk

DISK OK - free space: / 16337 MB (87% inode=95%);| /=2348MB;15748;18110;0;19685





通过直接执行相关的脚本可以看出是否ok:/usr/local/nagios/libexec/check_disk -w 20% -c 8% -p /





7、添加新的监控项目:

vim /usr/local/nagios/etc/objects/service.cfg添加相应的监控项即可(监控的check_command必须要和客户端的nrpe.cfg中定义的一致)

define service{

        use generic-service

        host_name node3.chinasoft.com,node4.chinasoft.com

        service_description     memory

        check_command   check_nrpe!check_mem

}

define service{

        use generic-service

        host_name node3.chinasoft.com,node4.chinasoft.com

        service_description     load

        check_command   check_nrpe!check_load

}

nagios系列(三)之nagios被动监控模式之添加系统负载load、swap、磁盘iostat及memory内存监控详解的更多相关文章

  1. 《手把手教你》系列基础篇(八十七)-java+ selenium自动化测试-框架设计基础-Log4j 2实现日志输出-上篇(详解教程)

    1.简介 Apache Log4j 是一个非常古老的日志框架,并且是多年来最受欢迎的日志框架. 它引入了现代日志框架仍在使用的基本概念,如分层日志级别和记录器. 2015 年 8 月 5 日,该项目管 ...

  2. 《手把手教你》系列基础篇(八十一)-java+ selenium自动化测试-框架设计基础-TestNG如何暂停执行一些case(详解教程)

    1.简介 在实际测试过程中,我们经常会遇到这样的情况,开发由于某些原因导致一些模块进度延后,而你的自动化测试脚本已经提前完成,这样就会有部分模块测试,有部分模块不能进行测试.这就需要我们暂时不让一些t ...

  3. 《手把手教你》系列基础篇(八十)-java+ selenium自动化测试-框架设计基础-TestNG依赖测试-番外篇(详解教程)

    1.简介 经过前边几篇知识点的介绍,今天宏哥就在实际测试中应用一下前边所学的依赖测试.这一篇主要介绍在TestNG中一个类中有多个测试方法的时候,多个测试方法的执行顺序或者依赖关系的问题.如果不用de ...

  4. nagios系列(四)之nagios主动方式监控tcp常用的80/3306等端口监控web/syncd/mysql及url服务

    nagios主动方式监控tcp服务web/syncd/mysql及url cd /usr/local/nagios/libexec/ [root@node4 libexec]# ./check_tcp ...

  5. nagios系列(五)之nagios图形显示的配置及自定义插件检测密码是否修改详解

    nagios图形显示的配置 在服务端安装相关软件 #1.图形显示管理的依赖库 yum install cairo pango zlib zlib-devel freetype freetype-dev ...

  6. nagios系列(八)之nagios通过nsclient监控windows主机

    nagios通过nsclient监控windows主机 1.下载NSClient -0.3.8-Win32.rar安装在需要被监控的windows主机中 可以设置密码,此处密码留空 2.通过在nagi ...

  7. nagios系列(六)之nagios实现对服务器cpu温度的监控

    1.安装硬件传感器监控软件sensors yum install -y lm_sensors* 2.运行sensors-detect进行传感器检测 ##一路回车即可 Do you want to ov ...

  8. nagios系列(二)之nagios客户端的安装及配置

    1.添加nagios用户 echo "------ step 1: add nagios user------" #create user group /usr/sbin/user ...

  9. python接口自动化(三十二)--Python发送邮件(常见四种邮件内容)番外篇——上(详解)

    简介 本篇文章与前边没有多大关联,就是对前边有关发邮件的总结和梳理.在写脚本时,放到后台运行,想知道执行情况,会通过邮件.SMS(短信).飞信.微信等方式通知管理员,用的最多的是邮件.在linux下, ...

随机推荐

  1. android + eclipse + 后台静默安装(一看就会)

      首先要说到三个类. import android.content.pm.IPackageInstallObserver; import android.content.pm.IPackageIns ...

  2. 【Linux】fg、bg让你的进程在前后台之间切换

    Linux下的fg和bg命令是进程的前后台调度命令,即将指定号码(非进程号)的命令进程放到前台或后台运行.比如一个需要长时间运行的命令,我们就希望把它放入后台,这样就不会阻塞当前的操作:而一些服务型的 ...

  3. JAVA类中获取项目路径

    在java web项目中获取项目的src/main/resource下的文件路径 当前类名.class.getClassLoader().getResource("/").getP ...

  4. java NIO 直接与非直接缓冲区

    ByteBuffer有两个创建缓冲区的方法:static ByteBuffer allocate(int capacity)static ByteBuffer allocateDirect(int c ...

  5. 当input获取倒焦点的时候,获得输入内容

    描述:当用户点击输入框时,获取到他在input里输入的内容 $().keyup(function(){ $(this).val(); }) $(this).val()==this.value; $(t ...

  6. Js中this机制全解

    JavaScript中有很多令人困惑的地方,或者叫做机制. 但是,就是这些东西让JavaScript显得那么美好而与众不同. 比方说函数也是对 象.闭包.原型链继承等等,而这其中就包括颇让人费解的th ...

  7. KVM使用入门

    KVM使用入门 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.KVM管理工具 1.libvirt系列 它是由REDHAT公司开发的适用于管理众多不同架构上的虚拟化技术的管理工具 ...

  8. Scala进阶之路-idea下进行spark编程

    Scala进阶之路-idea下进行spark编程 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 1>.创建新模块并添加maven依赖 <?xml version=&qu ...

  9. Linux操作系统原理

    Linux操作系统原理 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.计算机经历的四个时代 1.第一代: 真空管计算机,输入和输出:穿孔卡片,对计算机操作起来非常不便,做一件事 ...

  10. thread join和detach的区别

    线程状态: 在一个线程的生存期内,可以在多种状态之间转换,不同的操作系统可以实现不同的线程模型,定义许多不同的线程状态,每个状态还可以包含多个子状态,但大体来说,如下几种状态是通用的: 1)就绪:参与 ...