Spec-Zone.ru › Ansible 2.11

community.zabbix.zabbix_host – Создание/обновление/удаление хостов Zabbix

Примечание

Этот плагин входит в коллекцию community.zabbix (версия 1.2.0).

Для его установки используйте: ansible-galaxy collection install community.zabbix.

Для использования в плейбуке укажите: community.zabbix.zabbix_host.

  • Описание
  • Требования
  • Параметры
  • Примечания
  • Примеры

Описание

  • Этот модуль позволяет создавать, изменять и удалять записи хостов Zabbix, а также связанные данные групп и шаблонов.

Требования

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

  • python >= 2.6
  • zabbix-api >= 0.5.4

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
ca_cert
строка
Требуемый сертификат издателя.
Работает только с >= Zabbix 3.0

псевдонимы: tls_issuer
description
строка
Описание хоста в Zabbix.
force
булево
    Варианты:
  • нет
  • да ←
Перезаписывает конфигурацию хоста, даже если она уже присутствует.
host_groups
список / элементы=строка
Список групп хостов, к которым принадлежит хост.
host_name
строка / обязательно
Имя хоста в Zabbix.
host_name — уникальный идентификатор, который нельзя обновить с помощью этого модуля.
http_login_password
строка
Пароль аутентификации Basic.
http_login_user
строка
Логин аутентификации Basic.
interfaces
список / элементы=словарь
Значение по умолчанию:
[]
Список интерфейсов для создания на хосте (см. пример ниже).
Для получения дополнительной информации см. документацию по интерфейсам хоста по адресу
https://www.zabbix.com/documentation/4.0/manual/api/reference/hostinterface/object
bulk
целое число
    Варианты:
  • 0
  • 1
Значение по умолчанию:
1
Использовать ли пакетные запросы SNMP.
Действительно только при type='snmp'.
0 (не использовать пакетные запросы), 1 (использовать пакетные запросы)
Работает только с Zabbix <= 4.4 и молча игнорируется в более новых версиях.
Используйте details с Zabbix >= 5.0.
details
словарь
Значение по умолчанию:
{}
Дополнительные сведения для интерфейсов SNMP-хоста.
Требуется при type='snmp'.
Работает только с Zabbix >= 5.0.
authpassphrase
строка
Значение по умолчанию:
""
Секретный ключ аутентификации SNMPv3.
Используется при securitylevel=1(authNoPriv) или securitylevel=2(AuthPriv).
authprotocol
целое число
    Варианты:
  • 0
  • 1
Значение по умолчанию:
0
Протокол аутентификации SNMPv3.
Используется при securitylevel=1(authNoPriv) или securitylevel=2(AuthPriv).
0 (MD5), 1 (SHA)
bulk
целое число
    Варианты:
  • 0
  • 1
Значение по умолчанию:
1
Использовать ли пакетные запросы SNMP.
0 (не использовать пакетные запросы), 1 (использовать пакетные запросы)
community
строка
Строка сообщества SNMPv1 и SNMPv2.
Требуется при version=1 или version=2.
contextname
строка
Значение по умолчанию:
""
Имя контекста SNMPv3.
privpassphrase
строка
Значение по умолчанию:
""
Секретный ключ конфиденциальности SNMPv3.
Используется при securitylevel=2(AuthPriv).
privprotocol
целое число
    Варианты:
  • 0
  • 1
Значение по умолчанию:
0
Протокол конфиденциальности SNMPv3.
Используется при securitylevel=2(authPriv).
0 (DES), 1 (AES)
securitylevel
целое число
    Варианты:
  • 0
  • 1
  • 2
Значение по умолчанию:
0
Уровень безопасности SNMPv3.
0 (noAuthNoPriv), 1 (authNoPriv), 2 (authPriv).
securityname
строка
Значение по умолчанию:
""
Имя безопасности SNMPv3.
version
целое число
    Варианты:
  • 1
  • 2
  • 3
Значение по умолчанию:
2
Версия SNMP.
1 (SNMPv1), 2 (SNMPv2c), 3 (SNMPv3)
dns
строка
Значение по умолчанию:
""
Имя домена хост-интерфейса.
Требуется, если useip=0.
ip
строка
Значение по умолчанию:
""
IP-адрес, используемый хост-интерфейсом.
Требуется, если useip=1.
main
целое число
    Варианты:
  • 0
  • 1
