【问题标题】:Monit memory utilization different from Ubuntu's own diagnostics监视与 Ubuntu 自己的诊断不同的内存利用率
【发布时间】:2012-11-27 17:51:04
【问题描述】:

我有一个运行 Ubuntu 12.04 的 Linode 512 VPS,我注意到 Monit 的内存利用率报告与 Ubuntu 的报告之间存在很大差异。当 monit 在超过某个阈值时尝试重新启动我的某些进程时,这会成为一个问题。有谁知道为什么会出现这种差异?

【问题讨论】:

  • 您应该尝试 newrelic (newrelic.com) 来监控您的服务器
  • 第一个输出是什么?试试top,或者只是内存free——monit 可能正在聚合不同的内存使用状态。
  • 我最近关闭了 newrelic,因为我听说 monit 有更好的内存占用。
  • @tharrison 上面的图片来自 ubuntu 自己 ssh 进入服务器时的系统信息摘要。
  • NewRelic 确实很棒,特别适合 Rails。它的内存占用非常小;如果比 monit 大,那么只有很小的量。我不确定登录时会生成什么系统信息,但如果您需要了解内存,freetop 是正确的工具。如果他们不与 monit(或 NewRelic)协调,那么就会发生一些奇怪的事情。可能有缓存或其他缓冲区没有被统计?

标签: ruby-on-rails vps linode monit


【解决方案1】:

没有深入挖掘 monit 的源代码,monit 似乎在计算已用内存时考虑了内核使用的内存缓冲区。

来自我的 Linode 上的监控:

  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 秒刷新一次,与 monit 的 264652 kB 相比,264648 kB 相当准确。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-05-19
    • 1970-01-01
    • 1970-01-01
    • 2019-08-23
    • 1970-01-01
    • 1970-01-01
    • 2016-04-25
    • 2021-04-22
    相关资源
    最近更新 更多