主机的服务定义如下所示: service{ name host_1_svc .... check_command check_xyz!abc }
需要在host2上进行类似的检查,只是check_command的参数是lmn。所以我必须定义: service{ name host_2_svc .... check_command check_xyz!lmn }
避免一次又一次地定义服务而只进行微小更改的一般方便做法是什么?
谢谢, 亚什
主机的服务定义如下所示: service{ name host_1_svc .... check_command check_xyz!abc }
需要在host2上进行类似的检查,只是check_command的参数是lmn。所以我必须定义: service{ name host_2_svc .... check_command check_xyz!lmn }
避免一次又一次地定义服务而只进行微小更改的一般方便做法是什么?
谢谢, 亚什
您可以在每个主机中定义自定义主机变量:
define host{
use generic-host
host_name host1
address 10.0.0.1
_chk_value abc
}
define host{
use generic-host
host_name host2
address 10.0.0.2
_chk_value lmn
}
define service{
use generic-service
name host_chk_svc
host_name host1,host2
check_command check_abc!$_HOSTCHK_VALUE$
}
注意主机定义中自定义变量之前的下划线(这将其定义为自定义),然后在宏开头但不在其中间的下划线($_HOSTCUSTOM$ 而不是 $HOST_CUSTOM$)。
http://nagios.sourceforge.net/docs/3_0/customobjectvars.html
定义一个主机组,然后将该主机添加到组中,您只需要定义一次服务。主机和主机组以及服务和服务组之间的关系可能很难可视化,特别是如果您的 nagios /etc 文件夹中的文件没有一致的命名方案。
这是我发现的两个图表,有助于理解它:
关于各种网络监控选项的幻灯片:http://www.semintelligent.com/talks/chuug/network-monitoring/#%2827%29
关于 Nagios 设置的简短但有用的页面:http://www.the-tech-tutorial.com/?p=1433