community.general.rax_mon_alarm – Создание или удаление сигнализации Rackspace Cloud Monitoring.
Примечание
Этот плагин входит в состав коллекции community.general (версия 1.3.2).
Для его установки используйте: 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 строка / обязательно | 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 строка / обязательно | 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 строка / обязательно | ID плана уведомлений, который будет срабатывать при срабатывании этой сигнализации. Может быть получен путем регистрации значения задачи rax_mon_notification_plan. | |
| region строка | Регион для создания экземпляра. | |
| state строка |
| Убедиться, что сигнализация с этим label существует или не существует. |
| tenant_id строка | 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–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/general/rax_mon_alarm_module.html