1. 使用w查看系统负载
linux 日常运维管理技巧
<1> 监控系统状态
w/uptime 查看系统负载:第一行从左到右显示的信息依次为:时间、系统运行时间、登录用户数、平均负载。
第二行依次是:当前登录的用户名及其登录的地址。
系统负载: 三个数字。分别表示,1分钟系统的平均负载值,5分钟系统的平均负载值,15分钟系统的平均负载值。
重点是看第一个值,表示单位时间内使用CPU的活动进程数(在这里其实就是1分钟内),值越大就说明服务器压力越大。这个值只要不超过服务器的CPU数量就没有关系。
cat/proc/cpuinfo 查看CPU核数。查看的是逻辑CPU,不是物理CPU。
如果是0,代表1颗CPU;如果是1,代表2颗CPU.
2 vmstat 监控系统的状态
使用方法:vmstat 1 表示每一秒钟,显示一次。
分为6个部分:procs、memory、swap、io、system和cpu
procs 显示进程的相关信息:
r(run) 表示运行或等待CPU时间片的进程数。
b(block) 表示等待资源的进程数,这个资源指的是I/O,内存等。
memory 显示内存的相关信息:
swpd: 表示切换到交换分区中的内存数量,单位为KB.
free: 表示当前空闲的内存数量,单位为KB。
buff: 表示(即将写入磁盘的)缓冲大小,单位为KB.
cache: 表示(从磁盘中读取的)缓冲大小,单位KB.
swap 显示内存的交换情况
si: 表示由交换区写入内存的数据量,单位为KB.
so:表示由内存写入交换区的数据量,单位为KB.
io 显示磁盘的使用情况
bi: 表示从块设备读取数据的量(读磁盘), 单位为kb.
bo: 表示从块设备写入数据的量(写磁盘), 单位为kb.
system: 显示采集间隔内发生的中断次数
in: 表示在某一时间间隔内观测到的每秒设备的中断次数。
cs:表示每秒产生的上下文切换次数。
cpu : 显示CPU的使用状态。
us: 显示用户下所花费CPU的时间百分比
sy:显示系统花费CPU的时间百分比
id: 表示CPU处于空闲状态的时间百分比.
wa: 表示I/O等待所占用CPU的时间百分比
st:表示被偷走的CPU所占百分比(一般为0,不用关注)
重点关注:r, b和wa这3列。
3. TOP 命令显示进程所占的系统资源
top命令用于动态监控进程所占的系统资源,每隔3秒一次。它的特点是把占用系统资源(cpu、内存、磁盘I/O)最高的进程放到最前面。
RES : 这一项为进程所占物理内存的大小。
%MEM% 为使用内存的百分比。
top -c 可以查看到具体的命令。
4. 用sar 命令监控系统状态
sar 命令很强大,它可以监控系统几乎所有资源的状态,比如平均负载、网卡流量、磁盘状态、内存使用等。
与其他系统状态监控工具不同,它可以打印历史信息,可以显示