首页 > 其他分享 >磁盘I/O性能监控的指标

磁盘I/O性能监控的指标

时间:2023-04-25 23:08:55浏览次数:35  
标签:队列 性能 监控 服务器 磁盘 数据 硬盘

服务器硬盘是磁盘资源中最慢的组件,在企业数据中心,注意仔细设计存储子系统,不要让它成为主要性能瓶颈,而最理想的办法是使用SAN,即使预算不允许,也要想办法确保磁盘资源争用不会导致虚拟机(VM)瘫痪。

首先应将宿主操作系统安装到专用硬盘上,注意不是专用卷,确保宿主操作系统不会与虚拟机抢夺磁盘资源。如果托管服务器可以连接外置存储,还可以考虑将宿主操作系统的分页文件移动到外置存储的专用驱动器上。

RAID阵列是满足虚拟服务器性能所必需的,至少应该选择使用RAID1,但“RAID1+RAID0”(RAID10)是更好的选择,因为它能提供容错,并且性能开销也比RAID5小。如果可以的话,给每个虚拟服务器分配一个专用磁盘阵列最好。

使用固定大小的虚拟硬盘来配置虚拟服务器会获得额外的性能提升。虽然动态扩展虚拟硬盘很方便,但对服务器的性能是有影响的。

磁盘I/O性能监控的指标主要包括以下七个。

1、每秒I/O数(IOPS或TPS)

对于磁盘来说,一次磁盘的连续读或者连续写称为一次磁盘I/O,磁盘的IOPS就是每秒磁盘连续读次数和连续写次数之和。当传输小块不连续数据时,该指标有重要参考意义。

2、吞吐量

吞吐量即硬盘传输数据流的速度,传输数据为读出数据和写入数据的和。其单位一般为kbit/s、MB/s等。当传输大块不连续数据时,该指标有重要参考作用。

3、平均I/O数据尺寸

平均I/O数据尺寸为吞吐量除以I/O数目,该指标对揭示磁盘使用模式有重要意义。一般来说,如果平均I/O数据尺寸小于32KB,可认为磁盘使用模式以随机存取为主;如果平均每次I/O数据尺寸大于32KB,可认为磁盘使用模式以顺序存取为主。

4、磁盘活动时间百分比

磁盘处于活动时间的百分比即磁盘利用率,磁盘在数据传输和处理命令(如寻道)时处于活动状态。磁盘利用率与资源争用程度成正比,与性能成反比。也就是说磁盘利用率越高,资源争用就越严重,性能就越差,响应时间就越长。一般来说,如果磁盘利用率超过70%,应用进程将花费较长的时间等待I/O完成,因为绝大多数进程在等待过程中被阻塞或休眠。

5、服务时间

服务时间即磁盘读或写操作执行的时间,包括寻道、旋转时延和数据传输等时间。其大小一般与磁盘性能有关,CPU/内存的负荷也会对其有影响,请求过多也会间接导致服务时间的增加。如果该值持续超过20ms,一般认为会对上层应用产生影响。

6、I/O等待队列长度

I/O等待队列长度即待处理的I/O请求数目,如果I/O请求压力持续超出磁盘处理能力,该值将增加。如果单块磁盘的队列长度持续超过2,一般认为该磁盘存在I/O性能问题。需要注意的是,如果该磁盘为磁盘阵列虚拟的逻辑驱动器,需要再将该值除以组成这个逻辑驱动器的实际物理磁盘数目,以获得平均单块硬盘的I/O等待队列长度。

7、等待时间

等待时间指磁盘读或写操作等待执行的时间,即在队列中排队的时间。如果I/O请求持续超出磁盘处理能力,意味着来不及处理的I/O请求不得不在队列中等待较长时间。

通过监控以上指标,并将这些指标数值与历史数据、经验数据以及磁盘标称值对比,必要时结合CPU、内存、交换分区的使用状况,不难发现磁盘I/O潜在或已经出现的问题。但如何避免和解决这些问题呢?这就需要利用磁盘I/O性能优化方面的知识和技术了。限于篇幅,在这里仅列出一些常用的优化方法以供参考:

  • 调整数据布局,尽量将I/O请求较合理地分配到所有物理磁盘中。
  • 对于RAID磁盘阵列,尽量使应用程序I/O等于条带尺寸或者为条带尺寸的倍数。并选取合适的RAID方式,如RAID10、RAID5。
  • 增大磁盘驱动程序的队列深度,但不要超出磁盘的处理能力,否则部分I/O请求会因为丢失而重新发出,这将会降低性能。
  • 应用缓存技术减少应用存取磁盘的次数,缓存技术可应用在文件系统级别或者应用程序级别。
  • 由于大多数数据库中已包括经优化后的缓存技术,数据库I/O宜直接存取原始磁盘分区(raw partition)或者利用绕过文件系统缓存的DIO(Direct I/O)技术。
  • 利用内存读写带宽远比直接磁盘I/O操作性能优越的特点,将频繁访问的文件或数据置于内存中。

