我一直在努力理解 Nagios 的一些基本概念,尽管我以为这些概念很简单。
基本上,除了标准的本地基础设施之外,我还需要监控一堆第三方网络服务,我都有这些服务的网址。
我根本无法决定应该如何组织。每个都要求我创建一个我理解的新服务,但在此之后...
我是否应该创建一个名为“第三方”的单个主机以及与其链接的 3 个服务,或者我是否应该创建 3 个具有站点名称和 3 个服务的新主机并将它们一一链接起来?
我倾向于为每个服务使用单一主机,因为每个服务彼此独立,而且我相信 Nagios 应该这样设置。
此外,这些服务器无法通过 ping 访问。默认情况下,它会报告为关闭。我尝试禁用check_command check-host-alive
,但这似乎只会让主机保持灰色状态......
...如果唯一的服务是绿色的,我有什么办法可以让主机保持绿色吗?或者,如果我将服务更改check_command
为上述服务,这会对 Web 服务进行两次检查吗?或者,单独使用check_command
是否足够,我不需要分配服务?
所以,真正的问题是......
- 我是否应该为每个独立服务使用一个主机,因为它们是正式不同的“主机”?
- 当一个主机仅有单一服务且无法通过 ping 访问时,上述最佳做法是什么?
- (有点额外) 对于组织 Nagios,对这些主机进行分组的最佳方法是什么?这就是依赖关系的作用吗?
答案1
我认为您问题的答案并不明确,但随着您对 Nagios 工作原理的深入了解,答案会随着时间的推移而揭晓。服务通常直接与它们运行的主机绑定,但正如您所发现的,这只是一种惯例。请注意,这是一种有效且提供一些捷径的惯例,但无论如何,它只是一种惯例。
还请注意,您可以将任何检查定义为主机检查。它不需要是 ping。也许 check_http 更适合您使用。
define host{
use generic-host,host-pnp ; Name of host template to use
host_name www.microsoft.com
alias www.microsoft.com
address www.microsoft.com
check_command check_http
.
.
.
}
根据您的说法,我将创建一个虚拟服务,暂时将一堆第三方服务绑定到该服务,然后根据您的需要进行调整。
为了回答您的第 3 个问题,如果您采用每个服务一个主机的路线,则可以使用主机或服务组对它们进行分组显示。