Spec-Zone.ru › Ansible 2.9

zabbix_action – Создание/удаление/обновление действий Zabbix

Новая в версии 2.8.

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

Описание

  • Этот модуль позволяет создавать, изменять и удалять действия Zabbix.

Требования

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

  • zabbix-api >= 0.5.4

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
acknowledge_default_message
-
Текст сообщения операции обновления (известной как "операция подтверждения" до Zabbix 4.0).
Работает только с >= Zabbix 3.4
acknowledge_default_subject
-
Тема сообщения операции обновления (известной как "операция подтверждения" до Zabbix 4.0).
Работает только с >= Zabbix 3.4
acknowledge_operations
список
Список операций подтверждения.
Suboptions аналогичны тем, что для операций.
Работает только с >= Zabbix 3.4
conditions
список
Список словарей условий для проверки.
Дополнительную информацию о подвариантах этого параметра см. в документации Zabbix API по адресу https://www.zabbix.com/documentation/3.4/manual/api/reference/action/object#action_filter_condition
formulaid
-
Произвольный уникальный идентификатор, используемый для ссылки на условие из пользовательского выражения.
Может содержать только заглавные буквы.
Требуется для фильтров пользовательских выражений.
operator
-
    Варианты:
  • =
  • <>
  • like
  • not like
  • in
  • >=
  • <=
  • not in
  • matches
  • does not match
  • Да
  • Нет
Оператор условия.
Когда тип задан как time_period, варианты — in, not in.
matches, does not match, Yes и No операторы условия работают только с >= Zabbix 4.0
type
-
    Варианты:
  • host_group
  • host
  • trigger
  • trigger_name
  • trigger_severity
  • time_period
  • host_template
  • application
  • maintenance_status
  • event_tag
  • event_tag_value
  • host_IP
  • discovered_service_type
  • discovered_service_port
  • discovery_status
  • uptime_or_downtime_duration
  • received_value
  • discovery_rule
  • discovery_check
  • proxy
  • discovery_object
  • proxy
  • host_name
  • host_metadata
  • host_group
  • host
  • host_template
  • application
  • event_type
Тип (метка) условия.
value
-
Значение для сравнения.
Когда тип задан как discovery_status, варианты — up, down, discovered, lost.
Когда тип задан как discovery_object, варианты — host, service.
Когда тип задан как event_type, варианты — item in not supported state, item in normal state, LLD rule in not supported state, LLD rule in normal state, trigger in unknown state, trigger in normal state.
Когда тип задан как trigger_severity, варианты — (регистронезависимо) not classified, information, warning, average, high, disaster независимо от того, как изменены отображаемые имена в Zabbix. По умолчанию — not classified при отсутствии указания.
Помимо вышеперечисленных вариантов, обычно это либо имя объекта, либо строка для сравнения.
default_message
-
Текст сообщения по умолчанию для проблемы.
default_subject
-
Тема сообщения по умолчанию для проблемы.
esc_period
-
Длительность шага по умолчанию для операции. Должно быть больше 60 секунд. Принимает секунды, единицы времени с суффиксом и пользовательские макросы.
Требуется, когда state=present.
eval_type
-
    Варианты:
  • andor
  • и
  • или
  • custom_expression
Метод вычисления условия фильтра.
По умолчанию andor, если условий меньше 2 или не указан формула.
По умолчанию custom_expression, если указана формула.
event_source
-
    Варианты:
  • trigger
  • discovery
  • auto_registration
  • internal
