在 Ansible 变量中声明 Icinga 主机变量的最佳方法

在 Ansible 变量中声明 Icinga 主机变量的最佳方法

我正在写Ansible 角色建立一些冰加 2配置,更重要的是分布式 Icinga 安装中客户端主机的配置。

我想在 Ansible 变量中声明 Icinga 2 主机变量,该变量可以传递给 Ansible 模板来构建新的 Icinga 2 配置文件,例如:

object Host "client" {
  import "generic-host"
  address = "123.123.123.123"

  [...]

  vars.disks["Disks"] = {
    disk_all = true
  }

  vars.tcp["Description"] = {
    tcp_address = "foo.bar"
  }

  [...]    

}

vars.tcp["Description"]我在 Ansible 变量(YAML)中声明 Icinga 2 主机变量(例如在上面的例子中),如下所示:

icinga2_clients:
  - client:
    - vars:
      - tcp:
        - name: "Description"
          params:
          - tcp_address: "foo.bar"

您对如何编写更好的 Ansible 变量文件有什么更好的想法吗?

相关内容