Обновлено 2026-10-08
Как настроить SMTP в Grafana для писем с алертами
Чтобы Grafana отправляла алерты на почту, включите секцию [smtp] в grafana.ini: host = smtp.bulko.io:587, логин и пароль Bulko SMTP, from_address на вашем домене и startTLS_policy = MandatoryStartTLS, затем перезапустите Grafana. В Docker те же значения задаются переменными GF_SMTP_*, например GF_SMTP_HOST.
Что указать в Grafana
| Поле | Значение |
|---|---|
| enabled / GF_SMTP_ENABLED | true |
| host / GF_SMTP_HOST | smtp.bulko.io:587 (хост и порт в одном значении) |
| user / GF_SMTP_USER | Логин Bulko SMTP (smtp_xxxxxxxxxxxxxxxx) |
| password / GF_SMTP_PASSWORD | Пароль Bulko SMTP |
| from_address / GF_SMTP_FROM_ADDRESS | [email protected] (ваш домен) |
| from_name / GF_SMTP_FROM_NAME | Grafana (или любое имя) |
| startTLS_policy / GF_SMTP_STARTTLS_POLICY | MandatoryStartTLS для 587 или 2525 |
| skip_verify / GF_SMTP_SKIP_VERIFY | false |
Настройка по шагам
- Купите пакет на странице Bulko SMTP Relay и скопируйте логин и пароль из Dashboard -> SMTP Access.
- Откройте конфиг Grafana:
/etc/grafana/grafana.iniпри установке из пакета илиcustom.iniв каталогеconfпри установке из архива. - Найдите секцию
[smtp], уберите;в начале нужных строк и впишите значения из примера ниже. Обратите внимание: вhostуказывается и порт,smtp.bulko.io:587. - Для портов 587 и 2525 задайте
startTLS_policy = MandatoryStartTLS. С портом 465 (host = smtp.bulko.io:465) Grafana сама использует неявный TLS. - Если в пароле есть
#или;, заключите его в тройные кавычки, иначе Grafana посчитает остаток строки комментарием. - В Docker или Kubernetes файл можно не трогать и передать переменные
GF_SMTP_*(имя секции и ключа в верхнем регистре через подчёркивание). - Перезапустите Grafana (
systemctl restart grafana-serverили перезапуск контейнера).
grafana.ini (секция [smtp])
[smtp]
enabled = true
host = smtp.bulko.io:587
user = smtp_xxxxxxxxxxxxxxxx
# тройные кавычки нужны, если в пароле есть # или ;
password = """YOUR_BULKO_SMTP_PASSWORD"""
from_address = [email protected]
from_name = Grafana
startTLS_policy = MandatoryStartTLS
skip_verify = false
# То же самое для Docker / Kubernetes:
# GF_SMTP_ENABLED=true
# GF_SMTP_HOST=smtp.bulko.io:587
# GF_SMTP_USER=smtp_xxxxxxxxxxxxxxxx
# GF_SMTP_PASSWORD=YOUR_BULKO_SMTP_PASSWORD
# [email protected]
# GF_SMTP_FROM_NAME=Grafana
# GF_SMTP_STARTTLS_POLICY=MandatoryStartTLS
Проверка
В Grafana откройте Alerting -> Contact points, создайте или отредактируйте точку контакта с интеграцией Email, укажите свой адрес и нажмите Test. Тестовое уведомление должно прийти в течение минуты.
При ошибке Grafana покажет ответ SMTP прямо в интерфейсе, а полный текст будет в логе сервера (/var/log/grafana/grafana.log или docker logs). Приглашения и сброс пароля используют те же настройки SMTP.
Ошибки и решения
| Проблема | Решение |
|---|---|
| SMTP not configured, check your grafana.ini config file's [smtp] section | Параметр enabled остался false или закомментирован, либо Grafana не перезапущена. Уберите ; в начале строки, поставьте enabled = true и перезапустите сервис. |
| dial tcp ... i/o timeout | Сервер не может достучаться до порта, облачные хостинги часто блокируют исходящий SMTP. Укажите host = smtp.bulko.io:2525 с MandatoryStartTLS или попросите провайдера открыть 587. |
| tls: first record does not look like a TLS handshake | Не совпадают режим TLS и порт. Для 587 и 2525 нужен STARTTLS, порт 465 только для неявного TLS. |
| 535 Authentication failed | Неверный логин или пароль, либо пароль обрезался на символе # или ; (заключите его в тройные кавычки). Скопируйте данные заново из Dashboard -> SMTP Access. Подробнее: https://bulko.io/ru/smtp-errors/535/. |
| 554 5.7.1 rejected | Письмо отклонил контент-фильтр Bulko. Для алертов это редкость: проверьте, что from_address на вашем домене, а в шаблоне нет подозрительных ссылок. |
| Алерты попадают в спам | Используйте from_address на своём домене, подтвердите домен в Bulko для выравнивания DKIM и проверьте SPF: https://bulko.io/ru/validators/spf-checker/. |
Частые вопросы
Можно ли настроить SMTP в Grafana через веб-интерфейс?
Нет. SMTP-сервер задаётся только в grafana.ini (или custom.ini) либо переменными GF_SMTP_*. В интерфейсе настраиваются точки контакта, которые этот сервер используют.
Какая переменная окружения отвечает за SMTP-хост Grafana?
GF_SMTP_HOST, например GF_SMTP_HOST=smtp.bulko.io:587. Все ключи строятся по схеме GF_<СЕКЦИЯ>_<КЛЮЧ>, поэтому startTLS_policy превращается в GF_SMTP_STARTTLS_POLICY.
Подходит ли это для Grafana Cloud?
Инструкция рассчитана на self-hosted Grafana (OSS или Enterprise), где у вас есть доступ к grafana.ini. В Grafana Cloud доставкой почты занимается сам сервис.
Сколько писем с алертами можно отправить?
По умолчанию 2 000 писем в сутки на один SMTP-аккаунт, лимит можно поднять через [email protected]. Группируйте алерты в notification policies, чтобы не устраивать лавину писем.
Сколько это стоит?
Пакеты Bulko SMTP оплачиваются один раз: $5 за 5 000 писем, $15 за 20 000, $30 за 50 000 или $60 за 150 000. Неиспользованные письма не сгорают, что удобно при небольшом потоке алертов.
Какой порт выбрать для Grafana?
Обычно 587 с startTLS_policy = MandatoryStartTLS. Для неявного TLS подойдёт 465, а если сеть закрывает стандартные порты, 2525.
Получить SMTP-доступ для Grafana
Разовая оплата картой или криптой, без подписки. Неиспользованные письма не сгорают. Лимит 2 000 писем в сутки на один доступ.
Что можно отправлять: правила использования.