联系人
|
contact
|
出了问题像谁报告
?
一般当然是系统管理员了
|
监控时间段
|
timeperiod
|
7X24
小时不间断还是周一至周五
,
或是自定义的其他时间段
|
被监控主机
|
host
|
所需要监控的服务器
,
当然可以是监控机自己
|
监控命令
|
command
|
nagios
发出的哪个指令来执行某个监控
,
这也是自己定义的
|
被监控的服务
|
service
|
例如主机是否存活
,80
端口是否开
,
磁盘使用情况或者自定义的服务等
|
cfg_file=/usr/local/nagios/etc/contactgroups.cfg //
联系组配置文件路径
cfg_file=/usr/local/nagios/etc/contacts.cfg //
联系人配置文件路径
cfg_file=/usr/local/nagios/etc/hostgroups.cfg //
主机组配置文件路径
cfg_file=/usr/local/nagios/etc/hosts.cfg //
主机配置文件路径
cfg_file=/usr/local/nagios/etc/services.cfg //
服务配置文件路径
cfg_file=/usr/local/nagios/etc/timeperiods.cfg //
监视时段配置文件路径
|
authorized_for_system_information=nagiosadmin,test
authorized_for_configuration_information=nagiosadmin,test
authorized_for_system_commands=test //
多个用户之间用逗号隔开
authorized_for_all_services=nagiosadmin,test
authorized_for_all_hosts=nagiosadmin,test
authorized_for_all_service_commands=nagiosadmin,test
authorized_for_all_host_commands=nagiosadmin,test
|
define timeperiod{
timeperiod_name 24x7
//
时间段的名称
,
这个地方不要有空格
alias 24 Hours A Day,7Days 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
}
|
define contact{
contact_name test
//
联系人的名称
,
这个地方不要有空格
alias sys admin
service_notification_period 24x7
host_notification_period 24x7
service_notification_options w,u,c,r
host_notification_options d,u,r
service_notification_commands notify-by-email
host_notification_commands host-notify-by-email
email [email protected]
pager 1338757xxxx
address1 [email protected]
address2 555-555-5555
}
|
service_notification_period 24x7
服务出了状况通知的时间段
,
这个时间段就是上面在
timeperiods.cfg
中定义的
.
|
host_notification_period 24x7
主机出了状况通知的时间段
,
这个时间段就是上面在
timeperiods.cfg
中定义的
|
service_notification_options w,u,c,r
当服务出现
w—
报警
(warning),u—
未知
(unkown),c—
严重
(critical),
或者
r—
从异常情况恢复正常
,
在这四种情况下通知联系人
.
|
host_notification_options d,u,r
当主机出现
d—
当机
(down),u—
返回不可达
(unreachable),r—
从异常情况恢复正常
,
在这
3
种情况下通知联系人
|
service_notification_commands notify-by-email
服务出问题通知采用的命令
notify-by-email,
这个命令是在
commands.cfg
中定义的
,
作用是给联系人发邮件
.
至于
commands.cfg
之后将专门介绍
|
host_notification_commands host-notify-by-email
同上
,
主机出问题时采用的也是发邮件的方式通知联系人
|
email [email protected]
很明显
,
联系的人
email
地址
|
pager 1338757xxxx
联系人的手机
,
如果支持短信的通知的话
,
这个就很有用了
.
|
alias
是联系人别名
,address
是地址
意义不大
.
|
define contactgroup{
contactgroup_name sagroup
//
联系人组的名称
,
同样不能空格
alias System Administrators
//
别名
members test
//
组的成员
,
来自于上面定义的
contacts.cfg,
如果有多个联系人则以逗号相隔
}
|
define host{
host_name nagios-server
//
被监控主机的名称
,
最好别带空格
alias nagios server
//
别名
address 192.168.0.111
//
被监控主机的
IP
地址
,
我现在暂时先填本机的
IP
check_command check-host-alive
//
监控的命令
check-host-alive,
这个命令来自
commands.cfg,
用来监控主机是否存活
max_check_attempts 5
//
检查失败后重试的次数
check_period 24x7
//
检查的时间段
24x7,
同样来自于我们之前在
timeperiods.cfg
中定义的
contact_groups sagroup
//
联系人组
,
上面在
contactgroups.cfg
中定义的
sagroup
notification_interval 10
//
提醒的间隔
,
每隔
10
秒提醒一次
notification_period 24x7
//
提醒的周期
, 24x7,
同样来自于我们之前在
timeperiods.cfg
中定义的
notification_options d,u,r
//
指定什么情况下提醒
,
具体含义见之前
contacts.cfg
部分的介绍
}
|
define hostgroup{
hostgroup_name sa-servers
//
主机组名称
alias sa Servers
//
别名
members nagios-server
//
组的成员主机
,
多个主机以逗号相隔
,
必须是上面
hosts.cfg
中定义的
}
|
#service definition
define service{
host_name nagios-server
//
被监控的主机
,hosts.cfg
中定义的
service_description check-host-alive
//
这个监控项目的描述
(
也可以说是这个项目的名称
),
可以空格
,
我们这里定义的是监控这个主机是不是存活
check_command check-host-alive
//
所用的命令
,
是
commands.cfg
中定义的
max_check_attempts 5
normal_check_interval 3
retry_check_interval 2
check_period 24x7
//
监控的时间段
,
是
timeperiods.cfg
中定义的
notification_interval 10
notification_period 24x7
//
通知的时间段
, ,
是
timeperiods.cfg
中定义的
notification_options w,u,c,r
//
在监控的结果是
wucr
时通知联系人
,
具体含义看前文
.
contact_groups sagroup
//
联系人组
,
是
contactgroups.cfg
中定义的
}
|
Total Warnings: 0
Total Errors: 0
Things look okay - No serious problems were detected during the pre-flight check
|