标签:队列,性能,监控,服务器,磁盘,数据,硬盘
From: https://blog.51cto.com/key3feng/6225505

相关文章

  • 监控自建MySQL慢查询日志并上报到企业微信集群
    shell脚本如下#!/bin/bash#设置企业微信机器人webhook地址和机器人名称WEBHOOK_URL="你的WEBHOOK_URL"BOT_NAME="MySQLSlowLogBot"#设置慢日志文件路径和记录已发送行数的文件路径LOG_FILE="/data/mysql/mysql-slow-log.log"SENT_LINE_FILE="/tmp/mysql-slow-log.sent......
  • 考研408操作系统-磁盘相关知识点
    一、磁盘的结构二、磁盘调度算法先来先服务算法最短寻找时间优先扫描算法(SCAN)LOOK磁盘调度算法循环扫描算法(C-SCAN)C-LOOK磁盘调度算法三、减少磁盘延迟时间的方法交替编号错位命名四、磁盘的管理五、固态硬盘......
  • tracecompass+lttng 分析系统性能问题
    主要是一个测试学习,对于基于babeltrace的我以前写过简单的使用,以下主要是基于tracecompass进行可视化分析安装lttng可以直接使用centos系统自带的,但是推荐使用EfficiOS源wget-P/etc/yum.repos.d/https://packages.efficios.com/repo.files/EfficiOS-RHEL7-x86-......
  • 常见引起性能的问题
    数据库端性能非常低   优化数据库服务器端的配置参数   应用服务器端数据连接池的配置参数修改   应用服务器端的sql审核,建立更好的索引以及修改不好的sql语句:关联表过多,查询的数据量过大,表设计不合理等   应用服务器端拆解过大的表,分为多张表,甚至把一个数据库......
  • 可观测性的力量:性能和可靠性!
    可观测性已成为现代IT的一个重要方面,预计其重要性在未来几年只会增加。实时监控和了解系统行为的能力为组织提供了大量信息,可以帮助他们提高网络和应用程序的性能、可靠性和整体健康状况。通过收集和分析来自各种来源的数据,可观察性使组织能够在问题升级为重大问题之前主动解决问......
  • 久壳机房--动环监控系统你不能不知道的事
    ​​近年来,随着信息化、数字化、云计算、物联网等技术在各行业的快速发展,通信机房、动力机房、边缘计算机房、数据中心机房等蓬勃发展。而今日我们要讲的是智能机房的动环监控系统,动环监控系统又称机房动环、机房动力环境监控系统、动环监控等,是指对各机房的动力、环境、安防进......
  • AP3301 DC-DC降压IC 0.6-5.5V 高效率 低功耗 监控驱动应用
    FeaturesUpto95%Efficiency CurrentModeOperationforExcellentLineandLoadTransientResponse 700mAOutputCurrent LowQuiescentCurrent:200μA ~ 5.5V AutomaticPWM/PFMModeSwitching NoSchottkyDiodeRequired FrequencyOperation:1.0MHzforFixe......
  • Linux性能优化篇-了解CPU上下文切换
     我们了解到导致平均负载,有可能是以下几种方面:CPU密集型(造成cpu利用率升高,可以理解)I/O密集型(io和cpu互斥的,也造成cpu利用率增高-不可中断进程的)大量进程(???)根据平均负载的解释,单位时间内的处于可运行的进程和不可中断进程的进程数,Systemloadaveragesistheaveragenumberofproc......
  • 音频处理库性能对比:计算mel频谱的速度哪个更快?
    介绍音频信号处理在各种应用中都发挥着重要的作用,如语音识别、音乐信息检索、语音合成等。其中,Mel频谱是一种常用的频域特征表示方法,用于描述人类听觉系统对频率的敏感程度。在深度学习音频领域,mel频谱是最常用的音频特征。在本文中,我们将对四个常用的音频处理库——audioflux、......
  • SNMPV3监控华为设备只能监控到部分数据的解决方法
    最近在做Zabbix监控二次开发的一个项目,需要用到snmp监控被管设备的各种信息,比如风扇状态等PS:本项目之前配置的都是SNMPV3协议(即需要加密的snmp)经华为资料得到它们的MIB库(一个snmp协议的oid集合),发现并不能根据他给的oid获取数据于是用snmpWalk爬取所有数据,发现只能爬到一部分,并......