Пример конфигурации email уведомлений о событиях¶
Все описанные шаги производятся в ОС HOSTVM Manager
В данном примере конфигурации используется почтовый сервис smtp.gmail.com
Подготовка HOSTVM Manager для отправки оповещений¶
Добавление сервиса smtp в исключения firewall:
Установка зависимостей для SASL аутентификации:
Настройка Postfix¶
Отредактируйте файл /etc/postfix/main.cf
myhostname = engine455.test
myorigin = $myhostname
relayhost = [smtp.gmail.com]:587
smtp_tls_security_level = may
smtp_tls_loglevel = 1
meta_directory = /etc/postfix
shlib_directory = /usr/lib64/postfix
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_sasl_mechanism_filter = plain,login
sender_canonical_maps = hash:/etc/postfix/sender_canonical
Создайте файл /etc/postfix/sasl_passwd со следующим содержимым:
где HOSTVM.example@gmail.com - email адрес с которого будут приходить уведомления;
passwdexample - пароль приложения google.
По умолчанию письма будут приходить от root@engine455.test. Для того, чтобы переписать отправителя на gmail адрес cоздайте файл /etc/postfix/sender_canonical со следующим содержимым:
Измените права доступа на файл sasl_passwd:
Создайте индексированные файлы для postfix:
Проверьте корректность конфигурации, после чего запустите сервис postfix:
postfix check
systemctl enable postfix
systemctl restart postfix
systemctl status postfix
postconf -n | egrep -i 'relayhost|sasl|tls|canonical|origin|hostname'
Отправка тестового сообщения:
Настройка ovirt-engine-notifier¶
Скопируйте файл ovirt-engine-notifier.conf в директорию /etc/ovirt-engine/notifier/notifier.conf.d и переименуйте в 90-email-notify.conf:
# cp /usr/share/ovirt-engine/services/ovirt-engine-notifier/ovirt-engine-notifier.conf /etc/ovirt-engine/notifier/notifier.conf.d/90-email-notify.conf
Отредактируйте файл 90-email-notify.conf:
В файле можно указать получателей, без добавления в БД
Для этого пропишите:
FILTER="include:(smtp:ops@example.com) include_:_(smtp:oncall@example.com) ${FILTER}"
Конструкция include:*(smtp:email-адрес) — подписывает email-адрес на все события. Можно перечислить несколько таких include подряд — по одному на адрес.
Перезагрузите сервисы:
systemctl daemon-reload
systemctl enable ovirt-engine-notifier.service
systemctl restart ovirt-engine-notifier.service
Создание тестового пользователя для проверки конфигурации:
ovirt-aaa-jdbc-tool user add test-user
ovirt-aaa-jdbc-tool user edit test-user --attribute=email=your.mail@gmail.com
ovirt-aaa-jdbc-tool user password-reset test-user --password-valid-to="2026-08-01 12:00:00-0800"
ovirt-aaa-jdbc-tool user show test-user
На портале администрирования добавьте пользователя test-user:
Administration -> Users -> Add -> добавьте пользователя.
Подпишите пользователя test-user на необходимые события:
- Выберите пользователя, нажмите на User Name, чтобы перейти на подробную страницу о пользователе.
- На вкладке Event Notifier, нажмите Manage Events
- Выберите интересующие события.
- В поле Mail Recipient введите адрес почты пользователя.
- Нажмите "Ок".
Для проверки работоспособности уведомлений необходимо вызвать событие или события, на которые подписан пользователь, например, выключить хост виртуалзиации.