理解Linux系統中的load average(圖文版)

理解Linux系統中的load average(圖文版)


一、什麼是load average?

linux系統中的Load對當前CPU工作量的度量 (WikiPedia: the system load is a measure of the amount of work that a computer system is doing)。也有簡單的說是進程隊列的長度。

Load Average 就是一段時間 (1 分鐘、5分鐘、15分鐘) 內平均 Load 。

 

我們可以通過系統命令"w"查看當前load average情況

 

[root@CNC-BJ-5-3N1 ~]# w
20:01:55 up 76 days, 8:20, 6 users, load average: 1.30, 1.48, 1.69

 

上面內容顯示系統負載爲“1.30, 1.48, 1.69”,這3個值是什麼意思呢?

  • 第一位1.30:表示最近1分鐘平均負載

  • 第二位1.48:表示最近5分鐘平均負載

  • 第三位1.69:表示最近15分鐘平均負載

 

PS. linux系統是5秒鐘進行一次Load採樣

二、load average值的含義

2.1 單核處理器

假設我們的系統是單CPU單內核的,把它比喻成是一條單向馬路,把CPU任務比作汽車。當車不多的時候,load <1;當車佔滿整個馬路的時候 load=1;當馬路都站滿了,而且馬路外還堆滿了汽車的時候,load>1

 

 Load < 1

 Load = 1
 Load >1

 

2.2 多核處理器

我們經常會發現服務器Load > 1但是運行仍然不錯,那是因爲服務器是多核處理器(Multi-core)。

假設我們服務器CPU是2核,那麼將意味我們擁有2條馬路,我們的Load = 2時,所有馬路都跑滿車輛。

 

Load = 2時馬路都跑滿了

 

 

#查看CPU core 
grep 'model name' /proc/cpuinfo | wc -l

  

3. 什麼樣的Load average值要提高警惕

  • 0.7 < load < 1: 此時是不錯的狀態,如果進來更多的汽車,你的馬路仍然可以應付。

  • load = 1: 你的馬路即將擁堵,而且沒有更多的資源額外的任務,趕緊看看發生了什麼吧。

  • load > 5: 非常嚴重擁堵,我們的馬路非常繁忙,每輛車都無法很快的運行

4. 三種Load值,應該看哪個?

通常我們先看15分鐘load,如果load很高,再看1分鐘和5分鐘負載,查看是否有下降趨勢。

1分鐘負載值 > 1,那麼我們不用擔心,但是如果15分鐘負載都超過1,我們要趕緊看看發生了什麼事情。所以我們要根據實際情況查看這三個值。


5.通過Nagios配置Load監控告警

修改 nagios check_load告警閥值

客戶端配置

  • vi /etc/nagios/nrpe.cfg 


# 修改下面配置-w和-c值
# command[check_load]=/usr/lib64/nagios/plugins/check_load -w 15,10,8 -c 30,25,20


  • service nrpe restart

服務端配置


  • 配置Service,我這裏配置的是設備組,名字爲”adam“

define service{
  use generic-service
  hostgroup_name adam
  service_description Current Load
check_command check_nrpe!check_load
}

  • service nagios restart (client端nrpe服務需要重啓)

-- heipark

 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章