快速云:五分钟了解几款磁盘测试与IO查看的工具
这期来讲一下云服务器中linux架构下,跟磁盘相关的几款测试工具,包括运维经常使用的IO测试工具FIO,已经简单轻量化的测试工具DD,以及一个IO相关状态的查看工具IOSTAT,以下笔者就为您介绍这款工具的使用
存储的使用中需要关心什么指标
磁盘性能指标—IOPS
IOPS (Input/Output Per Second)即每秒的输入输出量(或读写次数),是衡量磁盘性能的主要指标之一。IOPS是指单位时间内系统能处理的I/O请求数量,一般以每秒处理的I/O请求数量为单位,I/O请求通常为读或写数据操作请求。
随机读写频繁的应用,如小文件存储(图片)、OLTP数据库、邮件服务器,关注随机读写性能,IOPS是关键衡量指标。
顺序读写频繁的应用,传输大量连续数据,如电视台的视频编辑,视频点播VOD(Video On Demand),关注连续读写性能。数据吞吐量是关键衡量指标。
IOPS和数据吞吐量适用于不同的场合:
读取10000个1KB文件,用时10秒 Throught(吞吐量)=1MB/s ,IOPS=1000 追求IOPS
读取1个10MB文件,用时0.2秒 Throught(吞吐量)=50MB/s, IOPS=5 追求吞吐量
磁盘服务时间
传统磁盘本质上一种机械装置,如FC, SAS, SATA磁盘,转速通常为5400/7200/10K/15K rpm不等。影响磁盘的关键因素是磁盘服务时间,即磁盘完成一个I/O请求所花费的时间,它由寻道时间、旋转延迟和数据传输时间三部分构成。此处就不一一展开介绍了。
影响测试的因素
实际测量中,IOPS数值会受到很多因素的影响,包括I/O负载特征(读写比例,顺序和随机,工作线程数,队列深度,数据记录大小)、系统配置、操作系统、磁盘驱动等等。因此对比测量磁盘IOPS时,必须在同样的测试基准下进行,即便如此也会产生一定的随机不确定性
FIO的具体介绍与安装
FIO是测试IOPS的非常好的工具,用来对硬件进行压力测试和验证,支持13种不同的I/O引擎,包括:sync,mmap, libaio, posixaio, SG v3, splice, null, network, syslet, guasi, solarisaio 等等,一般用于裸盘的测试较多,生产环境中测试时请谨慎使用,一定要了解该工具的测试方法,避免出现覆盖磁盘数据的情况
安装Fio
使用yum安装或者源码,二进制包等安装都可以,这里我们使用源码包安装为例
wget http://brick.kernel.dk/snaps/fio-2.2.5.tar.gz
yum install libaio-devel
tar -zxvf fio-2.2.5.tar.gz
cd fio-2.2.5
make
make install
Fio的简单使用
随机读:(可直接用,向磁盘写一个2G文件,10线程,随机读1分钟,给出结果)
fio -filename=/tmp/test_randread -direct=1 -iodepth 1 -thread -rw=randread -ioengine=psync -bs=16k -size=2G -numjobs=10 -runtime=60 -group_reporting -name=mytest
顺序读:
fio -filename=/dev/sdb1 -direct=1 -iodepth 1 -thread -rw=read -ioengine=psync -bs=16k -size=2G -numjobs=10 -runtime=60 -group_reporting -name=mytest
随机写:
fio -filename=/dev/sdb1 -direct=1 -iodepth 1 -thread -rw=randwrite -ioengine=psync -bs=16k -size=2G -numjobs=10 -runtime=60 -group_reporting -name=mytest
顺序写:
fio -filename=/dev/sdb1 -direct=1 -iodepth 1 -thread -rw=write -ioengine=psync -bs=16k -size=2G -numjobs=10 -runtime=60 -group_reporting -name=mytest
混合随机读写:
fio -filename=/dev/sdb1 -direct=1 -iodepth 1 -thread -rw=randrw -rwmixread=70 -ioengine=psync -bs=16k -size=2G -numjobs=10 -runtime=60 -group_reporting -name=mytest -ioscheduler=noop
dd的具体介绍与安装
dd工具是一个linux自带的命令,一般无需安装。当写入到驱动盘的时候,我们简单的从无穷无用字节的源 /dev/zero 读取,当从驱动盘读取的时候,我们读取的是刚才的文件,并把输出结果发送到无用的 /dev/null。在整个操作过程中, DD 命令会跟踪数据传输的速度并且报告出结果。
dd工具在实际运维中的使用
一般可以用来测试直写的性能,因为缓存这一层往往是一个影响的因素。
测试纯写入性能
dd if=/dev/zero of=test bs=8k count=10000 oflag=direct
测试纯读取性能
dd if=test of=/dev/null bs=8k count=10000 iflag=direct
另外如果是测试实际应用层面的读写的时候,可以使用以下的命令,经过缓存层,更符合实际的情况。
测试磁盘写能力
time dd if=/dev/zero of=/testw.dbf bs=4k count=100000
测试磁盘读能力
time dd if=/dev/sdb of=/dev/null bs=4k
IOstat的具体介绍与安装
iostat也算是比较重要的查看块设备运行状态的工具,使用yum install iostat即可快速安装。相信大多数使用Linux的同学都用过这个工具,或者听说过这个工具。
dd工具在实际运维中的使用
我使用一张图来展示体现出来的效果。
下面是几个重点关注参数
1、iowait% 表示CPU等待IO时间占整个CPU周期的百分比,如果iowait值超过50%,或者明显大于%system、%user以及%idle,表示IO可能存在问题。
2、avgqu-sz 表示磁盘IO队列长度,即IO等待个数。
3、await 表示每次IO请求等待时间,包括等待时间和处理时间
4、svctm 表示每次IO请求处理的时间
5、%util 表示磁盘忙碌情况,一般该值超过80%表示该磁盘可能处于繁忙状态。
以上就是关于几款磁盘测试与IO查看的工具,希望读者朋友看完这篇文章后有所启发。
快速云:五分钟了解几款磁盘测试与IO查看的工具相关推荐
- android自定义美颜相机完整程序,Android OpenGL ES从入门到进阶(一)—— 五分钟开发一款美颜相机...
源码链接:https://github.com/smzhldr/AGLFramework 一.前言 商店里有数十款的美颜相机类产品,其实现原理基本上都是以OpenGL ES为核心的特效处理,大神可以忽 ...
- android 美颜相机开发,Android OpenGL ES从入门到进阶(一)—— 五分钟开发一款美颜相机...
源码链接:https://github.com/smzhldr/AGLFramework 一.前言 商店里有数十款的美颜相机类产品,以及像抖音,唱吧之类带有视频的软件,功能很强大,其实现原理基本上都是 ...
- Android OpenGL ES从入门到进阶(一)—— 五分钟开发一款美颜相机
源码链接:https://github.com/smzhldr/AGLFramework 基础知识入门篇(Hello Triangle) 渲染纹理到屏幕 GLSurfaceView预览相机 简单易用的 ...
- 10分钟上手一款好用的服务器节点监测工具(Server 酱)
Server 酱简介 Server酱,英文名「ServerChan」,是一款「手机」和「服务器」.「智能设备」之间的通信软件.说人话?就是从服务器.路由器等设备上推消息到手机的工具.开通并使用上它,只 ...
- 五分钟认清三款主流 Java Virtual Machine丨HotSpot、JRockit、J9
可运行由 Java 语言编写出的程序的虚拟机可不仅仅只有 HotSpot 一款!包括本文内所介绍的 HotSpot.JRockit.J9 三款虚拟机也非全部!只不过文内的三款是我们一直在使用或者之后极 ...
- 微视点:网传社交游戏公司“五分钟”面临倒闭,引发各方热议
曾凭借<开心农场>一举成名的社交游戏研发公司"五分钟",被传团队解散,相关业务已出手,"濒临倒闭".一夜之间负面消息蜂拥而至,引发业内人士激烈讨论. ...
- 【Microsoft Azure 的1024种玩法】七十四.五分钟在Azure Virtual Machines中快速部署一套软件项目管理及自动构建工具
[简介] Apache Maven由 Apache 软件基金会所提供的一个软件项目管理及自动构建工具,Maven 为开发者提供了一套完整的构建生命周期框架.开发团队几乎不用花多少时间就能够自动完成工程 ...
- markdown 本地链接_五分钟快速入门Markdown
前言 开篇第一问,什么是markdown?我为什么选择用它而不是用word? markdown是一种极为简洁的标记语言,使用markdown可以更集中于写作内容本身而不必过分纠结于格式排版问题,可以把 ...
- 五分钟搞定:Centos中Kafka和Zookeeper的快速安装教程
[提前声明] 文章由作者:张耀峰 结合自己生产中的使用经验整理,最终形成简单易懂的文章 写作不易,转载请注明,谢谢! 代码案例地址: ?https://github.com/Mydreamandrea ...
最新文章
- 使用wireshark工具获得直连设备的IP地址
- Cortex-M3 异常中断向量表
- Tensorflow之调试(Debug) tf.py_func()
- 如何下载今日头条视频
- 论文浅尝 | HEAD-QA: 一个面向复杂推理的医疗保健数据集
- 经典算法系列三----堆排序
- web前端开发技术要求会什么
- 数据库表在join时的三种方式
- 【Ubuntu】Ubuntu16.04+VMware+Win10安装及配置教程
- atitit.薄伽梵歌overview attilax 读后感
- 树莓派 4b 可执行文件 无法双击运行_树莓派01 - 树莓派系统安装
- 纯CSS3浮雕质感的立体文字旋转动画
- fw325r没有虚拟服务器,迅捷fw325r路由器设置完没有网怎么办?
- ajax 传实体对象,前端ajax或axios发送数据后端实体类接受(实例和报错原因)
- rtf转换成html,转换Rtf到HTML
- 清除本地dns(Mac,win)
- 海康威视错误代码说明
- 写个日志请求切面,前后端甩锅更方便
- 华为云计算基础之Fusion Compute介绍
- 怎么分辨“阳虚”和“阴虚”,看您属于哪一种?
热门文章
- 叠瓦式硬盘 微型计算机,叠瓦式硬盘到底多坑人,你还敢乱买吗?我来告诉你原因...
- 推荐一款我一直在用的办公必备的小众便签软件——好用便签
- 拼多多店群如何精细化运营,掌握蓝海选品思路轻松月入过万
- 快手爬票(爬取火车票信息)
- java二叉树的深度_Java实现二叉树的深度计算
- 【天光学术】信息管理论文:基于大数据的车联网个性化信息服务探讨(节选)
- 上计算机课的日记,科学网—上计算机课,不接触计算机----日记摘抄(161) - 武夷山的博文...
- 郑州的python培训班
- 开发个人量化交易系统之路
- jquery项目移动端适配