如何声明变量并在 icinga2 主机部分重用它?
How to declare a variable and reuse it in icinga2 hosts section?
现在我使用以下配置让 Icinga2 主机服务器工作:
vars.health_check["my_module1"]={
host = "HEALTH_CHECK_SERVER_URL"
module = "my_module1"
}
vars.health_check["my_module2"]={
host = "HEALTH_CHECK_SERVER_URL"
module = "my_module2"
}
如您所见,问题是我必须重新声明相同的主机地址。当我像下面这样将主机地址置于服务之外时,它不起作用并且 Icinga2
的重新加载失败:
end_url = "HEALTH_CHECK_SERVER_URL"
vars.health_check["my_module1"]={
host = "$end_url$"
module = "my_module1"
}
vars.health_check["my_module2"]={
host = "$end_url$"
module = "my_module2"
}
我什至尝试使用 vars.end_url
但还是同样的场景。我应该如何在 Icinga2
.
中声明一个变量
您可以将主机地址与 $address$ 一起使用,因此如果主机地址是 URL 解析的内容,它应该像这样工作:
end_url = "HEALTH_CHECK_SERVER_URL"
vars.health_check["my_module1"]={
host = "$address$"
module = "my_module1"
}
vars.health_check["my_module2"]={
host = "$address$"
module = "my_module2"
}
您是否调查过 Icinga2 Director?. It's handy and host configs are more easily managed. Also, monitoring-portal.org 是 Icinga 社区的一个很好的资源。
如果您使用 director,您可以复制该命令,然后将参数设置为 $end_url$ 等变量,然后创建该字段。然后您可以将该字段添加到您的模板(导入)并在那里输入一次。
例如,我们将此方法用于 SNMP 社区字符串。我们的模板附加了一个 $snmp_community$ 字段。所以在我们需要社区的任何命令中,我们只使用这个变量。这就是 Icinga2 了解我们所有 LAN Distro 社区字符串的方式,如果我们需要更改它,我们只需更改一次即可。
现在我使用以下配置让 Icinga2 主机服务器工作:
vars.health_check["my_module1"]={
host = "HEALTH_CHECK_SERVER_URL"
module = "my_module1"
}
vars.health_check["my_module2"]={
host = "HEALTH_CHECK_SERVER_URL"
module = "my_module2"
}
如您所见,问题是我必须重新声明相同的主机地址。当我像下面这样将主机地址置于服务之外时,它不起作用并且 Icinga2
的重新加载失败:
end_url = "HEALTH_CHECK_SERVER_URL"
vars.health_check["my_module1"]={
host = "$end_url$"
module = "my_module1"
}
vars.health_check["my_module2"]={
host = "$end_url$"
module = "my_module2"
}
我什至尝试使用 vars.end_url
但还是同样的场景。我应该如何在 Icinga2
.
您可以将主机地址与 $address$ 一起使用,因此如果主机地址是 URL 解析的内容,它应该像这样工作:
end_url = "HEALTH_CHECK_SERVER_URL"
vars.health_check["my_module1"]={
host = "$address$"
module = "my_module1"
}
vars.health_check["my_module2"]={
host = "$address$"
module = "my_module2"
}
您是否调查过 Icinga2 Director?. It's handy and host configs are more easily managed. Also, monitoring-portal.org 是 Icinga 社区的一个很好的资源。
如果您使用 director,您可以复制该命令,然后将参数设置为 $end_url$ 等变量,然后创建该字段。然后您可以将该字段添加到您的模板(导入)并在那里输入一次。
例如,我们将此方法用于 SNMP 社区字符串。我们的模板附加了一个 $snmp_community$ 字段。所以在我们需要社区的任何命令中,我们只使用这个变量。这就是 Icinga2 了解我们所有 LAN Distro 社区字符串的方式,如果我们需要更改它,我们只需更改一次即可。