监控入门-Linux的平均负载(load average)


监控入门-Linux的平均负载(load average)
 
近期总被服务器的平均负载报警骚扰,但是登录到服务器查看,却发现不了问题.因此怀疑负载的阈值设置不合理.那么设置多少才合理呢?先来看一下基础知识.
   www.2cto.com  
平均负载是指系统的运行队列的平均利用率,也可以认为是可运行进程的平均数.
一般的进程需要消耗CPU,内存,磁盘I/O,网络I/O等资源,在这种情况下,平均负载就不是单独指的CPU使用情况.即内存,磁盘,网络等因素,也可以影响系统的平均负载值.
在单核处理器中,平均负载值为1或者小于1的时候,系统处理进程会非常轻松,即负载很低.当达到3的时候,就会显得很忙.达到5或者8的时候,就不能很好的处理进程了.(5,8目前还是个争议的阈值,为了保守起见,选择低的.)
比如我的服务器是两颗CPU.每颗6个核心,相当于12核的处理器.
如果负载小于12,说明服务器利用率较低.
如果负载大于12小于36,说明服务器利用率比较高,这个时候,就应该考虑优化业务,或者更换更快的CPU.
如果负载大于36小于60,甚至超过60,说明该服务器很危险,随时可能发生问题.
 
经过上面的分析,我们用以下命令获取系统的平均负载值.
top
uptime
w
平均负载值部分如:load average: 0.08, 0.03, 0.00.这些数值是指系统在最后1/5/15分钟的平均负载.那么我们判断负载过高,要以哪个值为准?
根据经验:我们应该把重点放在5/15分钟的平均负载,因为1分钟的平均负载太频繁,一瞬间的高并发,就会导致该值的大幅度改变.
 
结合nagios报警,12核的服务器计划做如下报警设置:
check_load –w 36,24,12 –c 60,48,36
 

相关内容

    暂无相关文章