Перейти к основному содержимому
Версия: Next

Мониторинг системы

В рамках поставки системы в среду дополнительно устанавливаются средства мониторинга платформы и её компонентов. Для реализации мониторинга используются такие компоненты как:

  • Prometheus - для хранения и сбора метрик
  • Grafana - для просмотра собранных метрик

Эти компоненты позволяют производить мониторинг компонентов системы и потребление ресурсов в установленной среде.

По умолчанию система поставляется со следующим набором дашбордов:

  • Healthcheck - Отображает доступность сервисов входящих в ADCP, с помощью которого возможно оценить доступности платформы и её элементов.
  • Kubernetes / Compute Resources / Cluster - отображает текущую загруженность всего K8S кластера в части RAM, CPU, Сети в разрезе неймспейсов K8S
  • Kubernetes / Compute Resources / Namespace (Pods) - отображает текущую загруженность всего K8S кластера в части RAM, CPU, Сети в разрезе каждого пода неймспейса кластера
  • Kubernetes / Compute Resources / Namespace (Workloads) - отображает текущую загруженность всех типов сущности кластера в части RAM, CPU, Сети в разрезе каждого пода неймспейса кластера
  • Kubernetes / Compute Resources / Node (Pods) - отображает текущую загруженность ноды кластера (сервера) с разбивкой на контейнеры
  • Kubernetes / Compute Resources / Pod - отображает потребление ресурсов каждым подом кластера в неймспейсе
  • Kubernetes / Networking / Cluster - Отображает текущую нагрузку на сеть всего K8S кластера в разрезе неймспейсов K8S
  • Kubernetes / Networking / Namespace (Pods) - Отображает текущую нагрузку на сеть всего K8S кластера в разрезе каждого пода неймспейса кластера
  • Kubernetes / Networking / Namespace (Workload) - Отображает текущую нагрузку на сеть всего K8S кластера в разрезе каждого пода неймспейса кластера
  • Kubernetes / Networking / Pod - Отображает текущую нагрузку на сеть каждым подом кластера в неймспейсе
  • Kubernetes / Views / Nodes - Отображает текущую загрузку каждой ноды кластера K8S
  • Easy RabbitMQ (K8S) - отображает основную информацию о брокере RabbitMQ - такие, как количество очередей, каналов, сообщений в очередях

Далее будут описаны ключевые данные по дашбордам

note

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

Healthcheck​

Дашборд предназначен для проверки доступности и готовности работы основных компонентов системы. Дашборд собирает следующие метрики для ключевых сервисов.

Всего собирается 2 расчетных метрики:

Readiness метрики - это метрики показывающие, что конкретный сервис готов или не готов к своей штатной работе.

Liveness метрики - это метрики показывающие доступность сервиса как такового.

note

Пример: У сервиса Blockchain Data Updater по какой-то причине метрика Readiness красная (=0), a Liveness зеленая (=1). Это означает что сейчас сервису по какой-то причине не доступен или Blockchain или MongoDB, в то время как сам сервис доступен. В этом случае необходимо сверить какие сервисы еще имеют красный статус Readiness и вычислить какой из вспомогательных сервисов недоступен.

Метрики Readiness формируются исходя из доступности сервисов необходимых для нормальной работы отслеживаемого сервиса.

В рамках дашборда собираются метрики доступности и готовности по следующим сервисам:

