Spec-Zone.ru › Ansible

Модуль community.zabbix.zabbix_discovery_rule — создание, удаление и обновление правил обнаружения Zabbix

Примечание

Этот модуль входит в коллекцию community.zabbix (версия 4.2.0).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install community.zabbix. Для работы с этим модулем требуются дополнительные компоненты; подробности см. в разделе Требования.

Чтобы использовать модуль в плейбуке, укажите: community.zabbix.zabbix_discovery_rule.

  • Краткое описание
  • Требования
  • Параметры
  • Примеры
  • Возвращаемые значения

Краткое описание

  • Создание правила обнаружения.
  • Удаление существующего правила обнаружения.
  • Обновление существующего правила обнаружения с новыми параметрами.

Требования

На хосте, выполняющем этот модуль, должны быть установлены следующие компоненты.

  • python >= 3.9

Параметры

Параметр

Комментарии

dchecks

псевдонимы: dcheck

list / элементы=dictionary

Список словарей с объектами проверок обнаружения.

Дополнительные сведения см. в документации по объекту проверки обнаружения: https://www.zabbix.com/documentation/current/manual/api/reference/dcheck/object

host_source

string

Источник имени хоста.

Возможные значения:

DNS (по умолчанию)

IP

discovery — значение обнаружения этой проверки

Параметр доступен начиная с Zabbix 4.4

Варианты:

  • "DNS" ← (по умолчанию)
  • "IP"
  • "discovery"

key

string

Значение этого свойства зависит от типа проверки:

- ключ для запросов проверок агента Zabbix

- SNMP OID для проверок SNMPv1, SNMPv2 и SNMPv3

name_source

string

Источник отображаемого имени.

Возможные значения:

none — (по умолчанию) не задано

DNS

IP

discovery — значение обнаружения этой проверки

Параметр доступен начиная с Zabbix 4.4

Варианты:

  • "None" ← (по умолчанию)
  • "DNS"
  • "IP"
  • "discovery"

ports

string

Один или несколько диапазонов портов для проверки, разделённых запятыми. Используется для всех проверок, кроме ICMP.

snmp_community

string

Сообщество SNMP.

Обязательно для проверок агента SNMPv1 и SNMPv2.

snmpv3_authpassphrase

string

Парольная фраза аутентификации для проверок агента SNMPv3 с уровнем безопасности authNoPriv или authPriv.

snmpv3_authprotocol

string

Протокол аутентификации для проверок агента SNMPv3 с уровнем безопасности authNoPriv или authPriv.

Возможные значения:

MD5

SHA

Варианты:

  • "MD5"
  • "SHA"

snmpv3_contextname

string

Имя контекста SNMPv3. Используется только проверками SNMPv3.

snmpv3_privpassphrase

string

Парольная фраза конфиденциальности для проверок агента SNMPv3 с уровнем безопасности authPriv.

snmpv3_privprotocol

string

Протокол конфиденциальности для проверок агента SNMPv3 с уровнем безопасности authPriv.

Возможные значения:

DES

AES

Варианты:

  • "DES"
  • "AES"

snmpv3_securitylevel

string

Уровень безопасности для проверок агента SNMPv3.

Возможные значения:

noAuthNoPriv

authNoPriv

authPriv

Варианты:

  • "noAuthNoPriv"
  • "authNoPriv"
  • "authPriv"

snmpv3_securityname

string

Имя безопасности для проверок агента SNMPv3.

type

string

Тип проверки.

Варианты:

  • "SSH"
  • "LDAP"
  • "SMTP"
  • "FTP"
  • "HTTP"
  • "POP"
  • "NNTP"
  • "IMAP"
  • "TCP"
  • "Zabbix"
  • "SNMPv1"
  • "SNMPv2"
  • "ICMP"
  • "SNMPv3"
  • "HTTPS"
  • "Telnet"

uniq

boolean

Использовать ли эту проверку в качестве критерия уникальности устройства.

Для одного правила обнаружения можно настроить только одну проверку уникальности.

Используется для проверок агентов Zabbix, SNMPv1, SNMPv2 и SNMPv3.

Возможные значения:

no — (по умолчанию) не использовать эту проверку в качестве критерия уникальности

yes — использовать эту проверку в качестве критерия уникальности

Варианты:

  • false ← (по умолчанию)
  • true

delay

string

Интервал выполнения правила обнаружения.

Принимает значение в секундах, единицы времени с суффиксом и пользовательский макрос.

По умолчанию: "1h"

http_login_password

string

Пароль для базовой аутентификации

http_login_user

string

Имя пользователя для базовой аутентификации

iprange

list / элементы=string

Один или несколько диапазонов IP-адресов для проверки, разделённых запятыми.

name

string / обязательный

Имя правила обнаружения.

proxy

string

Имя прокси-сервера, используемого для обнаружения.

state

string

Создать или удалить правила обнаружения.

Варианты:

  • "present" ← (по умолчанию)
  • "absent"

status

string

Включено ли правило обнаружения.

Возможные значения:

enabled (по умолчанию)

disabled

Варианты:

  • "enabled" ← (по умолчанию)
  • "disabled"

Примеры

# 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

# Base create discovery rule example
- name: Create discovery rule with ICMP and zabbix agent checks
  # 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_discovery_rule:
    name: ACME
    state: present
    iprange: 192.168.1.1-255
    dchecks:
        - type: ICMP
        - type: Zabbix
          key: "system.hostname"
          ports: 10050
          uniq: yes
          host_source: "discovery"

# Base update (add new dcheck) discovery rule example
- name: Create discovery rule with ICMP and zabbix agent checks
  # 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_discovery_rule:
    name: ACME
    state: present
    iprange: 192.168.1.1-255
    dchecks:
        - type: SNMPv3
          snmp_community: CUSTOMER@snmp3-readonly
          ports: "161"
          key: iso.3.6.1.2.1.1.1.0
          snmpv3_contextname: "ContextName"
          snmpv3_securityname: "SecurityName"
          snmpv3_securitylevel: "authPriv"
          snmpv3_authprotocol: "SHA"
          snmpv3_authpassphrase: "SeCrEt"
          snmpv3_privprotocol: "AES"
          snmpv3_privpassphrase: "TopSecret"
          uniq: no
          host_source: "DNS"
          name_source: "None"

# Base delete discovery rule example
- name: Delete discovery rule
  # 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_discovery_rule:
    name: ACME
    state: absent

Возвращаемые значения

Общие возвращаемые значения описаны здесь; ниже перечислены поля, уникальные для этого модуля:

Ключ

Описание

drule

string

Имя правила обнаружения.

Возвращается: при успехе

Пример: "ACME"

druleid

string

Идентификатор правила обнаружения.

Возвращается: при успехе

Пример: "42"

msg

string

Результат операции

Возвращается: всегда

Пример: "Discovery rule created: ACME, ID: 42"

state

string

Состояние правила обнаружения после выполнения.

Возвращается: при успехе

Пример: "present"

Авторы

  • Tobias Birkefeld (@tcraxs)

Ссылки на коллекцию

  • Отслеживание проблем
  • Домашняя страница
  • Репозиторий (исходный код)

© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/community/zabbix/zabbix_discovery_rule_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API