我尝试设置我的 nagios 安装以检查 SMTP 服务在其备份时间之外的可用性。不幸的是,它似乎忽略了这个配置:
# a timeperiod to check only outside of zimbra's backup hour
# (combining the first with the second timeperiod)
define timeperiod {
timeperiod_name zimbra-backups
alias When zimbra is being backed up
sunday 04:00-05:00
monday 04:00-05:00
tuesday 04:00-05:00
wednesday 04:00-05:00
thursday 04:00-05:00
friday 04:00-05:00
saturday 04:00-05:00
}
define timeperiod {
timeperiod_name always-except-zimbra-backups
alias 24x7 except backup time
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
exclude zimbra-backups
}
然后,它与新主机一起使用:
define host {
host_name mailserver-except-backups
alias mail server (outside backup hours)
address yaddayadda
notification_options d,u,r,f
use my-default-host
check_period always-except-zimbra-backups
}
define service {
host_name mailserver-except-backups
service_description SMTP service
check_command check_smtp!-t 30
use my-default-service
check_interval 2
retry_interval 1
}
我看不出有什么问题..任何线索?这是其中一封通知电子邮件
***** Nagios *****
Notification Type: PROBLEM
Service: SMTP service
Host: mail server (outside backup hours)
Address: yaddayadda
State: CRITICAL
Date/Time: Sat Apr 27 04:03:16 CEST 2013
Additional Info:
Connection refused
Nagios 是在 OpenBSD 5.2 上运行的 Core 3.3.1。
主机检查和服务检查几乎完全无关,除了服务对其关联主机的隐式依赖性。
您已为自定义时间段配置主机检查,但服务检查使用的是在其使用的模板中定义的任何 check_period。在您的服务定义中添加一个 check_period 来解决这个问题。
或者,如果您只想在备份期间抑制通知,则可以将自定义时间段用作服务的 notification_period。
此外,并非排除项可能在 3.3.x 中被破坏,如3.2.0 下Nagios 版本历史记录中的这一行所示:
...所以您可能想要升级到 3.4.x 或 3.5.0(截至撰写本文时为最新版本)。
我现在无法对其进行测试,但我认为该服务是从主机定义
check_period
继承my-default-service
和覆盖的。check_period
而且我还认为最好只抑制该时间间隔内的通知。
也许你应该只改变
notification_period
. 在这些时间内,您仍会在 nagios 前端收到警告,但不会触发任何通知。