什么警告和关键值用于check_load?

现在我正在使用这些值:

# y = c * p / 100 # y: nagios value # c: number of cores # p: wanted load procent # 4 cores # time 5 minutes 10 minutes 15 minutes # warning: 90% 70% 50% # critical: 100% 80% 60% command[check_load]=/usr/local/nagios/libexec/check_load -w 3.6,2.8,2.0 -c 4.0,3.2,2.4 

但是这些价值只是随机挑选出来的。

有没有人有一些testing值?

这取决于服务器的负载,以及您期望的负载。

但是从一些范围开始

 1 min load avg: w: <ncpu> * 8 c: <ncpu> * 10 5 min load avg: w: <ncpu> * 5 c: <ncpu> * 8 15 min load avg: w: <ncpu> * 2 c: <ncpu> * 3 

并针对每个服务器进行调整,以便在特定服务器有意义时收到通知。

例如,一个具有4个CPU核心的服务器,它会读取如下:check_load -w 32,20,8 -c 40,32,12

虽然它的旧post,现在回答,因为我知道check_load门槛值是新手头疼的时间…;)

警告警报,如果CPU为70%5分钟,60%为10分钟,50%为15分钟。 一个关键的警报,如果CPU是90%5分钟,80%10分钟,70%15分钟。

 *command[check_load]=/usr/local/nagios/libexec/check_load -w 0.7,0.6,0.5 -c 0.9,0.8,0.7* 

我所有关于CPU负载的发现:

什么意思的“负载”:维基百科说:

所有Unix和类Unix系统在内核中生成三个“加载平均”数字的度量。 用户可以通过运行uptime命令轻松地从Unix shell查询当前结果:

 $ uptime 14:34:03 up 10:43, 4 users, load average: 0.06, 0.11, 0.09 

从上述输出平均负载: 0.06, 0.11, 0.09意味着(在单CPU系统上):

  • 在最后一分钟,CPU负担了6%
  • 在过去的5分钟内,CPU负担了11%
  • 在过去的15分钟内,CPU负载不足9%

 $ uptime 14:34:03 up 10:43, 4 users, load average: 1.73, 0.50, 7.98 

上述单CPU系统的平均负载为1.73 0.50 7.98 ,如下所示:

  • 在最后一分钟,CPU超载了73%(1个CPU,1.73可运行进程,所以0.73进程不得不等待一个回合)
  • 在过去的5分钟内,CPU负载为50%(没有进程需要等待一个回合)
  • 在过去15分钟内,CPU超载了698%(1个CPU,7.98个可运行进程,所以6.98个进程需要等待一个回合)

Nagios门限值计算:

对于Nagios CPU负载设置,其中包括警告和关键:

y = c * p / 100

其中: y = nagios value c = number of cores p = wanted load procent

对于一个4核心系统:

 time 5 min 10 min 15 min warning: 90% 70% 50% critical: 100% 80% 60% command[check_load]=/usr/local/nagios/libexec/check_load -w 3.6,2.8,2.0 -c 4.0,3.2,2.4 

对于单核心系统:

y = p / 100

其中: y = nagios value p = wanted load procent

 time 5 min 10 min 15 min warning: 70% 60% 50% critical: 90% 80% 70% command[check_load]=/usr/local/nagios/libexec/check_load -w 0.7,0.6,0.5 -c 0.9,0.8,0.7 

关于CPU负载分析的一个很棒的白皮书Gunther博士http://www.teamquest.com/pdfs/whitepaper/ldavg1.pdf在这篇在线文章中,Gunther博士深入研究了UNIX内核,以了解负载均值&#xFF08; “LA三胞胎”)是计算出来的,它们作为容量规划指标是多么合适。

除非有问题的服务器有一个asynchronous的工作负载,其中队列深度是pipe理的重要服务指标,否则它真的不值得监测负载平均值。 它只是像服务时间(服务时间和服务时间)这样的指标分心。

Nagios也是一个很好的补充,像Munin或者Cacti这样的工具,它们将描绘你的服务器正在经历的不同types的工作负载。 无论是load_average,CPU使用率,磁盘io或其他东西。

使用这些信息,在Nagios中设置好的阈值更容易。

你知道什么样的负载平均你的系统的性能受到影响? 我上一份工作的服务器一直保持在35-40的平均负载水平,但仍然是响应式的。 这是一个测量,你必须做一些侦探工作,以获得准确的数字。

您可能想要测量系统上的其他一些指标,例如SSH或http的平均连接时间; 这可能是一个更好的指标,你的系统负载多less。