Nagios:如何在服务CFG文件中应用手动更改

问题描述

我正在使用NagiosXI5。我已经更改了/usr/local/nagios/etc/services/myconfig.cfg中“ check_command”的内容。但是,此更改在Nagios中不可见。我已经尝试过“应用配置”,甚至没有在计算机上重新启动服务nagios。

编辑:哦,我在此文件的开头缺少以下注释。但是,在准备(大)cfg文件的编辑版本后,我仍然不明白该怎么办。

--- DO NOT EDIT THIS FILE BY HAND --- 
Nagios CCM will overwrite all manual settings during the next update if you 
would like to edit files manually,place them in the 'static' directory or 
import your configs into the CCM by placing them in the 'import' directory.

解决方法

在最新版本的 Nagios XI (5.8.4) 中,我创建/复制新的 *.cfg 文件并将其放入 /usr/local/nagios/etc/import。单击“应用配置”。文件将从 /usr/local/nagios/etc/import 移动到 /usr/local/nagios/etc/services。该文件的名称不会更改,因此可以防止覆盖现有配置文件。文件的内容(新服务)将被导入到内部数据库中。如果您在 cfg 文件中犯了任何错误,现有配置将不会更改(将使用还原机制),但您的 cfg 文件将从 /usr/local/nagios/etc/import 中删除。只需在某处留一份备用副本即可。

如果其他 cfg 文件中存在同名的服务,则没有问题。现有的不会改变。您将在两个服务都处于活动状态时结束,它们将具有不同的“配置名称”参数。

如果要更改现有服务的属性(在/usr/local/nagios/etc/services/*.cfg 中定义的),请将相应的 cfg 文件复制到导入文件夹,更改内容,然后执行“应用配置”。对我来说,这个操作不会改变被操纵服务的历史。

我仍然需要找出如何在没有 GUI 的情况下删除用户定义的服务(在 /usr/local/nagios/etc/services/*.cfg 中定义的服务)。

所有这些都是完全没有记录的功能,Nagios 的官方回答是用户不应该自己接触任何 cfg 文件。例如,当他需要在第二台服务器上复制系统时,他们究竟如何期望某人通过单击 GUI 来创建和/或调整 1000 多个服务?