Nagios 多服务器配置文件

Jua*_*uan 6 nagios

我已经在配置 Nagios 设置来监控大约 30 个 Windows 服务器。现在我将每个服务器定义添加到 Windows.cfg 文件中,但我认为很容易配置为每个服务器(Server1.cfg、Server2.cfg、Server3.cfg 等)有一个 .cfg 文件并从 Windows 链接这些文件。配置文件

任何人都知道更好的方法来做到这一点?

谢谢。

Kyl*_*ith 6

如果您的系统相对相似,您应该尝试使用对象继承来限制您将来必须修改的代码量。

除此之外,您可以使用cfg_dir顶级配置 (nagios.cfg) 中的指令来指定配置文件的整个目录。任何以 结尾的文件都.cfg将被包含在内,这允许简单地通过重命名文件来切换配置。

例如:

cfg_dir=/usr/local/nagios/etc/objects
Run Code Online (Sandbox Code Playgroud)


kas*_*ani 5

你所描述的会起作用。我通常做这样的事情。为主机和主机组制作配置目录

mkdir nagios/{hosts.d,hostgroups.d}
Run Code Online (Sandbox Code Playgroud)

每个服务器创建一个文件

cat nagios/hosts.d/db01.cfg
define host {
  host_name     db01.mydomain.com
  alias         db01
  use           generic-host
Run Code Online (Sandbox Code Playgroud)

然后在主机组中进行正则表达式匹配

cat nagios/hostgroups.d/db.cfg
define hostgroup {
  hostgroup_name  db
  alias           DB Servers
  members         db([0-9]+).mydomain.com
}
Run Code Online (Sandbox Code Playgroud)

您需要在 nagios.cfg 中打开正则表达式并指向配置目录

cfg_dir=/etc/nagios/hosts.d
cfg_dir=/etc/nagios/hostgroups.d
use_regexp_matching=1
Run Code Online (Sandbox Code Playgroud)