community.zabbix.zabbix_template_info 模块 – 收集关于 Zabbix 模板的信息

注意

此模块是 community.zabbix 集合 (版本 3.2.0) 的一部分。

如果您使用的是 ansible 包,则可能已安装此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用: ansible-galaxy collection install community.zabbix。您需要其他要求才能使用此模块,有关详细信息,请参阅 要求

要在剧本中使用它,请指定: community.zabbix.zabbix_template_info

概要

  • 此模块允许您搜索 Zabbix 模板。

要求

执行此模块的主机需要以下要求。

  • python >= 3.9

参数

参数

注释

format

字符串

转储模板时使用的格式。

选项

  • "json" ← (默认)

  • "xml"

  • "yaml"

  • "none"

http_login_password

字符串

基本认证密码

http_login_user

字符串

基本认证用户名

omit_date

布尔值

移除转储模板的日期字段

选项

  • false ← (默认)

  • true

template_name

字符串 / 必需

Zabbix 中模板的名称。

示例

# If you want to use Username and Password to be authenticated by Zabbix Server
- name: Set credentials to access Zabbix Server API
  ansible.builtin.set_fact:
    ansible_user: Admin
    ansible_httpapi_pass: zabbix

# If you want to use API token to be authenticated by Zabbix Server
# https://www.zabbix.com/documentation/current/en/manual/web_interface/frontend_sections/administration/general#api-tokens
- name: Set API token
  ansible.builtin.set_fact:
    ansible_zabbix_auth_key: 8ec0d52432c15c91fcafe9888500cf9a607f44091ab554dbee860f6b44fac895

- name: Get Zabbix template as JSON
  # set task level variables as we change ansible_connection plugin here
  vars:
    ansible_network_os: community.zabbix.zabbix
    ansible_connection: httpapi
    ansible_httpapi_port: 443
    ansible_httpapi_use_ssl: true
    ansible_httpapi_validate_certs: false
    ansible_zabbix_url_path: "zabbixeu"  # If Zabbix WebUI runs on non-default (zabbix) path ,e.g. http://<FQDN>/zabbixeu
    ansible_host: zabbix-example-fqdn.org
  community.zabbix.zabbix_template_info:
    template_name: Template
    format: json
    omit_date: yes
  register: template_json

- name: Get Zabbix template as XML
  # set task level variables as we change ansible_connection plugin here
  vars:
    ansible_network_os: community.zabbix.zabbix
    ansible_connection: httpapi
    ansible_httpapi_port: 443
    ansible_httpapi_use_ssl: true
    ansible_httpapi_validate_certs: false
    ansible_zabbix_url_path: "zabbixeu"  # If Zabbix WebUI runs on non-default (zabbix) path ,e.g. http://<FQDN>/zabbixeu
    ansible_host: zabbix-example-fqdn.org
  community.zabbix.zabbix_template_info:
    template_name: Template
    format: xml
    omit_date: no
  register: template_json

- name: Get Zabbix template as YAML
  # set task level variables as we change ansible_connection plugin here
  vars:
    ansible_network_os: community.zabbix.zabbix
    ansible_connection: httpapi
    ansible_httpapi_port: 443
    ansible_httpapi_use_ssl: true
    ansible_httpapi_validate_certs: false
    ansible_zabbix_url_path: "zabbixeu"  # If Zabbix WebUI runs on non-default (zabbix) path ,e.g. http://<FQDN>/zabbixeu
    ansible_host: zabbix-example-fqdn.org
  community.zabbix.zabbix_template_info:
    template_name: Template
    format: yaml
    omit_date: no
  register: template_yaml

- name: Determine if Zabbix template exists
  # set task level variables as we change ansible_connection plugin here
  vars:
    ansible_network_os: community.zabbix.zabbix
    ansible_connection: httpapi
    ansible_httpapi_port: 443
    ansible_httpapi_use_ssl: true
    ansible_httpapi_validate_certs: false
    ansible_zabbix_url_path: "zabbixeu"  # If Zabbix WebUI runs on non-default (zabbix) path ,e.g. http://<FQDN>/zabbixeu
    ansible_host: zabbix-example-fqdn.org
  community.zabbix.zabbix_template_info:
    template_name: Template
    format: none
  register: template

返回值

常见返回值已在此处记录 此处,以下是此模块独有的字段

描述

template_id

字符串

模板的 ID

返回:始终

template_json

字符串

模板的 JSON 数据

返回:当 format 为 json 且 omit_date 为 true 时

示例: "{'changed': False, 'failed': False, 'template_id': '10529', 'template_json': {'zabbix_export': {'groups': [{'name': 'Templates', 'uuid': '7df96b18c230490a9a0a9e2307226338'}], 'templates': [{'groups': [{'name': 'Templates'}], 'name': 'ExampleTemplateForTempleteInfoModule', 'template': 'ExampleTemplateForTempleteInfoModule', 'uuid': '615e9b0662bb4399a2503a9aaa743517'}], 'version': '6.0'}}}"

template_xml

字符串

模板的 XML 数据

返回:当 format 为 xml 且 omit_date 为 false 时

示例: "<zabbix_export>\n    <version>6.0</version>\n    <groups>\n        <group>\n            <uuid>7df96b18c230490a9a0a9e2307226338</uuid>\n            <name>Templates</name>\n        </group>\n    </groups>\n    <templates>\n        <template>\n            <uuid>9a83162273f74032a1005fdb13943038</uuid>\n            <template>ExampleTemplateForTempleteInfoModule</template>\n            <name>ExampleTemplateForTempleteInfoModule</name>\n            <groups>\n                <group>\n                    <name>Templates</name>\n                </group>\n            </groups>\n        </template>\n    </templates>\n</zabbix_export>"

template_yaml

字符串

模板的 YAML 数据

返回:当 format 为 yaml 且 omit_date 为 false 时

示例: "zabbix_export:\n  version: \"6.0\"\n  groups:\n    -\n      uuid: 7df96b18c230490a9a0a9e2307226338\n      name: Templates\n      templates:\n        -\n          uuid: 67b075276bf047d3aeb8f7d5c2121c6a\n          template: ExampleTemplateForTempleteInfoModule\n          name: ExampleTemplateForTempleteInfoModule\n          groups:\n            -\n              name: Templatesn"

作者

  • sky-joker (@sky-joker)