监控指标

load

定义:特定时间间隔内,运行队列中的平均线程数;

示例(粗略计算): 1. CPU有8核数; 2. 持续1min内都有16个线程处于运行状态; 3. 则每个CPU的运行队列中有2个线程在运行;

结论:load为2

负载标准

使用top或uptime查看系统内的load

[root@epic-phy-9-21 tmp]# uptime 
 16:53:12 up 99 days,  6:44, 12 users,  load average: 11.85, 10.97, 10.58

过去的1分钟、5分钟、15分钟系统的load值;


CPU利用率

[root@epic-phy-9-21 tmp]# top | grep  Cpu
%Cpu(s):  8.1 us,  0.8 sy,  0.0 ni, 85.9 id,  5.1 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu(s): 31.2 us,  1.7 sy,  0.0 ni, 66.4 id,  0.7 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu(s): 31.5 us,  2.0 sy,  0.0 ni, 65.8 id,  0.8 wa,  0.0 hi,  0.0 si,  0.0 st
%Cpu(s): 31.1 us,  1.9 sy,  0.0 ni, 65.3 id,  1.6 wa,  0.0 hi,  0.0 si,  0.0 st

参数描述: - us(User Time): 用户时间,占比越高越好; - sy(System Time): 系统时间, 意味着系统设计不合理; - ni(Nice Time): 进程优先级调整所花费的时间; - id(Idle Time): 空闲时间; - wa(Waiting Time): CPU在等待IO操作所花费的时间,过高表示系统设计不合理; - hi(Hart irq time): 硬件中断占用时间; - si(Soft irq time):软件中断占用时间; - st(Steal time): 丢失时间,与硬件虚拟化有关。:表示该虚拟机与该宿主机上的其他虚拟机CPU竞争激烈;