当主机上存在指定服务时,将 Icinga2 服务应用于主机

当主机上存在指定服务时,将 Icinga2 服务应用于主机

干杯,

我遇到的情况是,我想将一项服务应用到一台主机,但只针对提供特定服务(具有特定变量)的主机。

本质上是这样的:

apply service "foo" {
  foreach service on host {
    assign where service.name = match(bar) and service.vars.baz = true
  }
}

因此,如果我有 的服务、bar one的服务以及的服务,那么我会得到两个服务,分别针对和。vars.baz=truebar twovars.baz=falsebar threebaz=truebar onebar three

正如我刚刚注意到的,我可能还需要某种方法来获取从条件服务中派生的唯一服务名称。

这样做是否愚蠢,或者我应该只使用主机变量并从中获取所有服务?

相关内容