В клиентском кластере (локальный алертинг)

В платформе “Штурвал” для клиентских кластеров по умолчанию реализован централизованный алертинг с размещением метрик и правил оповещения в кластере управления. При использовании централизованного алертинга доступна настройка правил оповещения из интерфейса кластера.

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

  1. Подготовьте ShturvalServicePatch для применения к спецификации (ssc) Компонента управления модуля мониторинга (shturval-metrics-collector), где включите локальную базу данных хранения метрик vmsingle и необходимые компоненты, как приведено в примере, используя ваши значения параметров.
Пример ShturvalServicePatch
apiVersion: ops.shturval.tech/v1beta2
kind: ShturvalServicePatch
metadata:
  name: <имя ресурса>
spec:
  shturvalServiceConfigName: shturval-metrics-collector
  customvalues:
    alertmanager:
      enabled: true
    defaultRules:
      create: true
    vmagent:
      additionalRemoteWrites:
        - url: <ваше значение параметра>
    vmalert:
      enabled: true
    vmsingle:
      enabled: true
Параметр Описание Тип данных Пример
metadata.name Имя создаваемого PatchSSC string metrics-collector-vmsingle
additionalRemoteWrites.url URL-адрес Victoria Metrics Insert, указанный в спецификации до изменений string https://vminsert.clustername.ip-10-11-12-13.shturval.link/insert/2452490585/prometheus/

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

  1. В кластере загрузите с помощью импорта манифестов подготовленный ShturvalServicePatch.
Скриншот

metrics_alertspatch

После загрузки ShturvalServicePatch потребуется время для применения изменений.

В результате:

  • метрики будут направлены в локальную VM Single базу и (если централизованное хранение доступно), то дополнительно в кластер управления;
  • в клиентском кластере добавлены кастомные ресурсы API-группы “operator.victoriametrics.com”: VMAlertmanager, VMAlert, VMSingle и системные правила VMRule.
  • возможно настроить конфигурацию локального алертинга.

Обратите внимание!

  • В графическом интерфейсе из раздела Оповещения вы можете настроить только централизованный алертинг.
  • Конфигурация локального алертинга должна быть настроена в ssc (спецификации) shturval-metrics-collector.
  • При необходимости создания нового правила для локального алертинга, необходимо добавить правило в клиентский кластер с помощью импорта манифеста объекта VMRule.
  1. Чтобы настроить маршруты, получателей, блокировку оповещений, подготовьте ShturvalServicePatch для применения к спецификации (ssc) Компонента управления модуля мониторинга (shturval-metrics-collector), где задайте требуемую конфигурацию в alertmanager.
Пример конфигурации в ShturvalServicePatch, где получатель webhook
apiVersion: ops.shturval.tech/v1beta2
kind: ShturvalServicePatch
metadata:
  name: <имя ресурса>
spec:
  shturvalServiceConfigName: shturval-metrics-collector
  customvalues:
    alertmanager:
      enabled: true
      config:
        receivers:
          - name: blackhole # Получатель по умолчанию. Должен быть обязательно указан
          - name: <ваше значение параметра>
            webhook_configs:
              - max_alerts: <ваше значение параметра>
                send_resolved: false
                url: <ваше значение параметра>
        route:
          routes:
            - matchers:
              - <ваше значение параметра>
              receiver: <ваше значение параметра>
Параметр Описание Тип данных Пример
metadata.name Имя создаваемого PatchSSC string metrics-collector-config
receivers.name Имя получателя оповещений string example-webhook
receivers.webhook_configs.max_alerts Максимальное количество оповещений, включаемых в одно сообщение webhook. Оповещения, превышающие это значение, обрезаются. По умолчанию 0 (не ограничивается количество, будут включены все оповещения в сообщение) int 5
receivers.webhook_configs.url URL-адрес: эндпоинт для отправки HTTP-запросов на адрес webhook string http://example-webhook.svc/webhook
route.routes.matchers Список лейблов получателя, куда будут маршрутизироваться оповещения string app = “example-webhook”
route.routes.receivers Значение имени получателя оповещений string example-webhook
  1. В кластере загрузите с помощью импорта манифестов подготовленный ShturvalServicePatch.
Скриншот

metrics_configpatch

  1. Выполните проверку настройки локального алертинга и при необходимости проверьте его работу, например, с помощью webhook.
×