3.4. Архитектура мониторинга #

Чтобы обеспечить функции мониторинга в контексте работы с метриками и журналами (далее — телеметрия), PPEM использует коллектор pgpro-otel-collector от Postgres Pro.

Работу с телеметрией можно организовать двумя способами:

  • Базы данных репозитория используются для хранения телеметрии: метрики хранятся в отдельной схеме monitoring, журналы — в схеме logs.

  • Внешние хранилище данных (по отношению к PPEM) можно использовать для хранения телеметрии.

В обоих случаях обязательным компонентом является коллектор pgpro-otel-collector. Коллектор обеспечивает сбор статистики и журналов, генерацию данных телеметрии и, в зависимости от выбранного режима, экспорт данных менеджеру или во внешнюю систему хранения.

Примечание

Не рекомендуется использовать внутреннее хранилище в производственной среде, так как оно обладает ограниченной масштабируемостью и может вызвать проблемы с производительностью при росте объёмов данных. Запись и чтение больших объёмов телеметрии может негативно влиять на общую производительность PPEM при обращении к базе данных репозитория.

3.4.1. Внутреннее хранилище #

Пример архитектуры мониторинга при использовании внутреннего хранилища представлен на схеме ниже.

Рисунок 3.3. Мониторинг при использовании внутреннего хранилища


Где:

  • Пользователи работают с PPEM через веб-приложение в браузере, где просматривают графики по метрикам и журналам.

  • В PPEM хранилищем метрик и журналов является репозиторий. Менеджер получает метрики и журналы от коллектора и сохраняет их в базах данных репозитория, а также запрашивает метрики и журналы из баз данных репозитория и отдаёт их потребителю через REST API. Веб-приложение запрашивает у менеджера метрики и журналы, а затем визуализирует полученные данные.

  • В операционной системе коллектор pgpro-otel-collector подключается к экземпляру СУБД для получения метрик, читает файлы журналов СУБД, обрабатывает полученные данные и через REST API отправляет менеджеру. Агент является отдельным компонентом, выполняет управляющие функции и не занимается сбором метрик и журналов.

3.4.2. Внешнее хранилище #

Пример архитектуры мониторинга при использовании внешнего хранилища представлен на схеме ниже.

Рисунок 3.4. Мониторинг при использовании внешнего хранилища


Где:

  • Пользователи работают с PPEM через веб-приложение в браузере, где просматривают графики по метрикам и журналам.

  • В PPEM менеджер запрашивает метрики и журналы из внешних хранилищ и отдаёт их потребителю через REST API. Веб-приложение запрашивает у менеджера метрики и журналы, а затем визуализирует полученные данные.

  • В операционной системе коллектор pgpro-otel-collectorподключается к экземпляру СУБД для получения метрик, читает файлы журналов СУБД, обрабатывает полученные данные и через REST API отправляет во внешние хранилища. Агент является отдельным компонентом, выполняет управляющие функции и не занимается сбором метрик и журналов.

  • Внешние хранилища метрик и журналов:

    • В качестве хранилища метрик может выступать выделенная система мониторинга. Поддерживаются Prometheus, Victoriametrics и OTLP-совместимые хранилища.

    • В качестве хранилища журналов может выступать отдельная система с OTLP-совместимым хранилищем. Поддерживается Elasticsearch.