community.general.rax_mon_alarm – Создание или удаление оповещения Rackspace Cloud Monitoring.
Примечание
Этот плагин является частью коллекции community.general (версия 2.0.1).
Для его установки используйте: ansible-galaxy collection install community.general.
Для использования в книге задач укажите: community.general.rax_mon_alarm.
Обзор
- Создать или удалить оповещение Rackspace Cloud Monitoring, которое связывает существующий rax_mon_entity, rax_mon_check и rax_mon_notification_plan с критериями, определяющими условия, которые будут запускать уровни оповещений. Поток модуля мониторинга Rackspace | rax_mon_entity -> rax_mon_check -> rax_mon_notification -> rax_mon_notification_plan -> rax_mon_alarm
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- python >= 2.6
- pyrax
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| api_key строка | Ключ API Rackspace, переопределяет credentials. псевдонимы: password | |
| auth_endpoint строка | URI службы аутентификации. Если не указано, будет установлено значение https://identity.api.rackspacecloud.com/v2.0/
| |
| check_id строка / обязательно | Идентификатор проверки, на которую должно выполняться оповещение. Может быть получен путем регистрации значения задачи rax_mon_check. | |
| credentials путь | Файл, в котором хранятся учетные данные Rackspace. Игнорируется, если заданы api_key и username. псевдонимы: creds_file | |
| criteria строка | Язык DSL для оповещений, описывающий условия срабатывания оповещений и их выходные состояния. Длина должна составлять от 1 до 16384 символов. См. http://docs.rackspace.com/cm/api/v1.0/cm-devguide/content/alerts-language.html для справки по языку оповещений. | |
| disabled логическое значение |
| Если да, то это оповещение создается, но остается в неактивном состоянии. По умолчанию нет. |
| entity_id строка / обязательно | Идентификатор сущности, к которой прикреплено это оповещение. Может быть получен путем регистрации значения задачи rax_mon_entity. | |
| env строка | Среда, как настроено в ~/.pyrax.cfg, см. https://github.com/rackspace/pyrax/blob/master/docs/getting_started.md#pyrax-configuration. | |
| identity_type строка | По умолчанию: "rackspace" | Механизм аутентификации для использования, например, rackspace или keystone. |
| label строка / обязательно | Наименование оповещения, используемое для достижения идемпотентности. Должно быть строкой длиной от 1 до 255 символов. | |
| metadata словарь | Произвольные пары «ключ-значение» для сопровождения оповещения. Должны быть хэшем строковых ключей и значений длиной от 1 до 255 символов. | |
| notification_plan_id строка / обязательно | Идентификатор плана оповещений, который будет запущен при срабатывании оповещения. Может быть получен путем регистрации значения задачи rax_mon_notification_plan. | |
| region строка | Регион для создания экземпляра. | |
| state строка |
| Обеспечить существование оповещения с этим label или его отсутствие. |
| tenant_id строка | Идентификатор клиента, используемый для аутентификации. | |
| tenant_name строка | Имя клиента, используемое для аутентификации. | |
| username строка | Имя пользователя Rackspace, переопределяет credentials. | |
| validate_certs логическое значение |
| Требовать проверку SSL API-точек доступа. псевдонимы: verify_ssl |
Примечания
Примечание
- Можно использовать следующие переменные среды:
RAX_USERNAME,RAX_API_KEY,RAX_CREDS_FILE,RAX_CREDENTIALS,RAX_REGION. -
RAX_CREDENTIALSиRAX_CREDS_FILEуказывают на файл учетных данных, подходящий для pyrax. См. https://github.com/rackspace/pyrax/blob/master/docs/getting_started.md#authenticating -
RAX_USERNAMEиRAX_API_KEYисключают использование файла учетных данных. -
RAX_REGIONопределяет регион Rackspace Public Cloud (DFW, ORD, LON, …)
Примеры
- name: Alarm example
gather_facts: False
hosts: local
connection: local
tasks:
- name: Ensure that a specific alarm exists.
community.general.rax_mon_alarm:
credentials: ~/.rax_pub
state: present
label: uhoh
entity_id: "{{ the_entity['entity']['id'] }}"
check_id: "{{ the_check['check']['id'] }}"
notification_plan_id: "{{ defcon1['notification_plan']['id'] }}"
criteria: >
if (rate(metric['average']) > 10) {
return new AlarmStatus(WARNING);
}
return new AlarmStatus(OK);
register: the_alarm
Авторы
- Эш Вилсон (@smashwilson)
© 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/general/rax_mon_alarm_module.html