Тип событий, которые будет обрабатывать действие.
Требуется, когда state=present.
formula
-
Пользовательское выражение для оценки условий фильтров с пользовательским выражением.
Выражение должно содержать идентификаторы, ссылающиеся на конкретные условия фильтра по formulaid.
Используемые в выражении идентификаторы должны точно соответствовать определенным в условиях фильтра. Ни одно условие не должно оставаться неиспользованным или пропущенным.
Требуется для фильтров пользовательских выражений.
Используйте последовательные идентификаторы, начинающиеся с "A". Если используются не последовательные идентификаторы, Zabbix переиндексирует их. Это заставляет каждый модуль заметить разницу в идентификаторах и обновить действие.
http_login_password
строка
Пароль Basic Auth
http_login_user
строка / обязательно
Логин Basic Auth
login_password
строка / обязательно
Пароль пользователя Zabbix.
login_user
строка / обязательно
Имя пользователя Zabbix.
name
- / обязательно
Имя действия
operations
список
Список операций действия
command
-
Команда для выполнения.
Требуется, когда type=remote_command и command_type!=global_script.
command_type
-
    Варианты:
  • custom_script
  • ipmi
  • ssh
  • telnet
  • global_script
Тип команды операции.
Требуется, когда type=remote_command.
esc_period
-
По умолчанию:
"0s"
Длительность шага эскалации в секундах.
Должно быть больше 60 секунд.
Принимает секунды, единицы времени с суффиксом и пользовательские макросы.
Если установлено в 0 или 0s, будет использоваться стандартный период эскалации действия.
esc_step_from
-
По умолчанию:
1
Шаг, с которого начинается эскалация.
esc_step_to
-
По умолчанию:
1
Шаг, на котором заканчивается эскалация.
execute_on
-
    Варианты:
  • agent
  • server
  • proxy
Целевой объект, на котором будет выполнена команда пользовательского скрипта.
Требуется, когда type=remote_command и command_type=custom_script.
host_groups
список
Список групп хостов, к которым должен быть добавлен хост.
Требуется, когда type=add_to_host_group или type=remove_from_host_group.
inventory
-
Режим инвентаризации хостов.
Требуется, когда type=set_host_inventory_mode.
media_type
-
По умолчанию:
"all"
Тип носителя, который будет использоваться для отправки сообщения.
Установлено в all для всех типов носителей
message
-
Текст сообщения операции.
Будет проверять 'сообщение по умолчанию' и использовать текст из default_message, если этот и default_subject не указаны
operation_condition
string
    Варианты:
  • acknowledged
  • not_acknowledged
Объект условия операции определяет условие, которое должно быть выполнено для выполнения текущей операции.
password
-
Пароль, используемый для аутентификации.
Требуется, когда type=remote_command и command_type в [ssh, telnet].
port
-
Номер порта, используемый для аутентификации.
Требуется, когда type=remote_command и command_type в [ssh, telnet].
run_on_groups
-
Группы хостов, на которых будут выполняться удалённые команды.
Требуется, когда type=remote_command, если run_on_hosts не задано.
run_on_hosts
-
Хосты, на которых будут выполняться удалённые команды.
Требуется, когда type=remote_command, если run_on_groups не задано.
Если задано 0, команда будет выполнена на текущем хосте.
script_name
-
Имя скрипта, используемого для команд глобальных скриптов.
Требуется, когда type=remote_command и command_type=global_script.
send_to_groups
list
Группы пользователей, которым будут отправлены сообщения.
send_to_users
list
Пользователи (имена пользователей или псевдонимы), которым будут отправлены сообщения.
ssh_auth_type
-
    Варианты:
  • password
  • public_key
Метод аутентификации, используемый для команд SSH.
Требуется, когда type=remote_command и command_type=ssh.
ssh_privatekey_file
-
Имя файла закрытого ключа, используемого для команд SSH с аутентификацией по открытому ключу.
Требуется, когда type=remote_command и command_type=ssh.
ssh_publickey_file
-
Имя файла открытого ключа, используемого для команд SSH с аутентификацией по открытому ключу.
Требуется, когда type=remote_command и command_type=ssh.
subject
-
Тема сообщения операции.
Будет проверять 'сообщение по умолчанию' и использовать текст из default_subject, если этот и default_subject не указаны
templates
list
Список шаблонов, к которым должен быть связан хост.
Требуется, когда type=link_to_template или type=unlink_from_template.
type
-
    Варианты:
  • send_message
  • remote_command
  • add_host
  • remove_host
  • add_to_host_group
  • remove_from_host_group
  • link_to_template
  • unlink_from_template
  • enable_host
  • disable_host
  • set_host_inventory_mode
