107 lines
20 KiB
Markdown
107 lines
20 KiB
Markdown
|
|
# Grafana
|
|||
|
|
|
|||
|
|
## Инструкция по работе с метриками
|
|||
|
|
|
|||
|
|
Доступ к метрикам кластера предоставляется после запроса соответствующих прав. После получения доступа можно перейти в систему мониторинга по ссылке:
|
|||
|
|
|
|||
|
|
https://metrics.dfcloud.ru.
|
|||
|
|
|
|||
|
|
Открывается главная страница Grafana. Для просмотра метрик кластера PostgreSQL выполните следующие шаги:
|
|||
|
|
|
|||
|
|
1. В левом боковом меню нажмите **Dashboard**;
|
|||
|
|
2. В списке доступных дашбордов выберите **папку Cloud PostgreSQL**;
|
|||
|
|
3. Внутри папки выберите **дашборд Cloud PostgreSQL** — в нём отображаются все метрики кластера.
|
|||
|
|
|
|||
|
|
## Управление отображаемыми данными
|
|||
|
|
|
|||
|
|
В верхней части дашборда доступны селекторы для настройки отображения:
|
|||
|
|
|
|||
|
|
- **InstallationID** - выбор одного опеределенного кластера;
|
|||
|
|
- **Cluster node name** - выбор конкретного нода кластера, в котором значения графиков меняются в зависимости от выбранного хоста (селектор влияет на все графики, кроме блока Patroni);
|
|||
|
|
- **Database** - выбор базы данных, по которым отображаются метрики;
|
|||
|
|
- **Lock table** - выбор типа блокировки для отображения (применим не для всех графиков).
|
|||
|
|
|
|||
|
|
## Метрики PostgreSQL
|
|||
|
|
|
|||
|
|
Метрики отображают ключевые параметры конфигурации и текущие показатели работы экземпляра PostgreSQL.
|
|||
|
|
|
|||
|
|
| Наименование | Описание | Примечание |
|
|||
|
|
|---------------------|-----------------------------------------------------------------------------------------------------------------|------------|
|
|||
|
|
|Version | Текущая версия PostgreSQL, установленную на кластере ||
|
|||
|
|
|Current fetch data | Объем данных, извлеченных из базы за текущий период | Для операции чтения |
|
|||
|
|
|Current insert data | Объем данных, вставленных в базу | Для операции записи новых данных |
|
|||
|
|
|Current update data | Объем данных, обновленных в базе ||
|
|||
|
|
|Seq Page Cost | Стоимость последовательного чтения страницы данных | Влияет на выбор плана запроса: чем выше значение, тем реже оптимизатор будет выбирать последовательное сканирование таблиц|
|
|||
|
|
|Random Page Cost | Стоимость чтения случайной страницы данных | Низкое значение говорит о том, что в системе используются быстрые диски, и оптимизатор будет чаще выбирать доступ по индексам|
|
|||
|
|
|Max Connections | Максимальное количество одновременных подключений к базе данных, разрешенное на сервере ||
|
|||
|
|
|Shared Buffers | Объем оперативной памяти, выделенный под кэш данных PostgreSQL | Хранит часто используемые данные для ускорения доступа к ним|
|
|||
|
|
|Effective Cache | Предполагаемый размер системного кэша файлов | Используется оптимизатором, для оценки вероятности нахождения данных в кэше операционной системы|
|
|||
|
|
|Maintenance Work Mem | Объем памяти для выполнения операций обслуживания. ||
|
|||
|
|
|Work Mem | Объем памяти, выделяемый для внутренних сортировок и хеш-таблиц при выполнении запросов | Для каждой операции |
|
|||
|
|
|Max WAL Size | Максимальный размер журнала предзаписи, после достижения которого запускается процесс контрольной точки |checkpoint| <!--Что здесь имеется ввиду под словом "checkpoint"? Это должна быть ячейка с выбором? -->
|
|||
|
|
|Max Worker Processes | Максимальное количество фоновых процессов, которые могут быть запущены в системе. ||
|
|||
|
|
|Max Parallel Workers | Максимальное количество параллельных процессов, которые могут быть задействованы при выполнении одного запроса. ||
|
|||
|
|
|
|||
|
|
## Метрики Database Stats
|
|||
|
|
|
|||
|
|
Метрики отображают текущую нагрузку и состояние баз данных в кластере PostgreSQL. Данные метрики позволяют:
|
|||
|
|
- оценить эффективность работы баз данных;
|
|||
|
|
- отследить скачки нагрузки;
|
|||
|
|
- своевременно среагировать на потенциальные проблемы до того, как они повлияют на работу приложений.
|
|||
|
|
|
|||
|
|
| Наименование | Описание |
|
|||
|
|
|-----------------------| -------------------|
|
|||
|
|
| Average CPU Usage | Показывает время, затраченное на выполнение пользовательских и системных задач, а также, насколько интенсивно используются вычислительные ресурсы сервера базы данных. |
|
|||
|
|
| Average Memory Usage | Средний объем оперативной памяти, используемой процессами PostgreSQL за 5-минутные интервалы. Показывает, сколько памяти потребляет база данных в процессе работы. |
|
|||
|
|
| Open File Descriptors | Количество открытых файловых дескрипторов процессами PostgreSQL. Метрика показывает среднее (Mean), последнее (Last), максимальное (Max) и минимальное (Min) значение за интервал. |
|
|||
|
|
| Active sessions | Показывает, сколько в данный момент выполняется запросов к PostgreSQL. Метрика показывает среднее (Mean), последнее (Last), максимальное (Max) значение. |
|
|||
|
|
| Transcations | Количество транзакций в базах данных кластера. Метрика разделена на два типа операций: commits (успешно завершенные транзакции) и rollbacks (откаченные транзакции). |
|
|||
|
|
| Update data | Объем данных, обновленных в базах данных кластера. Показывает, сколько данных было изменено в результате выполнения операций UPDATE. |
|
|||
|
|
| Fetch data (SELECT) | Объем данных, извлеченных из базы с помощью запросов SELECT. Показывает, сколько данных было считано из базы в результате операций чтения. |
|
|||
|
|
| Insert data | Объем данных, вставленных в базы данных кластера. Показывает, сколько данных было добавлено в результате выполнения операций INSERT. |
|
|||
|
|
| Lock tables | Количество блокировок таблиц в базах данных кластера. Показывает, сколько раз таблицы были заблокированы для выполнения операций.<br>AccessShareLock - это блокировка, которая возникает, когда кто-то читает данные из таблицы (делает SELECT). Данная блокировка не мешает операциям чтения, но не дает удалить в этот момент таблицу или изменить ее структуру. |
|
|||
|
|
| Return data | Объем данных, возвращаемых клиенту в результате выполнения запросов. Показывает, сколько данных было отправлено обратно клиенту после обработки запросов в базе. |
|
|||
|
|
| Idle sessions | Количество бездействующих сессий подключения к базе данных. Показывает, сколько открытых подключений в данный момент не выполняют никаких запросов и просто ждут. |
|
|||
|
|
| Delete data | Объем данных, удаленных из базы данных в результате выполнения операций DELETE. Показывает, сколько данных было удалено из таблиц. |
|
|||
|
|
| Cache Hit Rate | Показывает процент запросов к данным, которые были удовлетворены из кэша (оперативной памяти), без обращения к диску. Показывает, насколько эффективно используется кэш PostgreSQL. |
|
|||
|
|
| Buffers (bgwriter) | Метрика, показывающая активность фонового процесса записи, который занимается синхронизацией данных из оперативной памяти на диск. |
|
|||
|
|
| Conflicts/Deadlocks | Метрика, отслеживающая две проблемы при работе с базой данных: конфликты восстановления и взаимоблокировки. |
|
|||
|
|
| Temp File (Bytes) | Объем данных, записанных во временные файлы при выполнении запросов в базах данных. PostgreSQL создает временные файлы на диске, когда для выполнения запроса не хватает оперативной памяти. |
|
|||
|
|
| Checkpoint Stats | Метрика, показывающая время, затрачиваемое на выполнение checkpoints в PostgreSQL, где: <br>- **write_time** - время, затраченное на запись данных на диск во время checkpoint (сколько миллисекунд ушло на запись файлов).<br>- **sync_time** - время, затраченное на синхронизацию файлов с диском (чтобы данные гарантированно сохранились). |
|
|||
|
|
|
|||
|
|
## Метрики Patroni
|
|||
|
|
|
|||
|
|
Метрик отображают состояние и конфигурацию кластера PostgreSQL под управлением Patroni. Эти метрики позволяют контролировать отказоустойчивость кластера, отслеживать переключения мастера и убеждаться, что репликация работает штатно.
|
|||
|
|
|
|||
|
|
| Наименование | Описание |
|
|||
|
|
|--------------------------------|----------------------------------------------------------------------------------------------------------------------------------------|
|
|||
|
|
| Patroni Leader | Метрика, которая показывает, какая нода в кластере PostgreSQL в данный момент является master-сервером, принимающим запросы на запись. |
|
|||
|
|
| Patroni Replica | Метрика, которая показывает, какие узлы кластера PostgreSQL в данный момент выполняют роль реплики. |
|
|||
|
|
| Sync Standby | Метрика, которая показывает, какая из реплик в кластере PostgreSQL назначена синхронной. |
|
|||
|
|
| PostgreSQL WAL Replay | Метрика, которая показывает, включена ли на узлах кластера синхронизация данных через WAL. |
|
|||
|
|
| PostgreSQL Pending Restart | Метрика, которая показывает, требуется ли перезагрузка PostgreSQL на узлах кластера после изменения конфигурационных параметров. |
|
|||
|
|
| Patroni Primary Node | Метрика, которая показывает, какой узел в кластере PostgreSQL в данный момент является основным и принимает запросы на запись. |
|
|||
|
|
| Patroni Secondary Nodes | Метрика, которая показывает, какие узлы кластера PostgreSQL в определенные моменты времени выполняли роль реплик. |
|
|||
|
|
| Replicas Received WAL Location | Метрика, показывающая объем журналов предзаписи (WAL), полученных каждой репликой кластера. |
|
|||
|
|
| Primary WAL Location | Метрика, показывающая объем журналов предзаписи (WAL), на основном сервере кластера PostgreSQL. |
|
|||
|
|
| Replicas Replayed WAL Location | Метрика, показывающая объем журналов предзаписи (WAL), которые были не просто получены, а уже применены на репликах кластера. |
|
|||
|
|
| WAL Replay Paused | Метрика, которая отслеживает, не приостановлен ли процесс применения WAL-журналов на узлах кластера. Если передача или применение WAL-файлов останавливается, на графике происходит скачок. |
|
|||
|
|
|
|||
|
|
## Метрики Hosts
|
|||
|
|
|
|||
|
|
Блок Hosts управляется селектором **Cluster node name**. Метрики отображают состояние и ресурсы серверов, на которых развернут кластер PostgreSQL. Данные метрики позволяют оценить, хватает ли серверу ресурсов для текущей нагрузки, и своевременно обнаружить проблемы с производительностью или нехваткой места на дисках.
|
|||
|
|
|
|||
|
|
| Наименование | Описание |
|
|||
|
|
| ---------------------------|-------------------------------------------------------------------------------------------------------------------------------|
|
|||
|
|
| CPU Busy | Метрика, показывающая общую загруженность всех процессорных ядер на сервере, где работает PostgreSQL. |
|
|||
|
|
| RAM Used | Метрика, показывающая процент оперативной памяти, который занят на сервере всеми процессами. |
|
|||
|
|
| CPU Cores | Метрика, показывающая общее количество процессорных ядер, доступных на сервере, где работает PostgreSQL. |
|
|||
|
|
| RAM Total | Метрика, показывающая общий объем оперативной памяти, установленный на сервере. |
|
|||
|
|
| DB Disk Total | Метрика, показывающая общий объем дискового пространства, выделенного для хранения данных базы данных PostgreSQL на сервере. |
|
|||
|
|
| CPU Basic | Метрика, которая показывает детальную разбивку загрузки процессора по типам выполняемых задач. Она позволяет увидеть, на что именно тратится процессорное время на сервере. |
|
|||
|
|
| Memory Basic | Метрика, которая показывает детальную разбивку использования оперативной памяти на сервере, а также информацию о SWAP. |
|
|||
|
|
| Disk IOps | Метрика, показывающая количество операций чтения и записи, выполняемых на диске сервера в секунду. |
|
|||
|
|
| Disk Space Used Basic | Метрика, показывающая процент занятого дискового пространства на всех подключенных файловых системах сервера. |
|
|||
|
|
| Disk R/W Data | Показывает объем данных в байтах, читаемых с диска и записываемых на диск в секунду. |
|
|||
|
|
| Filesystem space available | Метрика, показывающая объем свободного дискового пространства на файловой системе сервера. |
|