Развёртывание и настройка oVirt 4.0. Часть 13. Настройка службы оповещений

Заканчивая цикл заметок о развёртывании и базовой настройке свободно распространяемой системы виртуализации oVirt версии 4.0 хочу описать имеющуюся в составе oVirt возможность настройки оповещений об изменениях состояний компонент инфраструктуры виртуализации. Механизм оповещений oVirt может использоваться как базовое средство мониторинга среды виртуализации и может быть интегрирован в применяемые в организациях специализированные системы мониторинга. В моём случае такой системы мониторинга для сервисов на базе Linux-систем пока нет, и поэтому с помощью службы ovirt-engine-notifier я организую базовый мониторинг состояния компонент виртуализации oVirt. Эта служба позволяет настроить подписку на события, появляющиеся в логах oVirt Engine.

Включение и настройка службы оповещений

В конфигурации по умолчанию служба ovirt-engine-notifier выключена:

# systemctl status ovirt-engine-notifier

● ovirt-engine-notifier.service - oVirt Engine Notifier
  Loaded:loaded (/usr/lib/systemd/system/ovirt-engine-notifier.service;disabled;vendor preset:disabled)
  Active:inactive (dead)

Перед активацией этой службы необходимо настроить параметры её работы. Шаблонный файл конфигурации службы расположен здесь:
/usr/share/ovirt-engine/services/ovirt-engine-notifier/ovirt-engine-notifier.conf

Информацию о параметрах конфигурационного файла можно найти как в комментариях к этим параметрам в самом этом файле, так и в онлайн-документации: RHV 4.0 Administration Guide - 17.3. Parameters for Event Notifications in ovirt-engine-notifier.conf

Здесь я рассмотрю пример настройки оповещений через электронную почту. Если же требуется оповещение по протоколу SNMP, что также поддерживает служба ovirt-engine-notifier, можно воспользоваться онлайн-документом: RHV 4.0 Administration Guide -17.4. Configuring the Red Hat Virtualization Manager to Send SNMP Traps

Прямая корректировка конфигурационного файла ovirt-engine-notifier.conf не рекомендуется, так как этот файл является шаблонным и может быть в последующем перезаписан в процессе обновления службы на более новую версию. Чтобы изменить параметры конфигурации службы оповещений, можно создать копию шаблонного файла в каталоге /etc/ovirt-engine/notifier/notifier.conf.d/ и отредактировать эту копию под свои нужды. При этом правильней будет не создавать полную копии файла, а перенести лишь те параметры, которые мы собираемся изменять в отличии от конфигурации по умолчанию.

Посмотрим, что имеется по умолчанию в этом каталоге:

# ls -la /etc/ovirt-engine/notifier/notifier.conf.d/
...
-rw-r--r--. 1 root root   45 Jul 26 16:42 10-setup-jboss.conf
-rw-r--r--. 1 root root  231 Sep 20 11:00 README

Если заглянуть в файл README, то можно понять порядок обработки файлов в этом каталоге. Как я понял, файлы сортируются по имени и параметры последующего в порядке сортировки файла  файл являются более приоритетными. Соответственно, под наши настройки создадим файл, например, с именем 05-custom-service-settings.conf

# touch /etc/ovirt-engine/notifier/notifier.conf.d/05-custom-service-settings.conf

Наполним файл нашими настройками, которые мы хотим задать (остальные параметры будут использоваться из файла по умолчанию). Например, в моём случае указан лишь адрес SMTP-сервера и e-mail от имени которого будут посылаться оповещения (в моём случае это критично).

MAIL_SERVER="127.0.0.1"
MAIL_FROM="KOM-AD01-OVIRT1@holding.com"

Разумеется для того, чтобы в соответствии с заданными параметрами, наш сервер oVirt Hosted Engine был способен принимать на localhost электронную почту и отправлять её далее, в ОС должна быть произведена настройка почтовой службы, например, по аналогии с ранее описанной процедурой на Вики: Как настроить отсылку уведомлений на внешний почтовый сервер с помощью postfix в CentOS 