Тип операции.
username
-
Имя пользователя, используемое для аутентификации.
Требуется, когда type=remote_command и command_type в [ssh, telnet].
pause_in_maintenance
boolean
    Варианты:
  • no
  • да ←
Нужно ли приостановить эскалацию во время периодов технического обслуживания.
Может использоваться, когда event_source=trigger.
recovery_default_message
-
Текст сообщения восстановления.
Работает только с >= Zabbix 3.2
recovery_default_subject
-
Тема сообщения восстановления.
Работает только с >= Zabbix 3.2
recovery_operations
list
Список операций восстановления.
Suboptions такие же, как для operations.
Работает только с >= Zabbix 3.2
server_url
string / обязательно
URL сервера Zabbix с протоколом (http или https). url является псевдонимом для server_url.

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

Примечания

Примечание

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

Примеры

# Trigger action with only one condition
- name: Deploy trigger action
  zabbix_action:
    server_url: "http://zabbix.example.com/zabbix/"
    login_user: Admin
    login_password: secret
    name: "Send alerts to Admin"
    event_source: 'trigger'
    state: present
    status: enabled
    esc_period: 60
    conditions:
      - type: 'trigger_severity'
        operator: '>='
        value: 'Information'
    operations:
      - type: send_message
        subject: "Something bad is happening"
        message: "Come on, guys do something"
        media_type: 'Email'
        send_to_users:
          - 'Admin'

# Trigger action with multiple conditions and operations
- name: Deploy trigger action
  zabbix_action:
    server_url: "http://zabbix.example.com/zabbix/"
    login_user: Admin
    login_password: secret
    name: "Send alerts to Admin"
    event_source: 'trigger'
    state: present
    status: enabled
    esc_period: 60
    conditions:
      - type: 'trigger_name'
        operator: 'like'
        value: 'Zabbix agent is unreachable'
        formulaid: A
      - type: 'trigger_severity'
        operator: '>='
        value: 'disaster'
        formulaid: B
    formula: A or B
    operations:
      - type: send_message
        media_type: 'Email'
        send_to_users:
          - 'Admin'
      - type: remote_command
        command: 'systemctl restart zabbix-agent'
        command_type: custom_script
        execute_on: server
        run_on_hosts:
          - 0

# Trigger action with recovery and acknowledge operations
- name: Deploy trigger action
  zabbix_action:
    server_url: "http://zabbix.example.com/zabbix/"
    login_user: Admin
    login_password: secret
    name: "Send alerts to Admin"
    event_source: 'trigger'
    state: present
    status: enabled
    esc_period: 60
    conditions:
      - type: 'trigger_severity'
        operator: '>='
        value: 'Information'
    operations:
      - type: send_message
        subject: "Something bad is happening"
        message: "Come on, guys do something"
        media_type: 'Email'
        send_to_users:
          - 'Admin'
    recovery_operations:
      - type: send_message
        subject: "Host is down"
        message: "Come on, guys do something"
        media_type: 'Email'
        send_to_users:
          - 'Admin'
    acknowledge_operations:
      - type: send_message
        media_type: 'Email'
        send_to_users:
          - 'Admin'

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

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

Ключ Возвращено Описание
msg
string
успешно
Результат операции

Пример:
Действие удалено: Регистрация web-серверов, ID: 0001


Статус

  • Этот модуль не гарантирует обратную совместимость интерфейса. [превью]
  • Этот модуль поддерживается сообществом Ansible. [сообщество]

Авторы

  • Ruben Tsirunyan (@rubentsirunyan)
  • Ruben Harutyunov (@K-DOT)

Подсказка

Если вы заметите какие-либо проблемы в этом руководстве, вы можете отредактировать этот документ, чтобы улучшить его.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.9/modules/zabbix_action_module.html

Spec-Zone.ru

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