Nagios的配置详解

安装完成配置文件会存放在/usr/local/nagios/etc下

创新互联建站专注为客户提供全方位的互联网综合服务,包含不限于做网站、成都做网站、溧水网络推广、小程序制作、溧水网络营销、溧水企业策划、溧水品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联建站为所有大学生创业者提供溧水建站搭建服务,24小时服务热线:18982081108,官方网址:www.cdcxhl.com

cgi.cfg          #CGI配置文件

htpasswd.users  #Apache验证密码文件

nagios.cfg        #Nagios主配置文件

objects       #监控对象定义文件目录

resource.cfg  #Nagios资源配置文件


主配置文件的一系列设置,会影响Nagios守护进程,而且CGIs程序组模块也此文件,在主配置文件里,也用来指定主机、主机组、服务、服务组、命令、通知人、通知人组等配置文件的位置


打开主配置文件 vim nagios.cfg里面定义了几个重要的配置文件位置

cfg_file=/usr/local/nagios/etc/objects/commands.cfg  定义监控命令的文件

cfg_file=/usr/local/nagios/etc/objects/contacts.cfg定义联系人的文件

cfg_file=/usr/local/nagios/etc/objects/timeperiods.cfg定义时间的文件位置

cfg_file=/usr/local/nagios/etc/objects/localhost.cf  定义监控的对象

##############################################################################

l看下定义时间的配置文件 vim/usr/local/nagios/etc/objects/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

       }

意思是定义24x7不间歇监控,也是默认的,其他的都不用看,生产环境监控都是7x24小时

##############################################################################

l再看定义监控对象的文件 vim/usr/local/nagios/etc/objects/localhost.cf

可以以下的的格式添加进去来定义被监控的主机和服务


监控主机:

define host {

       host_name       localhost ------>主机的名字

address         192.168.18.50     ------>被监控主机的IP地址

check_command   check-host-alive  ------>监控使用的命令,在commands.cfg定义

notification_options    d,u,r     ------>“宕机,未知,恢复”进行通知

check_interval  1                 ------>每一分钟检查一次

max_check_attempts      2        ------>失败2次报警

contact_groups  admins        ------>报警要通知的组

notification_interval   10    ------>每次通知的间隔,10分钟

notification_period     24x7 ------>通知的时间区间,随时

}


监控服务:

define service{

       host_name       localhost    -------->服务的名字,必须和上面主机一致

service_description     apache  ---------->描述

check_period   24x7         ---------->监控时间

normal_check_interval   2       ---------->正常状态2分钟监控一次

retry_check_interval    1       ---------->非正常状态1分钟监控一次

max_check_attempts      5   ---------->出现5次报错,发送通知

notification_period     24x7 ---------->通知的时间区间,随时

notification_options    w,u,c,r---------->什么状态报警

check_command   check_http  ---------->使用的插件

}


注意:定义监控服务,必须先定义好监控这台主机,然后再在下面添加服务,且名字必须与这台主机的名字相对应

##############################################################################

l再看定义命令的文件vim/usr/local/nagios/etc/objects/commands.cfg

看里面其中一个例子

define command{

       command_name    check-host-alive

       command_line    $USER1$/check_ping -H $HOSTADDRESS$ -w3000.0,80% -c 5000.0,100% -p 5

       }

意思是:当使用名字为check-host-alive的命令时,其实执行的是command_line定义的命令


详细解释这条命令:

$USER1$/check_ping-H $HOSTADDRESS$ -w 3000.0,80% -c 5000.0,100% -p 5

$USER1$:这是nagios的一个变量,等于/usr/local/nagios/libexec

check_ping:是一个插件,可以check_ping –help来看插件的参数

   -H:后面填写是主机的名字或者IP

   -w:警告

   -c:严重错误

   -p:发送几个包


这整句的意思是:给指定主机发送5个Ping包,如果延迟时间超过3秒或者丢包率超过80%为警告,如果5秒以上延迟或者丢包率为100%为严重错误

官方下载的所有插件都可—help来查看详细信息和用法,模式都和这个例子大同小异

##############################################################################

l接下来看定义联系人的文件 vim/usr/local/nagios/etc/objects/contacts.cfg

里面包含定义组和联系人


添加联系人:

define contact {

       contact_name  xiaocui ----------------->联系人的名字

       alias           xiaocui   --------------------->别名

       host_notification_period        24x7    --------->接收主机报警的时间

       host_notification_options       d,u,r  ---------->接收主机什么状态的报警

       service_notification_period     24x7   ------------>接收服务报警的时间

       service_notification_options    w,u,c,r -------->接收服务什么状态的报警

       service_notification_commands   notify-service-by-email  ---->服务报警会发送mail

       host_notification_commands      notify-host-by-email ------>主机报警会发送mail

       email  root@163.com    ------------------------->联系人邮箱

}


添加组:

define contactgroup{

       contactgroup_name       admins            (定义组的名字)

       members                 nagiosadmin,xiaocui (定义组里的成员)

       }

##############################################################################


设定好配置文件重启或者/etc/init.d/nagiosreload(重新加载一下)


检查配置文件是否存在错误命令:

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


通过以上的配置和官方的插件,就可以架构一个简单的监控系统


注:监控的信息可以在nagios的日志里查看,日志的路径在/usr/local/nagios/var/nagios.log


文章标题:Nagios的配置详解
链接地址:http://scyanting.com/article/ieogsh.html