Сервис нотификаций позволяет настраивать оповещения по электронной почте или СМС любым получателям. В отличие от уведомлений в личном кабинете, это технические оповещения, которые приходят при срабатывании алертов на основе данных из Managed Kubernetes:
Метрик мониторинга. Например, уведомления о нехватке памяти в кластере или о высокой нагрузке на узлы.
Аудит-логов. Например, уведомления об удалении кластера или изменении его конфигурации.
Клиентских логов. Например, уведомления о критических ошибках в определенных компонентах или об ошибках в заданном пространстве имен.
С помощью сервиса нотификаций можно создавать шаблоны уведомлений, назначать получателей уведомлений и использовать шаблоны и списки получателей для разных типов алертов.
Настройка шаблонов уведомлений и выбор получателей для алертов Managed Kubernetes выполняется в личном кабинете в разделе Мониторинг → Нотификации.
Последовательность настройки нотификаций для всех типов алертов:
Создать и настроить шаблон уведомления.
Создать список получателей.
Создать правила для отправки уведомлений, используя метрики мониторинга, аудит-логи или клиентские логи.
При создании правил необходимо выбрать шаблон уведомления и список получателей.
Правила алертов и нотификаций для метрик мониторинга настраиваются в разделе Мониторинг → Алерты мониторинга.
Чтобы получать уведомления об алертах метрик мониторинга в Managed Kubernetes:
Создайте правило алерта и задайте запрос в формате PromQL, при выполнении которого сработает алерт:
Пример запроса
max(1 - avg(node_memory_MemAvailable_bytes{cluster_id=~".+"}) / avg(node_memory_MemTotal_bytes{cluster_id=~".+"}), 1 - avg(rate(node_cpu_seconds_total{cluster_id=~".+", mode="idle"}[5m])))
Укажите пороговое значение показателя. Например:
Важность — Высокая.
Оператор — >.
Пороговое значение — 0.85.
В примере алерт сработает, когда память или CPU будут загружены более, чем на 85%.
Для настройки запросов используйте системные метрики из справочника метрик Managed Kubernetes.
Создайте правило нотификации и задайте фильтр алертов.
Пример фильтра алертов
alarmName EQUAL <alert_name>
Где <alert_name> — название созданного правила алерта. При срабатывании этого правила будет отправлено уведомление.
Для настройки дополнительных фильтров в правилах нотификаций используйте запросы для поиска, сортировки или фильтрации алертов.
Правила алертов аудит-логов создаются в разделе Мониторинг → Аудит логирование → Правила алертов.
Чтобы получать уведомления об алертах аудит-логов в Managed Kubernetes, создайте правило алерта и задайте условия срабатывания:
Параметр — event_source.
Оператор — =.
Значение — Evolution Managed Kubernetes.
Чтобы отслеживать определенный тип события в Managed Kubernetes, например изменение конфигурации кластера, укажите дополнительное условие:
Параметр — event_type.
Оператор — LIKE.
Значение — EditCluster.
Для настройки условий используйте:
Правила алертов клиентских логов можно создать в разделе Мониторинг → Логирование → Правила алертов.
Чтобы получать уведомления об алертах клиентских логов в Managed Kubernetes, создайте правило алерта и задайте условие:
Пример условия
service_name="kube-apiserver" AND level="CRITICAL"
В примере правило срабатывает при появлении хотя бы одной записи уровня CRITICAL в логах для kube-apiserver кластера Managed Kubernetes.
Для настройки условий используйте язык фильтрующих выражений клиентских логов.