我有一个主,自上而下的分布式Icinganetworking。 三十多位客户中的每一个最终都将在他们的networkingDMZ中获得Icinga2区域和卫星服务器。 所有客户监控的设备(和服务器)都会得到相同的一组检查,但每个客户/区域使用一组单独的凭证。
以下是位于/etc/icinga2/zones.d/global-templates中的global-services.conf文件的一个检查示例。
apply Service "SNMP/161: System Uptime" { import "generic-service" check_command = "snmp" vars.snmp_oid = "sysUpTime.0" vars.snmp_version = "2c" vars.snmp_community = "$SNMPCOMMUNITY$" assign where host.vars.devtype == "dba" assign where host.vars.devtype == "rmq" assign where host.vars.devtype == "rpd" assign where host.vars.devtype == "rrpm" }
这是第一个客户的常量文件:/etc/icinga2/zones.d/cust1/const-cust1.conf
const SNMPCOMMUNITY = "blurple" const BLUADMIN = "admin" const BLUMADMINPASS= "4039"
所以问题是,我如何得到global-services.conf文件来获取它所在区域所需的SNMPCOMMUNITY值? (BLUADMIN和BLUMADMINPASS将用于另一个使用Web API的检查。)