После того, как нужные нам параметры службы оповещений сконфигурированы, включим автоматический запуск службы при старте системы и запустим эту службу:

# systemctl enable ovirt-engine-notifier
# systemctl start ovirt-engine-notifier

Если никаких ошибок в созданном нами ранее файле настроек 05-custom-service-settings.conf не допущено, то служба должна запуститься успешно.

 

Настройка событий для службы оповещений

На веб-портале администрирования oVirt перейдём на закладку Users и выберем тип отображения User. Затем выберем пользователя, для которого хотим настроить отсылку уведомлений и в нижней части вкладок выберем Event Notifier. Здесь нам будет доступен перечень отслеживаемых для оповещений событий oVirt. Нажмём ссылку Manage Events для настройки перечня событий.  

В открывшейся форме выберем все события, при появлении которых мы хотим получать уведомления, а в поле Mail Recipient введём e-mail адрес, на который нужно будет отсылать уведомления. В моём случае в для этого используется  адрес группы рассылки, в которую входят все администраторы oVirt.

Если в последствии окажется, что какие-то из включённых оповещений не требуются, то мы просто вернёмся в этот раздел веб-портала и отключим реагирование на соответствующие типы оповещений.

Для дополнительной настройки оповещений можно использовать механизм фильтров, которые могут быть заданы в опциях типа FILTER в  созданном нами ранее файле конфигурации службы оповещений (05-custom-service-settings.conf). В упомянутом ранее шаблоном файле ovirt-engine-notifier.conf имеются примеры настройки опций типа FILTER. Также, возможно, для такой настройки окажется полезной информация о свойствах событий oVirt подлежащих аудиту, которые можно подсмотреть в файле /usr/share/doc/ovirt-engine/AuditLogMessages.properties

 

Проверка работы механизма оповещений

Проверить успешность работы механизма оповещений можно сымитировав какую-нибудь проблему, влекущую за собой регистрацию события, на которое мы ранее создали подписку для службы оповещений. Например возьмём и физически отключим какой-нибудь из хостов в кластере oVirt от локальной сети. Тут же мы должны получить от службы оповещений письмо о проблеме с доступностью хоста:

Через мгновение oVirt отреагирует на проблему и задействует механизмы Fencing, которые вызовут перезагрузку хоста. Об этом нас так же честно поставит в известность служба оповещений:

Затем вернём нашему подопытному хосту виртуализации сеть, после чего oVirt Engine снова обнаружит его доступность и с помощью службы оповещений радостно известит нас об этом:

Как видим, настроенный нами механизм оповещений через электронную почту успешно работает. И это хорошо.

Дополнительные источники информации:

Всего комментариев: 8 Комментировать

  1. AlektroNik /

    Спасибо.
    "параметры последующего в порядке сортировки файла файл являются более приоритетными"
    Помоему по этой логике цифра в файле должна быть больше стандартного шаблона, чтобы принудительно переорределить параметры. Например, 20-custom-service-settings.conf
    Разве не так?

    1. Алексей Максимов / Автор записи

      Всё верно. Я намеренно задаю своим настройкам более низкий приоритет, чтобы свести к минимуму возможность разночтений между заданными мной параметрами и рекомендованными разработчиками oVirt (в перспективе). Разумеется, Вы можете поступать обратным образом. Тут вопрос персональный.

      1. AlektroNik /

        Понятно.
        Тогда получается изначально в шаблоне эти строчки отсутствую совсем или параметры есть, но после равно пусто. Я правильно понимаю?
        Есть вероятность в таком случае, что при обновлении шаблона разрабы в качестве примера могут вписать свои значения и наши потеряют свою силу. Что Вы думаете по этому поводу?

        1. Алексей Максимов / Автор записи

          Параметры есть, но значения их не определены. О вариациях будущего сказать ничего не могу.

          1. AlektroNik /

            Спасибо.

  2. Niko /

    Как перенаправить логи engine.log в graylog к примеру

  3. filas18 /

    Хотелось бы иметь в начале ссылки на предыдущие статьи по теме, для удобства. Спасибо.

Добавить комментарий