1、系统负载监控
-
简介
系统的负载,决定了系统是否出于忙碌状态。CPU决定了同一时刻系统可以承受的最大负载。可以通过以下指令查看分析系统的负载 -
常用指令
uptime:是从文件/proc/loadavg文件中读取
$ uptime
16:33 up 48 days, 17:04, 2 users, load averages: 1.38 1.25 1.26
备注:
16:33 : 当前系统时间
up 48 days, 17:04 系统运行时间,时间越长说明系统越稳定
2 users:当前登陆用户数
load averages: 1.38 1.25 1.26 过去1分钟、5分钟、15分钟内的平均负载,
top:对系统所有运行的进程和系统载荷提供不断的更新的概览信息
top - 17:29:49 up 45 days, 23:44, 2 users, load average: 0.00, 0.01, 0.05
Tasks: 78 total, 1 running, 77 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.7 us, 0.7 sy, 0.0 ni, 98.3 id, 0.3 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 1882752 total, 84464 free, 182124 used, 1616164 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 1497328 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1569 root 20 0 158160 9036 1756 S 0.3 0.5 31:44.26 barad_agent
1570 root 20 0 609120 11644 1972 S 0.3 0.6 160:13.13 barad_agent
- 分析实践
每个cpu内核当前活动进程数最好不大于0.8,1~3时,若其他系统资源正常,可接受,若大于5时,说明已存在问题。
1.38 1.25 1.26 过去1分钟、5分钟、15分钟内的平均负载,可分析出系统负载的趋势:是否增加、稳固、降低等
注:
- 物理CPU:主板上实际接入的CPU个数,可用数physical id来确定
- CPU核数:每个CPU上面实际接入的芯片组数量,如双核、四核等。
- 逻辑CPU:一般情况下,逻辑CPU = 物理CPU数量 * CPU核数,如果逻辑cpu多于物理cpu,说明该cpu支持超线程技术
查看全部cpu信息
# 统计物理cpu个数
[root@sell180 ~]# cat /proc/cpuinfo | grep 'physical id' | sort | uniq | wc -l
# 统计cpu核数
[root@sell180 ~]# cat /proc/cpuinfo | grep 'cpu cores' | uniq
# 统计逻辑cpu个数
[root@sell180 ~]# cat /proc/cpuinfo | grep 'processor' | wc -l
# 查看CPU信息(型号)
[root@sell180 ~]# cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
- 平均负载是指在特定时间间隔内运行队列中的平均进程数,若一个进程满足以下条件则可进入队列中:没有等待IO操作的结果;没有主动进入等待状态;没有被停止
网友评论