Значение по умолчанию:
0
Является ли интерфейс используемым по умолчанию.
Если предоставлено несколько интерфейсов с одинаковым типом, только один может быть по умолчанию.
0 (не по умолчанию), 1 (по умолчанию)
port
строка
Порт, используемый хост-интерфейсом.
Если не указан, используется порт по умолчанию для каждого типа интерфейса
10050, если type='agent'
161, если type='snmp'
623, если type='ipmi'
12345, если type='jmx'
type
строка / обязательно
    Варианты:
  • agent
  • 1
  • snmp
  • 2
  • ipmi
  • 3
  • jmx
  • 4
Тип интерфейса для добавления
Числовые значения также принимаются для типа интерфейса
1 = agent
2 = snmp
3 = ipmi
4 = jmx
useip
целое число
    Варианты:
  • 0
  • 1
Значение по умолчанию:
0
Подключаться к хост-интерфейсу по IP-адресу вместо имени DNS.
0 (не использовать ip), 1 (использовать ip)
inventory_mode
строка
    Варианты:
  • автоматический
  • ручной
  • выключен
Настройка режима инвентаризации.
inventory_zabbix
словарь
Добавление фактов для инвентаризации zabbix (например, тега) (см. пример ниже).
Для получения дополнительной информации ознакомьтесь с документацией по интерфейсу.
https://www.zabbix.com/documentation/3.2/manual/api/reference/host/object#host_inventory
ipmi_authtype
целое число
Алгоритм аутентификации IPMI.
Для получения дополнительной информации обратитесь к документации объекта Host
https://www.zabbix.com/documentation/3.4/manual/api/reference/host/object
Возможные значения, 0 (нет), 1 (MD2), 2 (MD5), 4 (прямой), 5 (OEM), 6 (RMCP+), где -1 является значением API по умолчанию.
Обратите внимание, что API Zabbix будет обрабатывать отсутствующие настройки как значения по умолчанию при обновлении любых из опций ipmi_; это означает, что если вы попытаетесь установить любую из четырех опций индивидуально, остальные будут сброшены до значений по умолчанию.
ipmi_password
строка
Пароль IPMI.
также см. последнее примечание в документации ipmi_authtype
ipmi_privilege
целое число
Уровень привилегий IPMI.
Для получения дополнительной информации обратитесь к документации объекта Host
https://www.zabbix.com/documentation/3.4/manual/api/reference/host/object
Возможные значения 1 (callback), 2 (пользователь), 3 (оператор), 4 (администратор), 5 (OEM), где 2 является значением API по умолчанию.
также см. последнее примечание в документации ipmi_authtype
ipmi_username
строка
Имя пользователя IPMI.
также см. последнее примечание в документации ipmi_authtype
link_templates
список / элементы=строка
Список шаблонов, связанных с хостом.
login_password
строка / обязательно
Пароль пользователя Zabbix.
login_user
строка / обязательно
Имя пользователя Zabbix.
macros
список / элементы=словарь
Список пользовательских макросов, которые нужно назначить хосту zabbix.
Указание macros=[] с force=yes очистит все существующие пользовательские макросы с хоста.

псевдонимы: user_macros
Описание
строка
По умолчанию:
""
Описание пользовательского макроса.
Работает только с >= Zabbix 4.4.
макрос
строка / обязательно
Имя пользовательского макроса.
Может быть в формате Zabbix "{$MACRO}" или в коротком формате "MACRO".
тип
строка
    Варианты:
  • текст ←
  • секрет
Тип макроса.
Работает только с >= Zabbix 5.0.
Поскольку значение не возвращается API для секретных макросов, нет надёжного способа определить изменения в содержимом значения секретного макроса.
Для обновления значения секретного макроса, пожалуйста, обновите описание вместе с ним, чтобы оно прошло проверку.
значение
строка / обязательно
Значение пользовательского макроса.
прокси
строка
Имя Zabbix прокси, которое будет использоваться.
url_сервера
строка / обязательно
URL сервера Zabbix с протоколом (http или https). url — псевдоним для server_url.

псевдонимы: url
состояние
строка
    Варианты:
  • наличие ←
  • отсутствие
Состояние хоста.
На present, он будет создан, если хост не существует, или обновлён, если связанные данные отличаются.
На absent будет удалён хост, если он существует.
статус
строка
    Варианты:
  • активирован ←
  • деактивирован