Наименование сервисаНаименование в дашбордеПроверяемые узлы (Readiness)Проверяемые узлы (Liveness)
Blockchain Data Updater (Запросы на данные)backend--bc-updater..svc:9047BlockChain, MongoDBBlockchain Data Updater
Blockchain Data Updater (Минимальные атрибуты матчинга)backend--bc-updater..svc:9048BlockChain, MongoDBBlockchain Data Updater
Blockchain Data Updater (Проекты)backend--bc-updater..svc:9049BlockChain, MongoDBBlockchain Data Updater
Blockchain Data Updater (Скрипты)backend--bc-updater..svc:9050BlockChain, MongoDBBlockchain Data Updater
Schedulerbackend--job-scheduler..svc:9047MongoDBScheduler
CleanRoom Status Watcherbackend--status-watcher..svc:9048RabbitMQ, MongoDBCleanRoom Status Watcher, RabbitMQ
Backend API Serverbackend-..svc:9047Backend API Server, RabbitMQ, BlockChain, MongoDBBackend API Server, RabbitMQ
Dataset Logs Syncerdataservice--dataset-logs..svc:9047Dataset Logs Syncer, BlockChain, MongoDBDataset Logs Syncer
Dataset Syncerdataservice--dataset-syncer..svc:9047Dataset Syncer, BlockChain, MongoDBDataset Syncer
Glossary Syncerdataservice--glossary..svc:9048Glossary Syncer, BlockChain, MongoDBGlossary Syncer
Glossary Updaterdataservice--glossary..svc:9049BlockChain, RabbitMQGlossary Updater, BlockChain
Glossary Term Syncerdataservice--glossary..svc:9050Glossary Term Syncer, BlockChain, MongoDBGlossary Term Syncer
Glossary Term Updaterdataservice--glossary..svc:9051BlockChain, RabbitMQGlossary Term Updater, BlockChain
Instance Syncerdataservice--instance-syncer..svc:9047RabbitMQ, MongoDBInstance Syncer, RabbitMQ
Dataservice APIdataservice-..svc:9047MongoDB, Dataservice APIDataservice API
Aggregion OIDC provideroidcprovider-..svc:9047Backend API Server, redisAggregion OIDC provider

Kubernetes / Compute Resources / Cluster​

Дашборд предназначен для мониторинга потребления ресурсов всего кластером, в котором установлена платформа. С помощью этого дашборда вы можете отслеживать такие метрики как:

  • Общая загрузка CPU вашего кластера
  • Общая загрузку CPU вашего кластера в разрезе неймспейса
  • Общее использование оперативной памяти вашего кластера
  • Общее использование оперативной памяти вашего кластера в разрезе неймспейса
  • Общую сетевую нагрузку на кластер в разрезе неймспейса
    • По используемой пропускной способности на получение и отдачу в разрезе ширины канала
    • По используемой пропускной способности на получение и отдачу в разрезе переданных пакетов

Описанные метрики помогут вам контролировать ключевые метрики всего кластера приложения целиком

Kubernetes / Compute Resources / Namespace (Pods)​

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

  • Общая загрузка CPU генерируемая неймспейсом в вашем кластере
  • Общую загрузку CPU генерируемая неймспейсом в вашем кластере в разрезе подов
  • Общее использование оперативной памяти генерируемая неймспейсом в вашем кластере
  • Общее использование оперативной памяти неймспейсом в вашем кластере в разрезе подов
  • Общую сетевую нагрузку неймспейсом в вашем кластере в разрезе подов
    • По используемой пропускной способности на получение и отдачу в разрезе ширины канала
    • По используемой пропускной способности на получение и отдачу в разрезе переданных пакетов

Описанные метрики помогут вам контролировать ключевые метрики всего кластера приложения целиком

Kubernetes / Compute Resources / Namespace (Workloads)​

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

  • Общая загрузка CPU генерируемая неймспейсом в вашем кластере
  • Общая загрузку CPU генерируемая неймспейсом в вашем кластере в разрезе подов
  • Общее использование оперативной генерируемая неймспейсом в вашем кластере
  • Общее использование оперативной неймспейсом в вашем кластере в разрезе подов
  • Общую сетевую нагрузку неймспейсом в вашем кластере в разрезе подов
    • По используемой пропускной способности на получение и отдачу в разрезе ширины канала
    • По используемой пропускной способности на получение и отдачу в разрезе переданных пакетов

В отличие от дашборда Kubernetes / Compute Resources / Namespace (Pods) позволяет оценить метрики в разрезе таких сущностей как:

Kubernetes / Compute Resources / Node (Pods)​

