nagios里面有好多的函数,但是有些是软件事前自带的,也有很多是后期运维人员自由设定的。
比如打开/usr/local/nagios/etc/objects文件夹里就会看到很多的文件,打开timeperiods.cfg就会看到这样的内容:
<a href="http://s2.51cto.com/wyfs02/M01/82/2E/wKioL1dNoNWhLcxQAACnFvtAB70743.png-wh_500x0-wm_3-wmp_4-s_1360407612.png" target="_blank"></a>
period就是“日期”、“一段时间”的意思。这里定义了一个叫timeperiod的模块,模块的名字是7X24,然后具体的7X24就是每天的0点到24点。
<a href="http://s4.51cto.com/wyfs02/M02/82/2E/wKioL1dNoWDBu3ARAABpTnIGlks492.png-wh_500x0-wm_3-wmp_4-s_890720568.png" target="_blank"></a>
这个timeperiod模块的名字就是workhours,顾名思义工作日。里面也有别名和详细内容。
退出这个文件,回来看一下contact.cfg:
<a href="http://s5.51cto.com/wyfs02/M01/82/2E/wKioL1dNol3SHRONAAC9Du_8Ef4663.png-wh_500x0-wm_3-wmp_4-s_1788007534.png" target="_blank"></a>
看到系统默认设定了一个Nagiosadmin的用户,而且我们之前在apache里对nagios用户的密码设置也是nagiosadmin,这个用户的资料比较简单,只有名称、别名和伊妹儿。
那么再来一个比较复杂的contact模块:
1
2
3
4
5
6
7
8
9
10
11
12
<code>define contact { </code>
<code> </code><code>contact_name james </code><code>//</code><code>不要有空格,这个联系人叫james </code>
<code> </code><code>alias</code> <code>lebron james </code>
<code> </code><code>service_notification_period 24x7 </code>
<code> </code><code>host_notification_period 24x7 </code>
<code> </code><code>service_notification_options w,u,c,r </code>
<code> </code><code>host_notification_options d,u,r </code>
<code> </code><code>service_notification_commands service-notify-by-sms,service- notify-by-email </code><code>//</code><code>这个命令读配置文件miscommands.cfg </code>
<code> </code><code>host_notification_commands host-notify-by-email,host-noti fy-by-sms </code><code>//</code><code>这个命令读配置文件miscommands.cfg </code>
<code> </code><code>email [email protected] </code>
<code> </code><code>pager 13333333333 </code><code>//</code><code>手机号,收报警短信 </code>
<code> </code><code>} </code><code>//</code><code>不要把这个符号写掉了</code>
上面联系人模块里的wucr都是什么意思呢?
w=waring
u=unreachable
c=critical
d=down
r=recovery
再来看组的概念,软件默认的组是这样的:
<a href="http://s4.51cto.com/wyfs02/M01/82/30/wKiom1dNpb7Ao0soAAA1YZPt-iA522.png-wh_500x0-wm_3-wmp_4-s_511170616.png" target="_blank"></a>
当我们在具体的监控项目里设定联系人是这个叫admins的组的时候所有的组员都会收到报警信息。如果组里有多个成员,那么就在members里加入成员名,用逗号相隔开,比如members james.wade,bosh,这代表这个admins的组员有三个,分别是james,wade,bosh。
本文转自 苏幕遮618 51CTO博客,原文链接:http://blog.51cto.com/chenx1242/1785018