CPU及磁盘性能监测

红米3年前技术文章1255

一、简述

sysstat 包含了常用的 Linux 性能工具,用来监控和分析系统的性能。本次内容会用到这个包的两个命令 mpstat 和iostat。

  • mpstat 是一个常用的多核 CPU 性能分析工具,用来实时查看每个 CPU 的性能指标,以及所有 CPU 的平均指标。

  • iostat是一个常用的磁盘读写性能分析工具,用来查看磁盘读写以及I/O等性能指标

二、CPU性能—mpstat

1、安装sysstat

yum install -y sysstat       #安装mpstat命令软件

2、参数使用

-P           #{cpu  ALL}
internval    # 相邻两次采样的间隔时间
count        # 采样的次数,count只能和internval一起使用

3、输出结果参数解释

%usr  #用户所有使用的CPU百分比
%nice  #使用 nice 值的 CPU 的百分比。
%sys  #内核进程使用的 CPU 百分比。
%iowait  #等待进行 I/O 所使用的 CPU 时间百分比。
%irq  #表示用于处理系统中断的CPU百分比
%soft  #表示用于软件中断的CPU百分比
%steal  #虚拟机强制CPU等待的时间百分比
%guest  #虚拟机占用CPU时间的百分比
%gnice  #CPU运行niced guest虚拟机所花费的时间百分比
%idle  #CPU的空闲时间的百分比

4、应用结果image_bzRKzlBER_.png

解释:此页面可以看到,此服务器存在2个cpu,所有cpu的评价空闲率为86.80%。

三、磁盘性能—iostat

1、iostat参数使用

-d:仅显示磁盘统计信息
-h:使用NFS(Network File System网络文件系统)的输出报告,更加友好可读。需要使用-n参数开启NFS。
-k:以 kb 为单位显示,默认情况下,iostat的输出是以block作为计量单位,加上这个参数可以以kb作为计量单位显示。(该参数仅在linux内核版本2.4以后数据才是准确的)
-m:以 mb 为单位显示(该参数仅在linux内核版本2.4以后数据才是准确的)
-N:显示磁盘阵列(LVM) 信息。
-V:显示版本信息
-x:显示更详细的磁盘报告信息,默认只显示六列,加上该参数后会显示更详细的信息(该参数仅在linux内核版本2.4以后数据才是准确的)
-n:显示NFS(Network File System网络文件系统) 使用情况(该参数仅在linux内核版本2.6.17以后有效)

2、输出结果参数

tps           #该设备每秒的传输次数
kB_read/s     #每秒从设备读取的数据量
kB_wrtn/s     #每秒向设备写入的数据量
kB_read       #读取的总数据量
kB_wrtn       #写入的总数据量
avgqu-sz      #平均I/O队列长度,即IO等待个数。数值越低越好
await         #每一个IO请求的处理的平均时间(单位ms)
%util         #在统计时间内所有处理IO时间,除以总共统计时间

3、结果展示

a.每隔 2秒刷新显示详细信息,显示3次

image_m6opEy0tg0.png

b.吞吐量计算:rMB/s+wMB/s

c.IOPS计算:r/s+w/s

d.IO 瓶颈:如果%iowait的值过高,表示硬盘存在I/O瓶颈

四、磁盘性能—iotop

1、安装

yum -y install iotop

2、参数介绍

-o:只显示有io操作的进程
-b:批量显示,无交互,主要用作记录到文件。
-n NUM:显示NUM次,主要用于非交互式模式。
-d SEC:间隔SEC秒显示一次。
-p PID:监控的进程pid。
-u USER:监控的进程用户。
-P --processes  #只显示进程

3、结果参数介绍

Total DISK READ:        #从磁盘中读取的总速率
Total DISK WRITE:       #往磁盘里写入的总速率
Actual DISK READ:      #从磁盘中读取的实际速率
Actual DISK WRITE:     #往磁盘里写入的实际速率
TID:                    #线程ID,按p可转换成进程ID
PRIO:                  #优先级
USER:                  #线程所有者
DISK READ:              #从磁盘中读取的速率
DISK WRITE:             #往磁盘里写入的速率
SWAPIN:                 #swap交换百分比
IO>:                   #IO等待所占用的百分比

4、结果展示

a.查看wget进程的io情况

image_GI1cBxmm97.png

b. 查看所有进程的io情况

image_UzuC0tjZci.png



相关文章

Tcpdump抓包总结

Tcpdump抓包总结

一、简介tcpdump是一个用于截取网络分组,并输出分组内容的工具。凭借强大的功能和灵活的截取策略,使其成为类UNIX系统下用于网络分析和问题排查的首选工具 tcpdump提供了源代码,公开了接口,因...

mysql插入之前先测试环境试试

在生产环境中直接执行数据库操作可能会引起一系列问题,比如性能下降、数据不一致甚至系统崩溃。因此,在实际操作前在测试环境中进行彻底的测试非常重要。测试环境准备:确保测试环境与生产环境尽可能一致。这包括硬...

大数据基础之HBase入门介绍

大数据基础之HBase入门介绍

一、HBase简介HBase – Hadoop Database,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群。HB...

Hadoop3.2.4纠删码基础操作(二)

Hadoop3.2.4纠删码基础操作(二)

1、纠删码基础操作纠删码策略是与具体的路径(path)相关联的。也就是说,如果我们要使用纠删码,则要给一个具体的路径设置纠删码策略,后续,所有往此目录下存储的文件,都会执行此策略。1.首先我们在HDF...

HBase导出表和备份表操作

HBase导出表和备份表操作

HBase提供了几种导出数据的方式,包括使用HBase自带的工具和使用HBase的API。本文主要是讲的使用HBase自带的工具进行导出首先我们创建一个表 插入一些数据hbase shelllistc...

Ubuntu 网卡启动及配置

Ubuntu 网卡启动及配置

问题分析打开虚拟机后发现没有网卡网络。查看网卡信息sudo ip link set ens33 up1得到本机的所有网卡信息,例如我这边网卡为ens33启动网卡启动网卡后发现依然网卡没有IP地址。配置...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。