查看Linux系统的平分负载

by admin on 2019年9月6日

查看linux系统的平均负载

  1、Linux系统的平均负载的概念

奥门威尼斯网址 ,1、cat /proc/loadavg

1.平均负载的概念

1.平均负载的概念

 

  有时候我们会觉得系统响应很慢,但是又找不到原因,这时就要查看平均负载了,看它是否有大量的进程在排队等待。特定时间间隔内运行队列中的平均进程数可以反映系统的繁忙程度,所以我们通常会在自己的网站或系统变慢时第一时间查系统的负载,即CPU的平均负载。

2、uptime

有时候我们会觉得系统响应很慢,但是又找不到原因,这时就要查平均负载了,看它是否有大量的进程在排队等待。特定的时间间隔内运行队列中的平均进程数可以反映系统的繁忙程度,所以我们通常会在自己的网站或系统变慢时第一时间查系统的负载,即CPU的平均负载。

有时候我们会觉得系统响应很慢,但是又找不到原因,这时就要查平均负载了,看它是否有大量的进程在排队等待。特定的时间间隔内运行队列中的平均进程数可以反映系统的繁忙程度,所以我们通常会在自己的网站或系统变慢时第一时间查系统的负载,即CPU的平均负载。

使用top命令,根据输出的第一行:

  2、查看平均负载

名称: uptime

奥门威尼斯网址 1

奥门威尼斯网址 2

 

  究竟应该如何查看平均负载呢?最简单的命令是uptime,如下所示:

使用权限: 所有使用者

2.查看平均负载

2.查看平均负载

top – 18:08:45 up  2:37,  2 users,  load average: 0.15, 0.06, 0.10

[root@localhost ~]# uptime

使用方式: uptime [-V]

究竟应该如何查看平均负载呢?最简单的命令是uptime,如下所示:

究竟应该如何查看平均负载呢?最简单的命令是uptime,如下所示:

 

11:31:11 up 11 days, 19:01, 2 users, load average: 0.02, 0.01, 0.00

说明: uptime 提供使用者下面的资讯,不需其他参数:

[[email protected]
~]# uptime
11:31:11 up 11 days, 19:01,2 users,load average: 0.02, 0.01, 0.00

[root@localhost ~]# uptime
11:31:11 up 11 days, 19:01,2 users,load average: 0.02, 0.01, 0.00

最后三个数字表示过去的1分钟、5分钟、15分钟内,

  目前的主流服务器都是双四核,有相当强悍的CPU,做一般的应用服务的话,Linux系统的负载这块倒不用我们担心。

现在的时间 系统开机运转到现在经过的时间 连线的使用者数量 最近一分钟,五分钟和十五分钟的系统负载

目前的主流服务器都是双4核,有相当强悍的CPU,做一般的应用服务的话,Linux系统的负载这块倒不用我们担心。

目前的主流服务器都是双4核,有相当强悍的CPU,做一般的应用服务的话,Linux系统的负载这块倒不用我们担心。

 

  还可以用w命令来查看,顺便可以查看一下系统当前有哪些用户,他们占用了哪些终端,如下所示:

参数: -V 显示版本资讯。

还可以用w命令来查看,顺便可以查看一下系统当前有哪些用户,他们占用了哪些终端,如下所示:

还可以用w命令来查看,顺便可以查看一下系统当前有哪些用户,他们占用了哪些终端,如下所示:

进程的队列中的平均进程数量。

[root@localhost ~]# w

范例: uptime

[[email protected]
~]# w

[root@localhost ~]# w

 

11:33:00 up 11 days, 19:03, 2 users, load average: 0.00, 0.00, 0.00

其结果为:

命令显示结果如下所示:

命令显示结果如下所示:

这三个值一般不能大于系统逻辑CPU的个数。

USER TTY FROM LOGIN@  IDLE  JCPU  PCPU WHAT

10:41am up 5 days, 10 min, 1 users, load average: 0.00, 0.00, 1.99

11:33:00 up 11 days, 19:03,2 users,load average: 0.00, 0.00, 0.00 USER
[email protected]
IDLE JCPU PCPU WHAT
root pts/1113.57.224.3 09:032:11m0.04s0.04s -bash
root pts/2113.57.224.3 11:310.00s0.02s0.00s w

11:33:00 up 11 days, 19:03,2 users,load average: 0.00, 0.00, 0.00 USER
TTYFROMLOGIN@ IDLE JCPU PCPU WHAT
root pts/1113.57.224.3 09:032:11m0.04s0.04s -bash
root pts/2113.57.224.3 11:310.00s0.02s0.00s w

 

root pts/1113.57.224.3 09:032:11m 0.04s 0.04s -bash

另外,还有动态命令top,这个命令也可以反映系统负载情况,在下面的命令提示中,我们只关心加粗字体部分。

另外,还有动态命令top,这个命令也可以反映系统负载情况,在下面的命令提示中,我们只关心加粗字体部分。

例如,本系统中有4个逻辑CPU,如果这三个值长期大于4,

root pts/2113.57.224.3 11:310.00s 0.02s 0.00s w

[[email protected]
~]# top

[root@localhost ~]# top

 

  另外,还有动态命令top,这个命令也可以反映系统负载情况。在下面的命令提示中,我们只关心加粗字体部分。

系统会动态地显示内容,结果如下所示:

系统会动态地显示内容,结果如下所示:

说明CPU很繁忙,负载很高,可能影响系统性能,

[root@localhost ~]# top

