nagios - Выполнение общих задач в Nagios, связанных с простоями и уведомлениями.
Обзор
- Модуль
nagiosимеет две основные функции: планирование простоя и переключение уведомлений для служб или хостов. - Для всех действий необходимо явно указать параметр host. В плейбуках можно использовать переменную
{{inventory_hostname}}, чтобы обратиться к хосту, на котором в данный момент выполняется плейбук. - Вы можете указать несколько служб сразу, разделяя их запятыми, например,
services=httpd,nfs,puppet. - При указании службы для обработки существует специальное значение службы host, которое будет обрабатывать уведомления/простои для самого хоста, например,
service=host. Это ключевое слово не может использоваться вместе с другими службами. Установка уведомлений/простоев для хоста не влияет на уведомления/простои для любых служб, работающих на нём. Чтобы запланировать простой для всех служб на конкретном хосте, используйте ключевое слово «all», например,service=all. - При использовании модуля
nagiosнеобходимо указать свой сервер Nagios с помощью параметраdelegate_to.
Параметры
| параметр | обязательно | значение по умолчанию | выбор | комментарии |
|---|---|---|---|---|
| action | да |
| Действие, которое необходимо выполнить. Параметры servicegroup добавлены в версии 2.0. Параметры delete_downtime добавлены в версии 2.2. | |
| author | нет | Ansible | Автор, который оставит комментарии к простою. Используется только с действием downtime. | |
| cmdfile | нет | автоматически определено | Путь к файлу команд Nagios (FIFO-пайп). Требуется только в случае сбоя автоматического определения. | |
| command | да | Необработанная команда для отправки в nagios, которая не должна включать заголовок времени отправки или символ перевода строки. Обязательно при использовании действия command. | ||
| comment (добавлено в 2.0)
| нет | Планирование простоя | Комментарий для действия downtime. | |
| host | нет | Хост, с которым нужно взаимодействовать в Nagios. | ||
| minutes | нет | 30 | Минуты, на которые необходимо запланировать простой. Используется только с действием downtime. | |
| servicegroup (добавлено в 2.0)
| нет | Группа служб, для которой мы хотим установить простои/уведомления. Обязательно при использовании действий servicegroup_service_downtime и servicegroup_host_downtime. | ||
| services | да | Для чего управлять простоем/уведомлениями. Разделяйте несколько служб запятыми. service — псевдоним для services. Обязательно при использовании действий downtime, enable_alerts, и disable_alerts.псевдонимы: service |
Примеры
# set 30 minutes of apache downtime
- nagios:
action: downtime
minutes: 30
service: httpd
host: '{{ inventory_hostname }}'
# schedule an hour of HOST downtime
- nagios:
action: downtime
minutes: 60
service: host
host: '{{ inventory_hostname }}'
# schedule an hour of HOST downtime, with a comment describing the reason
- nagios:
action: downtime
minutes: 60
service: host
host: '{{ inventory_hostname }}'
comment: Rebuilding machine
# schedule downtime for ALL services on HOST
- nagios:
action: downtime
minutes: 45
service: all
host: '{{ inventory_hostname }}'
# schedule downtime for a few services
- nagios:
action: downtime
services: frob,foobar,qeuz
host: '{{ inventory_hostname }}'
# set 30 minutes downtime for all services in servicegroup foo
- nagios:
action: servicegroup_service_downtime
minutes: 30
servicegroup: foo
host: '{{ inventory_hostname }}'
# set 30 minutes downtime for all host in servicegroup foo
- nagios:
action: servicegroup_host_downtime
minutes: 30
servicegroup: foo
host: '{{ inventory_hostname }}'
# delete all downtime for a given host
- nagios:
action: delete_downtime
host: '{{ inventory_hostname }}'
service: all
# delete all downtime for HOST with a particular comment
- nagios:
action: delete_downtime
host: '{{ inventory_hostname }}'
service: host
comment: Planned maintenance
# enable SMART disk alerts
- nagios:
action: enable_alerts
service: smart
host: '{{ inventory_hostname }}'
# "two services at once: disable httpd and nfs alerts"
- nagios:
action: disable_alerts
service: httpd,nfs
host: '{{ inventory_hostname }}'
# disable HOST alerts
- nagios:
action: disable_alerts
service: host
host: '{{ inventory_hostname }}'
# silence ALL alerts
- nagios:
action: silence
host: '{{ inventory_hostname }}'
# unsilence all alerts
- nagios:
action: unsilence
host: '{{ inventory_hostname }}'
# SHUT UP NAGIOS
- nagios:
action: silence_nagios
# ANNOY ME NAGIOS
- nagios:
action: unsilence_nagios
# command something
- nagios:
action: command
command: DISABLE_FAILURE_PREDICTION
Статус
Этот модуль помечен как предварительный, что означает, что его интерфейс не гарантируется как обратный.
Для получения помощи в разработке модулей, если вы заинтересованы, пожалуйста, прочитайте Информация о сообществе и участие в разработке, Тестирование Ansible и Разработка модулей.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/nagios_module.html