我应该在 Linux 服务器上监控哪些指标?

Kvi*_*sle 6 linux monitoring munin nagios

我的任务是设置 300 台服务器的监控,做不同的事情。我一直在研究各种工具,例如 Nagios、Munin 和其他工具——所以我首先对如何实现监控有了一个很好的想法。

我想知道的是,如果我对服务器不太了解,通常将哪些指标作为良好的默认值进行监控?而且,就警报而言,什么是“合理的默认值”?

我的计划是首先部署一个具有合理默认值的监控方案,同时我会规划不同系统的角色——我预计这需要一些时间。

这个问题也可以用不同的方式问:

如果你正在设计一个监控设备——它的默认 Linux 监控模板应该包含什么?

Bil*_*hor 6

指示问题的常用指标包括 CPU 利用率、内存利用率、平均负载和磁盘利用率。对于邮件服务器来说,邮件队列的大小是一个重要的指标。对于 Web 服务器来说,繁忙服务器的数量是一个重要的衡量标准。过多的网络吞吐量也会导致问题。如果您有需要检查时间的进程,NTP 可以成为保持时钟同步的重要工具。

我使用的标准警告级别包括(警告、严重)。您可能希望根据多种因素调整您的值。较高的值会减少警报数量,而较低的值可让您有更多时间对不断发展的问题做出反应。这可能是模板的合适起点。

  • 持续的 CPU 利用率(80%、100%)。排除 niced 进程的时间。
  • 每个 CPU 的平均负载 (2, 5)。
  • 每个分区的磁盘利用率(80%、90%)。
  • 邮件队列 (10, 50)。在非邮件服务器上使用较低的值。
  • 繁忙的网络服务器 (10, 25)。
  • 网络吞吐量(80%、100%)。网络备份和其他此类过程可能会超出值。如果可用,我会使用节流设置。
  • 以秒为单位的 NTP 偏移量 (0.2, 1)。

Munin 在收集这些统计数据和其他统计数据方面做得很好。它还能够在超过阈值时触发警报。其预警能力不如Nagios。它对历史数据的收集和显示使其成为能够查看当前值是否与过去值显着不同的不错选择。它易于设置并且可以在不产生警告的情况下运行。主要问题是捕获的数据量及其固定的信息收集频率。您可能希望按需生成图表。Munin 提供了许多我会sar在系统出现问题时使用的统计数据。它的概览页面可用于识别可能的问题。

Nagios 非常擅长警报,但从历史上看,它并不擅长以适合与当前值进行比较的方式收集历史数据。看起来这种情况正在发生变化,新版本在收集这些数据方面要好得多。它是在出现问题时生成警告以及在不生成警报时安排停机的不错选择。Nagios 非常擅长在服务出现故障时发出警报。这尤其适用于关键服务器和服务。