Мониторинг памяти в Linux


В Linux мониторинг памяти производится всеми распространенными системами: Nagios, Zabbix и т.п. В рамках данного материала рассмотрим как можно вручную проверить какой объем оперативной памяти доступен и каким консольные утилиты лучше использовать чтобы получить информацию.



Мониторинг памяти в Linux — основные утилиты для контроля


Прежде всего, vmstat


В выводе утилиты присутствует блок memory со следующими колонками:

swpd — показывает память, выделенную под swap
free — свободная память
buff — зарезервировано системой для тех процессов которые в определенный момент будут нуждаться в памяти
cache — кэшированная память, то что система использовала недавно



Для swap выделяется количество входящих и исходящих блоков, которые обрабатываются в единицу времени:
si — in, количество блоков в секунду которое система считывает
so — out, количество блоков в секунду которое система записывает в swap


Размер блока зависим от формата файловой системы и настроек.



Можно запустить vmstat с ключом

vmstat -a

inactive — показывает память, выделенную для процессов и зарезервированную, которая при этом в определенных ситуациях система может использовать
active — используемая процессами


vmstat -a



В самой доступной форме информация представлена в выводе free


free -m

shared — общая память для нескольких процессов, которая может задействоваться без системных вызовов ядра, обычно раздел можно увидеть смонтированным в /tmpfs

buff/cache — то же, что в vmstat, но два параметра представлены вместе


мониторинг памяти в Linux, free -m

Всю информацию по серверу, в т.ч. о расходе оперативной памяти можно получить из top




top

shift + m обеспечит сортировку по памяти


Linux мониторинг памяти


top покажет общее потребление, а также процессы, которые потребляют больше всего RAM. На скриншоте видно, что в системе это прежде всего mysqld.

Второй в списке процесс Docker с идентификатором 118558.



Читайте про утилиту top, а также про то что делать если памяти недостаточно, но увеличить её объем физически нельзя.

Сказать спасибо