Найти в Дзене
Postgres DBA

PG_HAZEL : Часть 1 - метрики ОС(vmstat/iostat) при инциденте производительности высоконагруженной СУБД.

Оглавление

Большим ресурсам и нагрузкам - подходящий инструмент поможет.
Большим ресурсам и нагрузкам - подходящий инструмент поможет.

Начало

Задача

Проанализировать состояние ОС и характерные ожидания СУБД при инциденте производительности для высоконагруженной СУБД.

  • Количество ядер CPU : 192
  • Размер RAM: 1TB
  • Версия PostgreSQL: 15.13

Инцидент производительности СУБД

Дашборд Zabbix
Дашборд Zabbix

Часть 2 - Производительность и ожидания СУБД

80% ожиданий СУБД вызваны ожиданиями типа LWLock и IO.

Часть 3 - Характерные события ожиданий типа LWLock

PG_HAZEL : Часть 4 - характерные события ожиданий типа IO

Анализ состояния ОС

Предупреждения и аварийные ситуации - не отмечено

-3

Корреляция ожидания СУБД и vmstat - отсутствует

-4

Корреляция vmstat-iostat для файловой системы /wal - OK

-5

Корреляция vmstat-iostat для файловой системы /data - OK

-6

Чек-лист IO - ОК

-7
-8

Чек-лист CPU - очень высокая корреляция (cs - in) - переключения контекста могут быть вызваны прерываниями.

-9
-10
-11

Чек-лист RAM - более 50% наблюдений - свободная RAM менее 5%

-12
-13

Результат анализа состояния ОС во время инцидента производительности СУБД

  • Предупреждения и аварийные ситуации - не отмечено
  • Корреляция ожиданий СУБД и vmstat - отсутствует
  • Корреляция vmstat-iostat для файловой системы /wal - OK
  • Корреляция vmstat-iostat для файловой системы /data - OK
  • Чек-лист IO - ОК
  • Чек-лист CPU - очень высокая корреляция (cs - in) - переключения контекста могут быть вызваны прерываниями.
  • Чек-лист RAM - более 50% наблюдений - свободная RAM менее 5%