文档章节

nagios添加监控配置

just_do_itit
 just_do_itit
发布于 2015/11/27 21:32
字数 1060
阅读 306
收藏 4

1: nagios添加主机监控配置如下:

    define host{

    use linux-server

    host_name 192.168.1.1

    address 192.168.1.1

    }

    可以定义成一个文件,然后把配置文件加入到nagios.cfg里面,脚本如下:

    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

    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的定义(如果是自己写的脚本,第一参数是标题,第二个参数是内容,第三个参数是给谁发送邮件。当然,想传再多的参数都可以,随意传,自定义):

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

    定义完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

 

© 著作权归作者所有

共有 人打赏支持
just_do_itit
粉丝 66
博文 51
码字总数 33669
作品 0
杭州
运维
加载中

评论(1)

just_do_itit
just_do_itit
https://nagstamon.ifw-dresden.de/download
nagstamon是桌面可以直接查看告警信息的小软件,挺强大的。推荐一下。
监控之--Nagios如何监控本地主机及本地服务

上一节内容介绍了Nagios监控服务在linux环境下的安装过程,本节内容将详细介绍如何使用已经安装的Nagios服务的一些配置文件的使用以及如何监控本地相关服务,如要完成对一台主机的监控Nagio...

CARYFLASH
2017/11/10
0
0
Nagios安装与配置详解

Nagios安装与配置详解 Nagios是一款用于系统和网络监控的应用程序。它可以在你设定的条件下对主机和服务进行监控,在状态变差和变好的时候给出告警信息 。 搭建Nagios也不是什么难的是,下面...

Tanton008
2012/12/11
0
0
搭建nagios+ncpa监控

ncpa是nagios最近几年推出的监控客户端,已日趋完善,用于替代老旧的nrpe。 ncpa比nrpe优秀的地方在于 1、支持被动监控,即ncpa主动向nagios上报(通过nrdp) 2、ncpa跟snmp类似,基本不需要...

紫色葡萄
2017/05/18
0
0
云监控 Nagios 安装步骤

前言 最近在研究云监控的相关工具,之前写过Ganglia的安装步骤,这回来记录下Nagios的安装步骤。 本文不讲解相关原理,若想了解请参考其他资料. 本文目的: 即使之前未触过nagios,也能按照文中...

一只小逛
2013/12/11
0
37
Nagios 系统监控基本安装配置过程详解

Nagios 是一款免费的开源 IT 基础设施监控系统,功能强大,灵活性强,能有效监控 Windows、Linux、VMware 和 Unix 主机状态,交换机、路由器等网络设置等。一旦主机或服务状态出现异常时,会...

肖邦0526
2017/01/20
0
0

没有更多内容

加载失败,请刷新页面

加载更多

首个智能运维项目开源!腾讯织云Metis,用算法替代人为指定规则

10月20日,腾讯织云Metis 智能运维学件平台在OSCAR开源先锋日上宣布,正式对外开源。Metis 是AIOps(Algorithmic IT Operations),即智能运维领域的首个开源产品。智能运维主张通过算法从海...

腾讯开源
19分钟前
1
0
Java面试170题

1、面向对象的特征有哪些方面? 2、访问修饰符public,private,protected,以及不写(默认)时的区别? 3、String 是最基本的数据类型吗? 4、float f=3.4;是否正确? 5、short s1 = 1; s1 = ...

lanyu96
19分钟前
0
0
利用Ant脚本生成war包

使用ant脚本前的准备 1、下载一个ant安装包。如:apache-ant-1.8.4-bin.zip。解压到E盘。 2、配置环境变量。新增ANT_HOME:E:\apache-ant-1.8.4;PATH增加:E:\apache-ant-1.8.4\bin。 3、检...

狼王黄师傅
22分钟前
1
0
优雅的写出类

前言 虽然现在已经是ES6的时代,但是,还是有必要了解下ES5是怎么写一个类的。 本文详述JavaScript面向对象编程中的类写法,并分步骤讲述如何写出优雅的类。 一、例子 例子为一个轻提示组件T...

peakedness丶
24分钟前
1
0
Python基础案例教程

一、超市买薯片 # 用户输入薯片的单价danjia = float(input("薯片的单价"))# 用户输入购买袋数daishu = int(input("购买的袋数"))# 计算总价zongjia = danjia * daishu# 输出结果...

linuxprobe16
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部