【Linux】sysstat--系统性能监控神器(性能信息收集)--iostat、sar、top、htop
目录
sysstat 工具简介
Linux Sysstat是linux系统免费提供用于收集主机性能的一个软件包,不是默认安装的,需要自己安装。
sysstat 是
Linux 系统中的常用工具包。它的主要用途是观察服务负载,比如CPU和内存的占用率、网络的使用率以及磁盘写入和读取速度等。
sysstat 工具包中包含两类工具:
即时查看工具:iostat、mpstat、sar
累计统计工具:sar
也就是说,sar 具有这两种功能。因此,sar 是 sysstat 中的核心工具。
包含的工具
-
iostat
输出CPU的统计信息和所有I/O设备的输入输出(I/O)统计信息
-
mpstat
关于CPU的详细信息(单独输出或者分组输出)
-
pidstat
关于运行中的进程/任务、CPU、内存等的统计信息
-
sar
保存并输出不同系统资源(CPU、内存、IO、网络、内核等)的详细信息
-
sadc
系统活动数据收集器,用于收集sar工具的后端数据
-
sa1
系统收集并存储sadc数据文件的二进制数据,与sadc工具配合使用
-
sa2
配合sar工具使用,产生每日的摘要报告
-
sadf
用于以不同的数据格式(CVS或者XML)来格式化sar工具的输出
-
sysstat
sysstat 工具包的 man 帮助页面。
-
nfsiostat
NFS(Network File System)的I/O统计信息
-
cifsiostat
CIFS(Co
安装
-
CentOS
通过
yum
安装:yum install sysstat
或者通过
rpm
包安装:wget -c http://pagesperso-orange.fr/sebastien.godard/sysstat-11.7.3-1.x86_64.rpm sudo rpm -Uvh sysstat-11.7.3-1.x86_64.rpm
推荐
rpm
包方式安装,因为能随时安装最新版本。 -
Ubuntu
apt-get install sysstat
查看是否成功安装:
mpstat -V
sysstat version 9.0.4
(C) Sebastien Godard (sysstat <at> orange.fr)
sar 的累计统计
sar知识统一放到下文:
【linux】Linux资源监控统计--sar|cpu+内存+换页+文件+IO队列+设备负载_bandaoyu的note-CSDN博客
iostat
iostat 用于输出CPU和磁盘I/O相关的统计信息。命令格式为:
iostat [ -c | -d ] [ -k | -m ] [ -t ] [ -V ] [ -x ] [ device [ ... ] | ALL ]
[ -p [ device | ALL ] ] [ interval [ count ] ]
其中:
常用选项:
选项 | 说明 |
---|---|
-c | 仅显示CPU统计信息。与-d选项互斥。 |
-d | 仅显示磁盘统计信息。与-c选项互斥。 |
-k | 以KB为单位显示每秒的磁盘请求数。默认单位块。 |
-m | 以MB为单位显示每秒的磁盘请求数。默认单位块。 |
-p {device|ALL} | 用于显示块设备及系统分区的统计信息。与-x选项互斥。 |
-t | 在输出数据时,打印搜集数据的时间。 |
-V | 打印版本号信息。 |
-x | 输出扩展信息。 |
iostat 说明
-
interval : 为取样时间间隔
-
count : 为输出次数,若指定了取样时间间隔且省略此项,将不断产生统计信息
-
mpstat
mpstat 的命令格式mpstat 输出每一个 CPU 的运行状况,为多处理器系统中的 CPU 利用率提供统计信息。命令格式为:
mpstat [ -P { cpu | ALL } ] [ -V ] [ interval [ count ] ]
其中:
-
interval : 为取样时间间隔。指定0则输出自系统启动后的一个统计信息。
-
count : 为输出次数。若指定了取样时间间隔且省略此项,将不断产生统计信息。
常用选项:
选项 说明 -P {cpu|ALL} 指定 CPU。用 CPU-ID 指定,CPU-ID 是从0开始的,即第一个CPU为0。ALL 表示所有CPU。 -V 输出版本号信息。
mpstat 使用举例下面给出几个例子:
# 输出所有 CPU 使用情况的统计信息。 # mpstat Linux 2.6.18-53.el5 (cnetos5) 01/21/2008 10:39:06 AM CPU %user %nice %sys %iowait %irq %soft %steal %idle intr/s 10:39:06 AM all 0.10 0.04 0.31 0.06 0.04 0.01 0.00 99.45 1012.99 # 输出第一个 CPU 使用情况的统计信息。 # mpstat -P 0 Linux 2.6.18-53.el5 (cnetos5) 01/21/2008 10:41:03 AM CPU %user %nice %sys %iowait %irq %soft %steal %idle intr/s 10:41:03 AM 0 0.09 0.02 0.40 0.09 0.08 0.01 0.00 99.32 1012.79 # 每隔2秒输出所有CPU的统计信息,共输出5次。 # mpstat 2 5 # 每隔2秒输出一次所有CPU的统计信息,共输出5次。 # mpstat -P ALL 2 5 # 每隔2秒输出一次第二个CPU的统计信息,共输出5次。 # mpstat -P 1 2 5
mpstat 输出项说明CPU 在多CPU系统里,每个CPU有一个ID号,第一个CPU为0。all表示统计信息为所有CPU的平均值。 %user 显示在用户级别运行所占用CPU总时间的百分比。 %nice 显示在用户级别,用于nice操作,所占用CPU总时间的百分比。 %sys 显示在kernel级别运行所占用CPU总时间的百分比。注意:这个值并不包括服务中断和softirq。 %iowait 显示用于等待I/O操作时,占用CPU总时间的百分比。 %irq 显示用于中断操作,占用CPU总时间的百分比。 %soft 显示用于softirq操作,占用CPU总时间的百分比。 %steal 管理程序(hypervisor)为另一个虚拟进程提供服务而等待虚拟 CPU 的百分比。 %idle 显示CPU在空闲状态,占用CPU总时间的百分比。 intr/s 显示CPU每秒接收到的中断总数。 -
参考:https://www.jianshu.com/p/734508aed8d8
sysstat 工具详细说明_菜鸟先飞-CSDN博客_sysstat
Linux Sysstat性能收集的调整方法-wood016-ChinaUnix博客
Sysstat性能监控工具包中20个实用命令阿里云开发者社区-云计算社区-阿里云
推荐文章:Linux 性能优化工具包 sysstat 以及 sysstat 服务(sar 命令解析)_Biao-CSDN博客 《Linux 性能优化工具包 sysstat 以及 sysstat 服务(sar 命令解析)》
sysstat 升级:博文阅读密码验证 - 博客园
https://segmentfault.com/a/1190000014603068
图形化查看:linux 牛叉的监控指标图形化渲染工具kSar - 云+社区 - 腾讯云
11.33 kSar 命令
11.33.1 命令详解
sar 命令的输出能够用于识别服务器瓶颈。但是,分析 sar 命令提供的信息可能比较困难,所以要使用 kSar 工具。kSar 工具可以将 sar 命令的输出绘制成基于时间周期的、易于理解的图表。
官网介绍:
https://github.com/vlsi/ksar
11.33.2 kSar使用