CPU及磁盘性能监测

红米2年前技术文章1053

一、简述

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



相关文章

SQL Server优化入门系列(五)—— SQL Server的执行计划

SQL Server优化入门系列(五)—— SQL Server的执行计划

定位到TOP SQL后,怎么优化呢?我们需要分析SQL的执行计划,制定相应的优化策略。这篇文章中,我们将介绍查看SQL Server执行计划的几种方法。本文测试案例中使用了AdventureWorks...

pg_probackup

一、pg_probackup概述pg_probackup 是一款免费的postgres数据库集群备份工具,与其他备份工具相比,它主要有如下一些优势:提供增量备份,增量备份一定程度上可以节省磁盘空间的使...

网络策略NetworkPolicy

网络策略NetworkPolicy

目的:为了实现细粒度的容器间网络访问隔离策略。引用:1.3版本NetworkPolicy机制 -> 1.8版本networking.k8s.io/v1稳定版本功能:对pod、ns之间网络通信限制...

MySQL运维实战(2.4) SSL认证在MySQL中的应用

MySQL支持使用tls进行通信。tls主要有几个作用对客户端、服务端之间的通信数据进行加密。包括客户端发往服务端的SQL,服务端返回给客户端的数据。客户端可以验证服务端的身份。服务端也可以验证客户端...

CDP实操--HDFS角色迁移

CDP实操--HDFS角色迁移

    hdfs角色迁移功能在cdp页面中就可以实现该功能,迁移的时间与namenode元数据大小,以及block数量多少有关,注意迁移过程中集群需要关闭,要预留出操作时间窗口。1、页面选择迁移角色2...

CDH时钟同步问题

CDH时钟同步问题

首先执行如下命令:查看chronyd是否启动systemctl status chronyd如果没启动执行如下命令启动systemctl restart chronyd每台检查时间状态chronyc...

发表评论    

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