Мониторинг использования памяти отличается от собственной диагностики Ubuntu

У меня Linode 512 VPS под управлением Ubuntu 12.04, и я заметил очень большую несоответствие между отчетом Monit об использовании памяти и отчетом Ubuntu. Это становится проблемой, когда monit пытается перезапустить некоторые из моих процессов, когда он пересекает определенный порог. Кто-нибудь знает, почему существует такая дискретность?

Ubuntu

монит

1 ответ

Решение

Не копаясь слишком глубоко в исходном коде monit, кажется, что monit учитывает буферы памяти, используемые ядром при вычислении используемой памяти.

Из монита на мою линоду:

  status                            Running
  monitoring status                 Monitored
  load average                      [0.00] [0.01] [0.05]
  cpu                               0.0%us 0.0%sy 0.0%wa
  memory usage                      264652 kB [52.0%]
  swap usage                        47096 kB [2.2%]
  data collected                    Tue, 11 Dec 2012 20:51:45

и работает free сразу после:

               total       used       free     shared    buffers     cached
  Mem:        508576     405572     103004          0      20288     120636
  -/+ buffers/cache:     264648     243928
  Swap:      2097148      47092    2050056

Учитывая, что конфигурация monit по умолчанию обновляется каждые 120 секунд, 264648 кБ довольно точно по сравнению с 264652 кБ monit.

Другие вопросы по тегам