Как я могу рассчитать использование памяти сервера LInux с помощью отчета sar?

Я пытаюсь создать отчет об использовании памяти для нескольких серверов Linux. Я хочу собирать процент использования памяти серверов за каждые 10 минут, и я думаю, что sar может помочь получить эти данные. Раньше я думал, что столбец %memused будет напрямую отображать % использования памяти сервера. Но после прочтения нескольких статей я подозреваю, что это не правильное использование памяти сервера, и поэтому я хочу знать, как лучше всего рассчитать использование памяти сервера.

Может ли кто-нибудь помочь мне рассчитать% использования памяти сервера за каждые 10 минут, используя отчет sar или любой другой способ, чтобы получить% использования памяти.

06:39:47 PM kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit
06:39:48 PM    616552   3307708     84.29    245368   2174816   1196772     24.07
06:39:49 PM    616552   3307708     84.29    245368   2174816   1196772     24.07

person Kaustubh Dhavale    schedule 10.03.2019    source источник


Ответы (2)


Чтобы рассчитать объем свободной памяти с SAR, используйте следующую формулу:

kbmemfree + kbbuffers + kbcached = actual free memory on the system

Используя ваш пример:

616552 + 245368 + 2174816 = 3036736KB

Это около 2,89 ГБ свободной памяти.

Я считаю, что тогда вы можете вычесть из общей доступной памяти, чтобы получить использование.

person João Fonseca    schedule 06.05.2019

Фактическая свободная память в системе свободна+буферы+кешируется. Буферы и кеширование используются для повышения производительности системы, но при необходимости возвращаются в свободный пул.

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

xxx@xxx:$ free -h
              total        used        free      shared  buff/cache   available
Mem:            62G        4.4G        7.9G         11G         50G         45G
Swap:          2.0G         12M        1.9G

Свободная память в этом случае:

  • (бесплатно + бафф/кэш) - общий.
  • 7.9 + 50 - 11
person James Harvey    schedule 27.03.2019