首页 > 解决方案 > 将服务应用到主机 - NAGIOS

问题描述

我是 Nagios 新手,在阅读了几篇关于主机、服务、命令定义的文档后,我遇到了一个非常愚蠢的错误,我无法绕过。

我遵循了本教程:官方 Nagios Tuto

这是我的 nagios.cfg 代码(只是一个示例,不是所有的 conf):

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/timperiodds.cfg
cfg_file=/usr/local/nagios/etc/objects/templates.cfg
cfg_file=/usr/local/nagios/etc/objects/hosts.cfg
cfg_file=/usr/local/nagios/etc/objects/services.cfg

现在我的hosts.cfg:

define host {
    host_name         nas_01
    alias             NAS Eth0
    address           192.168.1.x     ; I did not put 'x' ;)
}

最后是我的 services.cfg:

define service {
    use                 generic-service     ; Inherit default values from a template
    host_name           nas_01
    service_description HTTP
    check_command       check_http
}

我尝试使用以下方法验证 conf 文件:/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

但我得到这个错误:

Error: Invalid max_check_attempts value for host 'nas_01'
Error: Could not register host (config file '/usr/local/nagios/etc/objects/hosts.cfg', starting on line 7)

如果我尝试将我的主机定义放在我的 services.cfg 中,则会出现以下错误:

Warning: Duplicate definition found for host 'nas_01' (config file '/usr/local/nagios/etc/objects/services.cfg', starting on line 7)
Error: Could not add object property in file '/usr/local/nagios/etc/objects/services.cfg' on line 9.
Error: Invalid max_check_attempts value for host 'nas_01'
Error: Could not register host (config file '/usr/local/nagios/etc/objects/hosts.cfg', starting on line 7)
   Error processing object config files!

没有东西看起来很阴暗max_check_attempts

有任何想法吗?

标签: monitoringnagios

解决方案


好吧,所以没什么...

基本上我忘了把'use linux-server'放在我的hosts.cfg中,所以它失败了,因为它错过了几个强制性属性,比如max_check_attempts.

主机.cfg:

define host {
    use                     linux-server
    host_name               nas_01
    alias                   NAS Eth02 
    address                 192.168.1.16
}

服务.cfg:

define service {
    use                     generic-service
    host_name               nas_01
    service_description     HTTP Check
    check_command           check_http
}

非常感谢@Rohlik,因为他让我走上了正确的道路!

干杯


推荐阅读