Статус мониторинга хоста.
теги
список / элементы=словарь
Список тегов хоста для назначения хосту zabbix.
Работает только с >= Zabbix 4.2.
Указание тегов=[] с force=yes очистит все теги с хоста.

псевдонимы: host_теги
тег
строка / обязательно
Имя тега хоста.
значение
строка
По умолчанию:
""
Значение тега хоста.
таймаут
целое число
По умолчанию:
10
Таймаут запроса API (секунды).
tls_принять
целое число
По умолчанию:
1
Определяет типы соединений, разрешённых для входящих соединений.
Параметр tls_accept принимает значения от 1 до 7
Возможные значения: 1 (без шифрования), 2 (PSK), 4 (сертификат).
Значения могут быть объединены.
Работает только с >= Zabbix 3.0
tls_подключиться
целое число
По умолчанию:
1
Определяет тип шифрования для исходящих соединений.
Возможные значения: 1 (без шифрования), 2 (PSK), 4 (сертификат).
Работает только с >= Zabbix 3.0
tls_psk
строка
Значение PSK — сложно угадываемая строка шестнадцатеричных цифр.
Предварительно установленный ключ, как минимум 32 шестнадцатеричные цифры. Требуется, если либо tls_connect, либо tls_accept включены с PSK.
Работает только с >= Zabbix 3.0
tls_psk_идентификатор
строка
Уникальное имя, по которому Zabbix компоненты ссылаются на этот конкретный PSK
Не вставляйте конфиденциальную информацию в строку идентификатора PSK, она передаётся по сети без шифрования.
Работает только с >= Zabbix 3.0
tls_субъект
строка
Требуемый субъект сертификата.
Работает только с >= Zabbix 3.0
проверять_сертификаты
булево
    Варианты:
  • нет
  • да ←
Если установлено в ложь, SSL сертификаты не будут проверены. Это следует использовать только на сайтах, которыми вы лично управляете, и которые используют самозаверяемые сертификаты.
видимое_название
строка
Видимое имя хоста в Zabbix.

Примечания

Примечание

  • Если вы используете login_password=zabbix, слово «zabbix» заменено на «****» во всех выходных данных модуля, потому что login_password использует no_log. Смотрите эту страницу FAQ для получения дополнительной информации.

Примеры

- name: Create a new host or update an existing host's info
  local_action:
    module: community.zabbix.zabbix_host
    server_url: http://monitor.example.com
    login_user: username
    login_password: password
    host_name: ExampleHost
    visible_name: ExampleName
    description: My ExampleHost Description
    host_groups:
      - Example group1
      - Example group2
    link_templates:
      - Example template1
      - Example template2
    status: enabled
    state: present
    inventory_mode: manual
    inventory_zabbix:
      tag: "{{ your_tag }}"
      alias: "{{ your_alias }}"
      notes: "Special Informations: {{ your_informations | default('None') }}"
      location: "{{ your_location }}"
      site_rack: "{{ your_site_rack }}"
      os: "{{ your_os }}"
      hardware: "{{ your_hardware }}"
    ipmi_authtype: 2
    ipmi_privilege: 4
    ipmi_username: username
    ipmi_password: password
    interfaces:
      - type: 1
        main: 1
        useip: 1
        ip: 10.xx.xx.xx
        dns: ""
        port: "10050"
      - type: 4
        main: 1
        useip: 1
        ip: 10.xx.xx.xx
        dns: ""
        port: "12345"
    proxy: a.zabbix.proxy
    macros:
      - macro: '{$EXAMPLEMACRO}'
        value: ExampleMacroValue
      - macro: EXAMPLEMACRO2
        value: ExampleMacroValue2
        description: Example desc that work only with Zabbix 4.4 and higher
    tags:
      - tag: ExampleHostsTag
      - tag: ExampleHostsTag2
        value: ExampleTagValue

- name: Update an existing host's TLS settings
  local_action:
    module: community.zabbix.zabbix_host
    server_url: http://monitor.example.com
    login_user: username
    login_password: password
    host_name: ExampleHost
    visible_name: ExampleName
    host_groups:
      - Example group1
    tls_psk_identity: test
    tls_connect: 2
    tls_psk: 123456789abcdef123456789abcdef12

Авторы

  • Cove (@cove)
  • Tony Minfei Ding (!UNKNOWN)
  • Harrison Gu (@harrisongu)
  • Werner Dijkerman (@dj-wasabi)
  • Eike Frost (@eikef)

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

Spec-Zone.ru

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