我想将 Nagios 配置为周一至周五每 6 小时发送一次寻呼,但周六和周日每 24 小时仅发送一次寻呼。我很难想清楚如何让一组管理员拥有两种不同的寻呼频率。
答案1
以下是如何做到这一点的示例,但我希望有人有更好的方法。定义您的工作日服务:
define service{
name foo-weekday
host_name linux-server
service_description check-disk-sda1-weekday
check_command check-disk!/dev/sda1
max_check_attempts 5
check_interval 5
retry_interval 3
check_period weekday
notification_interval 360
notification_period weekday
notification_options w,c,r
contact_groups linux-admins
}
然后从它继承,覆盖周末的 check_period、notification_interval、notification_period 和 service_description(每个主机必须是唯一的):
define service{
name foo-weekend
use foo-weekday
service_description check-disk-sda1-weekend
check_period weekend
notification_interval 1440
notification_period weekend
}
编辑:我想知道用户宏在这种情况下是否有效?例如,只有 1 个服务定义:
define service{
host_name linux-server
service_description check-disk-sda1
check_command check-disk!/dev/sda1
max_check_attempts 5
check_interval 5
retry_interval 3
check_period 24x7
notification_interval $USER21$
notification_period 24x7
notification_options w,c,r
contact_groups linux-admins
}
然后,有两个不同的资源文件。一个将 USER21 定义为“360”,另一个定义为“1440”。周末开始时,将后者复制到位并重新加载 nagios 配置。周末结束时,将前者复制到位并重新加载。