Spec-Zone.ru › Ansible 2.11

community.zabbix.zabbix_map – Создание/обновление/удаление карт Zabbix

Примечание

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

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

Чтобы использовать его в книге задач, укажите: community.zabbix.zabbix_map.

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

Описание

  • Этот модуль позволяет создавать, изменять и удалять записи в карте Zabbix, используя двоичные файлы Graphviz и текстовое описание на языке DOT. Узлы графа будут отображаться как элементы карты, а рёбра — как связи между элементами карты. Подробнее см. https://en.wikipedia.org/wiki/DOT_(graph_description_language) и https://www.graphviz.org/. На вдохновлён http://blog.zabbix.com/maps-for-the-lazy/.
  • Поддерживаются следующие дополнительные атрибуты узлов: zbx_host содержит имя хоста в Zabbix. Используйте это, если желаемый тип элемента карты — host. zbx_group содержит имя группы хостов в Zabbix. Используйте это, если желаемый тип элемента карты — host group. zbx_map содержит имя карты в Zabbix. Используйте это, если желаемый тип элемента карты — map. zbx_label содержит метку элемента карты. zbx_image содержит имя изображения, используемого для отображения элемента в стандартном состоянии. zbx_image_disabled содержит имя изображения, используемого для отображения отключённого элемента карты. zbx_image_maintenance содержит имя изображения, используемого для отображения элемента карты в режиме технического обслуживания. zbx_image_problem содержит имя изображения, используемого для отображения элемента карты с проблемами. zbx_url содержит URL элемента карты в формате name:url. Можно указать несколько URL, добавив постфикс (например, zbx_url1, zbx_url2).
  • Поддерживаются следующие дополнительные атрибуты связей: zbx_draw_style содержит стиль отрисовки линии связи. Возможные значения: line, bold, dotted, dashed. zbx_trigger содержит имя триггера, используемого как индикатор связи в формате host_name:trigger_name. Можно указать несколько триггеров, добавив постфикс (например, zbx_trigger1, zbx_trigger2). zbx_trigger_color содержит цвет индикатора, заданный либо как имя CSS3, либо как шестнадцатеричный код, начинающийся с #. zbx_trigger_draw_style содержит стиль отрисовки индикатора. Возможные значения такие же, как и для zbx_draw_style.

Требования

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

  • python >= 2.6
  • zabbix-api >= 0.5.4
  • pydotplus
  • webcolors
  • Pillow
  • Graphviz

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
data
строка
Граф, записанный на языке DOT.

псевдонимы: dot_data
default_image
строка
Имя изображения Zabbix, используемого для отображения элемента, если у этого элемента не определён атрибут zbx_image.

псевдонимы: image
expand_problem
булево
    Варианты:
  • нет
  • да ←
Определяет, будет ли отображаться триггер проблемы для элементов с единственной проблемой.
height
целое число
Значение по умолчанию:
600
Высота карты.
highlight
булево
    Варианты:
  • нет
  • да ←
Включить или выключить подсветку иконок.
http_login_password
строка
Пароль для Basic Auth
http_login_user
строка
Логин для Basic Auth
label_type
строка
    Варианты:
  • метка
  • ip
  • имя ←
  • статус
  • ничего
  • пользовательский
Тип метки элемента карты.
login_password
строка / требуется
Пароль пользователя Zabbix.
login_user
строка / требуется
Имя пользователя Zabbix.
margin
целое число
Значение по умолчанию:
40
Размер отступа между границами карты и ее элементами.
name
строка / требуется
Имя карты.

псевдонимы: map_name
server_url
строка / требуется
URL сервера Zabbix с протоколом (http или https). url — псевдоним для server_url.

псевдонимы: url
state
строка
    Варианты:
  • наличие ←
  • отсутствие
Состояние карты.
В случае present, будет создана новая карта, если она не существует, или карта будет обновлена, если связанные данные отличаются.
В случае absent карта будет удалена, если она существует.
timeout
целое число
Значение по умолчанию:
10
Время ожидания запроса API (секунды).
validate_certs
булево
    Варианты:
  • нет
  • да ←
Если установлено в значение False, сертификаты SSL не будут проверяться. Это следует использовать только на сайтах, контролируемых лично, использующих самозаверяемые сертификаты.
width
целое число
Значение по умолчанию:
800
Ширина карты.

Примечания

Примечание

  • Если вы используете login_password=zabbix, слово “zabbix” заменяется на “****” во всем выводе модуля, поскольку login_password использует no_log. Подробнее см. этот раздел FAQ.

Примеры

###
### Example inventory:
# [web]
# web[01:03].example.com ansible_host=127.0.0.1
# [db]
# db.example.com ansible_host=127.0.0.1
# [backup]
# backup.example.com ansible_host=127.0.0.1
###
### Each inventory host is present in Zabbix with a matching name.
###
### Contents of 'map.j2':
# digraph G {
#     graph [layout=dot splines=false overlap=scale]
#     INTERNET [zbx_url="Google:https://google.com" zbx_image="Cloud_(96)"]
# {% for web_host in groups.web %}
#     {% set web_loop = loop %}
#     web{{ '%03d' % web_loop.index }} [zbx_host="{{ web_host }}"]
#     INTERNET -> web{{ '%03d' % web_loop.index }} [zbx_trigger="{{ web_host }}:Zabbix agent on {HOST.NAME} is unreachable for 5 minutes"]
#     {% for db_host in groups.db %}
#       {% set db_loop = loop %}
#     web{{ '%03d' % web_loop.index }} -> db{{ '%03d' % db_loop.index }}
#     {% endfor %}
# {% endfor %}
#     { rank=same
# {% for db_host in groups.db %}
#     {% set db_loop = loop %}
#     db{{ '%03d' % db_loop.index }} [zbx_host="{{ db_host }}"]
#     {% for backup_host in groups.backup %}
#         {% set backup_loop = loop %}
#         db{{ '%03d' % db_loop.index }} -> backup{{ '%03d' % backup_loop.index }} [color="blue"]
#     {% endfor %}
# {% endfor %}
# {% for backup_host in groups.backup %}
#     {% set backup_loop = loop %}
#         backup{{ '%03d' % backup_loop.index }} [zbx_host="{{ backup_host }}"]
# {% endfor %}
#     }
# }
###
### Create Zabbix map "Demo Map" made of template 'map.j2'
- name: Create Zabbix map
  community.zabbix.zabbix_map:
    server_url: http://zabbix.example.com
    login_user: username
    login_password: password
    name: Demo map
    state: present
    data: "{{ lookup('template', 'map.j2') }}"
    default_image: Server_(64)
    expand_problem: no
    highlight: no
    label_type: label
  delegate_to: localhost
  run_once: yes

Авторы

  • Antony Alekseyev (@Akint)

© 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_map_module.html

Spec-Zone.ru

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