Дашборд предназначен для мониторинга подов кластера в разрезе ноды кластера. С помощью дашборда возможно отследить:

  • Нагрузку на CPU ноды генерируемую подом
  • Потребление оперативной памяти ноды генерируемую подом

Kubernetes / Compute Resources / Pod​

Дашборд предназначен для мониторинга потребления ресурсов контейнерами пода. Дашборд позволяет мониторить следующие показатели контейнеров:

  • Потребление CPU
  • Потребление оперативной памяти
  • Сетевую нагрузку создаваемую контейнером
  • Нагрузку на диск создаваемую контейнером

Kubernetes / Networking / Cluster​

Дашборд предназначен для детального мониторинга потребления сетевых ресурсов неймспейсами кластера. Дашборд позволяет увидеть:

  • Текущее использование сети для входящего и исходящего трафика неймспейса
  • Среднее использование сети для входящего и исходящего трафика неймспейса
  • Исторические данные по использованию сети неймспейсами по таким метрикам как:
    • Ширина канала
    • Количество переданных пакетов
    • Количество сетевых ошибок при передаче

Kubernetes / Networking / Namespace (Pods)​

Дашборд предназначен для детального мониторинга потребления сетевых ресурсов подами в неймспейсе кластера. Дашборд позволяет увидеть:

  • Текущее использование сети для входящего и исходящего трафика пода
  • Среднее использование сети для входящего и исходящего трафика пода
  • Исторические данные по использованию сети подами по таким метрикам как:
    • Ширина канала
    • Количество переданных пакетов
    • Количество сетевых ошибок при передаче

Kubernetes / Networking / Namespace (Workload)​

Дашборд предназначен для детального мониторинга потребления сетевых ресурсов неймспейсами кластера. Дашборд позволяет увидеть:

  • Текущее использование сети для входящего и исходящего трафика неймспейса
  • Среднее использование сети для входящего и исходящего трафика неймспейса
  • Исторические данные по использованию сети неймспейсами по таким метрикам как:
    • Ширина канала
    • Количество переданных пакетов
    • Количество сетевых ошибок при передаче

В отличие от дашборда Kubernetes / Networking / Cluster позволяет оценить метрики в разрезе таких сущностей как:

Kubernetes / Networking / Pod​

Дашборд предназначен для детального мониторинга потребления сетевых ресурсов подами в неймспейсе кластера. Дашборд позволяет увидеть:

  • Текущее использование сети для входящего и исходящего трафика пода
  • Среднее использование сети для входящего и исходящего трафика пода
  • Исторические данные по использованию сети подами по таким метрикам как:
    • Ширина канала
    • Количество переданных пакетов
    • Количество сетевых ошибок при передаче

Kubernetes / Views / Nodes​

Дашборд предназначен для мониторинга нод кластера Дашборд позволяет просмотреть ряд важных метрик каждой из нод кластера, в частности на дашборде отображаются такие метрики (в разрезе ноды):

  • Загруженность CPU ноды
  • Загруженность Оперативной памяти ноды
  • Список подов развернутых в кластере
  • Использование CPU каждым подом развернутым на ноде
  • Использование оперативной памяти каждым подом развернутым на ноде
  • Погрешность синхронизации времени
  • Использование сети
  • Использование приложением дискового пространства выделенных хранилищ
  • Нагрузку на диск ноды

Easy RabbitMQ (K8S)​

Дашборд предназначен для мониторинга загруженности брокера сообщений RabbitMQ. Дашборд включает в себя основные, ключевые метрики необходимые для диагностирования текущего состояния брокера. На дашборде отображаются такие метрики как:

  • Количество очередей
  • Общее количество обрабатываемых сообщений
    • Количество сообщений находящихся в обработке
    • Количество сообщений готовых к обработке
    • Количество сообщений в каждой очереди
  • Количество соединений к брокеру
  • Количество каналов соединений к брокеру
  • Скорость поступающих сообщений
  • Скорость вычитываемых сообщений
  • Количество свободной для работы брокера оперативной памяти
  • Количество свободного для работы брокера дискового пространства

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