Назад | Перейти на главную страницу

Недостаточно памяти при использовании 18%: куда идет баран?

Это связано с: Недостаточно памяти при использовании 72%

Похоже, проблема та же, но вопрос немного другой: куда уходит моя память? У меня 18% использования памяти, и мой OOM Killer убивает mysqld каждые 10 минут.

Мне удалось собрать некоторую информацию:

1 - Благодаря https://serverfault.com/a/619681/182343 Я обнаружил, что отчет OOM Killer показывает, что использование DMA35 + DMA + Normal составляет 96% (отчет https://pastebin.com/UJUiSsSi) ... так вот проблема ...

2 - Список процессов от OOM Killer: https://pastebin.com/yYTD4QzW

3 - Бесплатные, верхние, htop и другие инструменты показывают максимальное использование оперативной памяти 18%. Вот использование верхнего сортировочного плунжера (https://pastebin.com/DEDV1HWb)

4 - free -m ничего не говорит о проблеме с оперативной памятью:

              total        used        free      shared  buff/cache   
available
Mem:           6809         414         470         201        5924        5825

(Я добавил немного свопа, так как у меня не было свопа на этой виртуальной машине, но ничего не изменилось, своп не используется)

5 (РЕДАКТИРОВАТЬ): Благодаря Даниэлю Горди я очищаю свой бафф / кеш free && sync && echo 3 > /proc/sys/vm/drop_caches && free и запускал oom-killer вручную с помощью echo f > /proc/sysrq-trigger. И, черт возьми, отчет по оперативной памяти (DMA35 + DMA + Normal) показывает мое ожидаемое использование оперативной памяти: 18%! Я всегда думал что buff/cache значит доступно, когда ОС нужно - это ...

Почему и где едят барана?

(Я действительно надеюсь, что мне там может быть какая-то помощь, так как мой производственный сервер действительно нестабилен, так как эта проблема появляется :( Спасибо)

Если кто-то придет сюда за решением, это обновление:

Я откатил все изменения конфигурации и перезагрузил сервер заново. За 2 месяца сервер выглядит хорошо, и проблема исчезла.

Не уверен, что здесь произошло ...

Попробуйте найти, какой процесс использует вашу оперативную память с ps aux --sort -rss.
С уважением к выходу сервера для free -m большая часть RAM буферизована / кэширована. Попробуйте очистить кеши с помощью этой команды:
# free && sync && echo 3 > /proc/sys/vm/drop_caches && free