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 - |
| Оператор условия. Когда тип задан как time_period, варианты — in, not in. matches, does not match, Yes и No операторы условия работают только с >= Zabbix 4.0 | |
| 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, если условий меньше 2 или не указан формула.По умолчанию custom_expression, если указана формула. | |
| event_source - |
| Тип событий, которые будет обрабатывать действие. Требуется, когда 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 - |
| Тип команды операции. Требуется, когда type=remote_command. | |
| esc_period - | По умолчанию: "0s" | Длительность шага эскалации в секундах. Должно быть больше 60 секунд. Принимает секунды, единицы времени с суффиксом и пользовательские макросы. Если установлено в 0 или 0s, будет использоваться стандартный период эскалации действия. | |
| esc_step_from - | По умолчанию: 1 | Шаг, с которого начинается эскалация. | |
| esc_step_to - | По умолчанию: 1 | Шаг, на котором заканчивается эскалация. | |
| execute_on - |
| Целевой объект, на котором будет выполнена команда пользовательского скрипта. Требуется, когда 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 |
| Объект условия операции определяет условие, которое должно быть выполнено для выполнения текущей операции. | |
| 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 - |
| Метод аутентификации, используемый для команд 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 - |
| Тип операции. | |
| username - | Имя пользователя, используемое для аутентификации. Требуется, когда type=remote_command и command_type в [ssh, telnet]. | ||
| pause_in_maintenance boolean |
| Нужно ли приостановить эскалацию во время периодов технического обслуживания. Может использоваться, когда 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