community.general.icinga2 inventory – Icinga2清单源
注意
此清单插件是 community.general 集合 (版本 10.1.0) 的一部分。
如果您使用的是 ansible
软件包,则可能已安装此集合。它不包含在 ansible-core
中。要检查它是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用: ansible-galaxy collection install community.general
。
要在playbook中使用它,请指定: community.general.icinga2
。
community.general 3.7.0 中的新增功能
概要
从Icinga2 API获取清单主机。
使用配置文件作为清单源,它必须以
.icinga2.yml
或.icinga2.yaml
结尾。
参数
参数 |
注释 |
---|---|
从jinja2表达式创建变量。 默认值: |
|
使用Icinga2主机组作为组。 选项
|
|
基于Jinja2条件将主机添加到组。 默认值: |
|
有效的Icinga2 API主机过滤器。留空表示不进行过滤 |
|
允许基于不同的属性覆盖清单名称。 这允许更改限制的使用方式。 当前默认值 选项
|
|
基于变量的值将主机添加到组。 默认值: |
|
当主机变量的值为空字符串时的默认值。 此选项与 |
|
用于生成组的输入字典中的键。 |
|
键控组的父组。 |
|
键控组名将以此前缀开头。 默认值: |
|
用于构建键控组名的分隔符。 默认值: |
|
将此选项设置为 此选项与 选项
|
|
与 默认情况下,没有提供前缀或分隔符的键控组的名称将以下划线开头。 这是因为默认前缀为 如果未给出前缀,则将此选项设置为 如果组名是从映射中导出的,则仍然使用分隔符来连接项目。 为了完全不在组名中使用分隔符,请将键控组的分隔符设置为空字符串。 选项
|
|
查询 API 的密码。 |
|
插件名称。 选项
|
|
如果 由于可以在表达式中使用事实,因此它们可能并不总是可用,并且我们默认忽略这些错误。 选项
|
|
Icinga2 API 的根 URL。 |
|
将额外变量合并到可用于组合的变量中(最高优先级)。 选项
配置
|
|
查询 API 的用户名。 |
|
启用或禁用 SSL 证书验证。 选项
|
示例
# my.icinga2.yml
plugin: community.general.icinga2
url: https://127.0.0.1:5665
user: ansible
password: secure
host_filter: \"linux-servers\" in host.groups
validate_certs: false # only do this when connecting to localhost!
inventory_attr: name
groups:
# simple name matching
webservers: inventory_hostname.startswith('web')
# using icinga2 template
databaseservers: "'db-template' in (icinga2_attributes.templates|list)"
compose:
# set all icinga2 attributes to a host variable 'icinga2_attrs'
icinga2_attrs: icinga2_attributes
# set 'ansible_user' and 'ansible_port' from icinga2 host vars
ansible_user: icinga2_attributes.vars.ansible_user
ansible_port: icinga2_attributes.vars.ansible_port | default(22)