Вы можете осуществлять мониторинг состояния отдельных хостов PostgreSQL, пользуясь встроенным в панель Linx Cloud инструментом мониторинга.
Этот инструмент доступен только если кластер PostgreSQL был создан с активной опцией «Включить мониторинг» и шаблоном конфигурации «Single» или «Master-Replica».
Чтобы посмотреть данные мониторинга:
1. Откройте панель Linx Cloud.
2. Перейдите в раздел «Базы данных→Инстансы баз данных».
3. Найдите в списке нужный инстанс.
4. Нажмите на хост инстанса, для которого требуется посмотреть данные мониторинга.
5. Перейдите на карточку «Мониторинг».
Будет выведено несколько счетчиков и графиков:
- Счетчики отражают текущее значение метрик.
- Графики отражают динамику изменения значений метрик в рамках определенного временного периода.На линейке вверху можно выбрать интересующий временной период, за который нужно отобразить данные на графиках. Период по умолчанию — 12 часов.
Счетчики
- Метрики CPU:
- Current IOWait Процент от общего количества ресурсов процессора хоста, затраченных на ожидание завершения операций ввода-вывода.
- Current CPUпроцент времени, в течение которого процессор хоста работает в пользовательском режиме. Или, иными словами, обеспечивает работу инстанса базы данных и связанной с ним инфраструктуры.
- RAM Used Процент занятой памяти (от общего количества памяти на хосте).
- Free connectionsПроцент доступных подключений от общего числа.
- Replication lagВремя отставания реплики (в секундах) от источника репликации.
Эта метрика показывается только при просмотре данных мониторинга хостов-реплик.
(в секунду).
Нагрузка на дисковую подсистему:
- Disk Read Time Время (в секундах), затраченное на операции чтения с диска.
- Disk Write Time Время (в секундах), затраченное на операции записи на диск.
- Disk used Процент использованного дискового пространства (от общего объема на хосте). Показываются столбчатые диаграммы заполненности некоторых разделов: например, связанных с PostgreSQL и журналом транзакций WAL.
- Высокие показатели утилизации CPU и памяти, нагрузки на дисковую подсистему, а также интенсивная или неравномерная нагрузка на базу данных могут свидетельствовать о большой нагрузке на хосты или о неоптимальных индексах и запросах.В таком случае рекомендуется воспользоваться от имени администратора БД встроенными инструментами диагностики производительности PostgreSQL, например:
1. Выполнить запросы к системной таблице pg_stat_activity, чтобы собрать статистику по выполняющимся запросам.Рекомендуется обратить внимание на запросы, которые выполняются дольше всех остальных.
2. Воспользоваться командой EXPLAIN для поиска узких мест в таких медленных запросах.Рекомендуется обратить внимание на запросы, не использующие индексы (большое количество строк в
). Затем можно создать или обновить требуемые индексы.
· Низкий процент свободных подключений (Free connections) может свидетельствовать как о большом количестве одновременно подключенных клиентов, так и о том, что есть длинные транзакции, которые используют открытое соединение слишком долго.В таком случае рекомендуется:
1. Увеличить значение параметра
2. Оптимизировать запросы так, чтобы не было длинных транзакций.
- Про устранение проблем, связанных с отставанием реплики, см. документацию Patroni и PostgreSQL.