sar是系统资源使用率监控工具,是系统管理员在调优和性能诊断过程中必不可少的一种工具。sar所收集的数据可以在sysstat工具包里分析,这个工具包是一个性能分析工具的集合。在服务器上,通常预装有sysstat包。
sar最为常见的使用场景是在Linux服务器上。通过查看sar命令的统计结果,系统管理员可以知道服务器在过去的时间段内的CPU使用情况、内存使用情况、磁盘IO、网络流量等情况。同时,sar可以将数据输出成报告方便后续的分析。
例如,当服务器出现负载高的情况时,通过sar的统计结果,系统管理员可以知道负载高的原因,比如是因为CPU使用率过高或者磁盘IO过大等等。他们可以快速地调整服务器的配置和优化性能,让服务器更加高效的工作。
sar的命令很多,其中常用的有:
sar -u:查看CPU使用率信息
sar -f /var/log/sa/saXX:查看指定日期的性能数据报表(XX为两位日期)
sar -d:查看磁盘IO的使用情况
sar -n DEV:查看网络流量使用情况
sar -p:查看当前进程的活动情况
系统管理员在使用sar的时候需要对监测到的数据进行解读,以下是常用的参数说明:
CPU的User时间:
us表示用户模式,是一些绑定在最高特权级的进程的CPU时间。如果值特别高,可能说明有某个进程占用了很多CPU时间。
CPU的System时间:
sy表示内核模式,cpu花费在内核空间的处理时间。
CPU的Idle时间:
id表示CPU的空闲时间,如果值特别低,说明CPU正在满负荷运转。
内存的使用情况:
memused表示使用的总内存大小
kbbuffers表示由Linux内部管理的页面缓存大小
kbcached表示使用的高速缓存大小