×

微信扫一扫,快捷登录!

在nagios上增加监控配置

标签: 监控
来自:网络


1: nagios添加主机监控配置如下:
    define host{
    use linux-server
    host_name 192.168.1.1
    address 192.168.1.1
    }
    可以定义成一个文件,然后把配置文件加入到nagios.cfg里面,脚本如下:                nagios安装
    cat <<EOF >/usr/local/nagios/etc/objects/192.168.1.1.cfg
    define host{
    use linux-server
    host_name 192.168.1.1
    address 192.168.1.1
    }
    EOF
    echo "cfg_file=/usr/local/nagios/etc/objects/192.168.1.1.cfg" >> /usr/local/nagios/etc/nagios.cfg          开源监控软件

2: nagios添加简单的监控,比如ping,监控端口等等无需nrpe的配置:                    
    define service{
    use generic-service
    host_name 192.168.1.1
    service_description Check Port 80
    check_command check_tcp!80
    }
    也可以写成脚本自动添加到主机的配置中,个人习惯一个主机中的所有监控项目在一个配置文件里面,好check。
    cat <<EOF >>/usr/local/nagios/etc/objects/192.168.1.1.cfg
    define service{
    use generic-service
    host_name 192.168.1.1
    service_description Check Port 80
    check_command check_tcp!80
    }
    EOF

3: nagios添加调用远程nrpe的配置,这个需要使用check_nrpe去调用,监控远程主机负载、磁盘情况等等。可以直接上脚本了,上面两个是举例,例子在脚本里面都有:
    cat <<EOF >>/usr/local/nagios/etc/objects/192.168.1.1.cfg                    nagios配置
    define service{
    use generic-service
    host_name 192.168.1.1
    service_description Load Average
    check_command check_nrpe!check_load
    }
    EOF

4: 另外,nagios添加主机组的配置也是比较常见的,因为这个让人看监控情况看起来比较直观,也是直接上脚本了。比如你想定义一个web组,web组有两台主机分别是192.168.1.1和192.168.1.2,个人比较习惯一个组定义一个配置文件:
    cat <<EOF >/usr/local/nagios/etc/objects/web.cfg
    define hostgroup{
    hostgroup_name web
    alias web
    members  192.168.1.1,192.168.1.2
    }
    EOF
    echo "cfg_file=/usr/local/nagios/etc/objects/web.cfg" >>/usr/local/nagios/etc/nagios.cfg                   监控软件

5: nagios添加联系人也是非常常见的,配置如下,这个一般需求没那么多,都是直接修改contact.cfg配置文件。先定义联系人组,再定义联系人,定义联系人的时候得写一下邮箱:
    define contactgroup{
            contactgroup_name       web
            alias                   web
            members                 web
            }
    define contact{
            contact_name                    web
            use                             generic-contact
            alias                           web
            email                           web@163.com,web@126.com
            }

6: nagios定义时间顺便也说一下,这个我定义的不是很多,timeperiods.cfg,底下复制一个,想定义什么时间,可以自己定义一下:
    define timeperiod{
            timeperiod_name 24x7
            alias           24 Hours A Day, 7 Days A Week
            sunday          00:00-24:00
            monday          00:00-24:00
            tuesday         00:00-24:00
            wednesday       00:00-24:00
            thursday        00:00-24:00
            friday          00:00-24:00
            saturday        00:00-24:00
            }

7: 当然nagios定义发送邮件的命令也是比较重要的,看一下command的定义(如果是自己写的脚本,第一参数是标题,第二个参数是内容,第三个参数是给谁发送邮件。当然,想传再多的参数都可以,随意传,自定义):                   nagios实施
define command{
        command_name    notify-host-by-email
        command_line    $USER1$/email.sh "Host Alert: $HOSTNAME$ is $HOSTSTATE$" "[nagios]<br>Notification Type: $NOTIFICATIONTYPE$<br>Host: $HOSTNAME$<br>State: $HOSTSTATE$<br>Address: $HOSTADDRESS$<br>Info: $HOSTOUTPUT$<br><br>Date/Time: $LONGDATETIME$<br>" "$CONTACTEMAIL$" "$HOSTALIAS$" "Host Alert: $HOSTNAME$ is $HOSTSTATE$"
        }

8: nrpe的配置肯定也是要的,不然nagios运行起来不够漂亮,定义nrpe要两个地方,一个是安装nrpe(被监控端),需要配置两个:1: xxx.xxx.xxx.xxx改成nagios监控端的地址,当然,一直变的话,就比较难办了。2: check_load是以后nagios监控端要用check_nrpe去调用的,后面的程序要怎么调用由自己定义(自定义脚本监控就在这)。
    allowed_hosts=xxx.xxx.xxx.xxx
    command[check_load]=/usr/local/nagios/libexec/check_load -w 15,15,15 -c 30,30,30           nagios培训
    定义完nrpe被监控端只是个开始,后续还得增加nagios监控的配置。主要也是两个配置:1: check_nrpe命令的配置,只需要传一个参数,就是类似上面的check_load传给它就好了。2: 定义监控项目,只需要传个参数给check_nrpe就可以了。
        define command{
                command_name    check_nrpe
                command_line    $USER1$/check_nrpe -H $HOSTADDRESS$ -t 30 -c $ARG1$
                }

        define service{
            use generic-service
            host_name 192.168.1.1
            service_description Load Average
            check_command check_nrpe!check_load
            }

9: 最后,送两个配置nagios经常用的命令,nagioscheck和nagiosreload,一个是检查nagios的配置(这个也可以:/etc/init.d/nagios configtest),一个是重载nagios配置:
    alias nagioscheck='/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg'
    alias nagiosreload='/etc/init.d/nagios reload'
    nagioscheck一定要以下结果才标准
        Total Warnings: 0
        Total Errors:   0

想做Nagios Zabbix,Cacti,iTop各种交流的,可以进入开源监控工具Nagios交流  QQ群号 476809427




上一篇:nagios 特定用户权限管理
下一篇:nagios安装配置
monicazhang

写了 2297 篇文章,拥有财富 12859,被 21 人关注

您需要登录后才可以回帖 登录 | 立即注册
B Color Link Quote Code Smilies

成为第一个吐槽的人

Powered by IT 运维管理
返回顶部