top – 15:01:25 up 12 days,3:46,2 users,load average: 1.76, 2.14, 2.20
Tasks: 116 total, 1 running, 115 sleeping, 0 stopped, 0 zombie Cpu(s):
47.5% us, 14.6% sy,0.0% ni, 37.6% id,0.3% wa,0.1% hi,0.0% si Mem:
8180164k total,7673268k used, 506896k free,74592k buffers Swap:0k
total,0k used,0k free,4613728k cached

top – 15:01:25 up 12 days,3:46,2 users,load average: 1.76, 2.14, 2.20
Tasks: 116 total, 1 running, 115 sleeping, 0 stopped, 0 zombie Cpu(s):
47.5% us, 14.6% sy,0.0% ni, 37.6% id,0.3% wa,0.1% hi,0.0% si Mem:
8180164k total,7673268k used, 506896k free,74592k buffers Swap:0k
total,0k used,0k free,4613728k cached

 

top – 11:37:47 up 11 days, 19:08, 2 users, load average: 0.00, 0.00,
0.00

第一行内容正是系统目前的负载情况,再通过uptime查看一下。

第一行内容正是系统目前的负载情况,再通过uptime查看一下。

若是偶尔大于4倒不用担心。

Tasks: 122 total,  1 running, 121 sleeping,  0 stopped,  0 zombie

[[email protected]
~]# uptime

[root@ud50053 ~]# uptime

 

Cpu(s): 0.1%us, 0.0%sy, 0.0%ni,
99.9%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st

结果如下所示:

结果如下所示:

使用top命令,根据输出的第一行: top – 18:08:45 up 2:37, 2 users, load
average: 0.15, 0.06, 0.10 最后三个数字表示过去的1分钟…

Mem:  4044136k total, 1435504k used, 2608632k free,  274740k buffers

15:02:50 up 12 days,3:48,2 users,load average: 1.75, 2.07, 2.17

15:02:50 up 12 days,3:48,2 users,load average: 1.75, 2.07, 2.17

Swap: 8193140k total,0k used, 8193140k free,  941884k cached

原来它所表示的是过去的1分钟、5分钟和15分钟内进程队列中的平均进程数量。

原来它所表示的是过去的1分钟、5分钟和15分钟内进程队列中的平均进程数量。

  上面加粗字体显示的内容是什么意思呢?再通过uptime查看一下。

这里需要注意的是load
average这个输出值,这三个值的大小一般不能大于系统逻辑CPU的个数,例如,本输出中系统有4个逻辑CPU,如果load
average的三个值长期大于4时,说明CPU很繁忙,负载很高,可能会影响系统性能,但是偶尔大于4时,倒不用担心,一般不会影响系统性能。相反,如果load
average的输出值小于CPU的个数,则表示CPU还有空闲,比如本例中的输出,CPU是比较空闲的。

这里需要注意的是load
average这个输出值,这三个值的大小一般不能大于系统逻辑CPU的个数,例如,本输出中系统有4个逻辑CPU,如果load
average的三个值长期大于4时,说明CPU很繁忙,负载很高,可能会影响系统性能,但是偶尔大于4时,倒不用担心,一般不会影响系统性能。相反,如果load
average的输出值小于CPU的个数,则表示CPU还有空闲,比如本例中的输出,CPU是比较空闲的。

[root@localhost ~]# uptime

这时候可以结合vmstat命令来判断我们的系统是否过于繁忙,如果确定很繁忙的话,就要考虑是否更换服务器或增加CPU的个数了。总结如下:

这时候可以结合vmstat命令来判断我们的系统是否过于繁忙,如果确定很繁忙的话,就要考虑是否更换服务器或增加CPU的个数了。总结如下:

11:39:36 up 11 days, 19:16, 1 user, load average: 0.09, 0.03, 0.01

如果r经常大于系统的逻辑CPU个数,且id经常少于50,则表示CPU的负荷很重。

如果r经常大于系统的逻辑CPU个数,且id经常少于50,则表示CPU的负荷很重。

  原来它所表示的是过去的1分钟、5分钟和15分钟内进程队列中的平均进程数量。

有时候我们会觉得系统响应很慢,但是又找不到原因,这时就要查平均负载了,看它是否有大量的进程在排队等待。特定…

奥门威尼斯网址 3

  那么,如何衡量当前系统是否负载过高呢?可以从以下几点来考虑。

  如果每个CPU(可以按CPU核心的数量计算)当前的活动进程数不大于3,则系统性能良好。

  如果每个CPU当前的活动进程数不大于4,表示可以接受。

  如果每个CPU当前的活动进程数大于5,则系统性能问题严重。

  还可以结合vmstat命令来判断我们的系统是否过于繁忙,如果确定很繁忙的话,就要考虑是否更换服务器或增加CPU的个数了。总结如下:

  如果r经常大于3或4,且id经常少于50,则表示CPU的负荷很重。

  在上面例子中,我的服务器是PowerEdge
2850,CPU是双核双线程的,则0.09/2=0.045(即负载值/真实CPU个数),此系统的CPU负载基本可以忽略了。事实上,现在主流服务器的CPU都很强悍,如果不是应用虚拟化等特殊场景,基本上负载都很小。

  按照前面的计算公式,我所配置Nagios报警的CPU负载阈值为CPU核心的数量(即CPU的物理个数×核数)。还是以我的服务器PowerEdge
2850为例,其CPU核心的数量为2×2=4,则设置报警值为4。这样设置是合理的,因为毕竟不是每个应用服务器的CPU都支持多核心,毕竟整个网站中还有些性能比较弱的服务器是用来做备份的。

奥门威尼斯网址 4

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图