Проблема

СУБД PostgreSQL работает нестабильно:

  • происходят сбои ОС на уровне ядра;
  • процессы postgres прерываются;
  • производительность снижается.

Диагностика

  • Выполнить команду:
    uname -r
    CODE

    Убедиться, что вывод содержит слово hardened.

Возможная причина: Используется ядро hardened. Перейти к решению.


  • Проверить значения параметров ядра:
    • nr_hugepages:
      sudo sysctl vm.nr_hugepages
      CODE
      Пример вывода:
      20321
      CODE
      При размере одной страницы в 2 Мб общий размер больших страниц примерно 39,7 Гб.
    • hugetlb_shm_group:
      sudo sysctl vm.hugetlb_shm_group
      CODE
      Вывод:
      0
      CODE
  • Проверить, что в файле postgresql.conf указаны следующие значения параметров:
    huge_pages = 'on'
    shared_buffers = 38707 MB
    CODE

Возможная причина: Некорректная настройка HugePages. Перейти к решению.


Возможные причины