[转帖]阿里云SSD云盘性能测试:每GB空间30个IOPS

阿里,ssd,云盘,性能,测试,gb,空间,iops · 浏览次数 : 0

小编点评

# FIO测试性能 **FIO测试性能**是测试IOPS的非常好的工具,用来用来对硬件进行压力测试和验证,支持13种不同的I/O引擎,包括:sync,mmap,&libaio,&posixaio,&SG&v3,&splice,&null,&network,&syslet,&guasi,&solarisaio等。 **FIO测试性能**支持以下功能: *随机读写 *混合读写 *顺序读写 *顺序写写 **FIO测试性能**的详细说明如下: ***filename=/dev/sdb1**:测试文件名称,通常选择需要测试的盘的data目录。 ***direct=1**:测试过程绕过机器自带的buffer。 ***rw=randrw**:测试随机写和读的I/O。 ***bs=16k**:单次io的块文件大小为16k。 ***size=200G**:测试文件大小为200G。 ***numjobs=30**:测试线程数量为30。 ***runtime=1000**:测试时间为1000秒。 ***group_reporting**:每个进程生成文件的数量。 **FIO测试性能**的优点: *测试结果更真实。 *优化速度。 *支持多种I/O引擎。 **FIO测试性能**的缺点: *需要使用大量的内存。 *测试过程可能会很慢。 **FIO测试性能**的建议: *选择使用合适的内存大小。 *使用优化的测试性能工具。

正文

http://www.piaoyi.org/linux/aliyun-SSD-disk-test.html

 

正 文:
   由于服务器需要高并发高IO,所以入手了阿里云的SSD云盘+IO优化的ECS实例。

 

   阿里云SSD云盘:单盘最高提供20000随机读写IOPS、256MB/s吞吐量的存储性能。采用分布式三副本机制,提供99.9999999%的数据可靠性。

 

    SSD云盘基于全SSD存储介质、利用阿里云飞天分布式存储技术,提供数据可靠性99.9999999%的高性能存储;该产品具备以下特点: 

 

高性能:单个SSD云盘最高提供20000随机读写IOPS、256MB/s吞吐量的存储性能
高可靠性:SSD云盘采用分布式三副本机制,提供99.9999999%的数据可靠性;
每GB提供30 IOPS:SSD云盘采用每GB空间30个IOPS的策略,30GB的SSD云盘拥有900 IOPS的性能、100GB的SSD云盘拥有3000 IOPS的性能、667GB的SSD云盘拥有最高20000 IOPS的性能
单块SSD云盘容量:单块SSD云盘最大提供1024GB存储空间;

 

    【SSD云盘和本地SSD盘 、普通云盘有啥区别? 】
如您对IO性能要求高、同时对数据可靠性要求也高,建议您选择SSD云盘,详细对比如下: 
阿里云SSD云盘性能测试:每GB空间30个IOPS

 

    【为什么我购买的SSD云盘性能效果不明显?】 
    SSD云盘采用每GB空间30个IOPS的策略,30GB的SSD云盘拥有900 IOPS的性能、100GB的SSD云盘拥有3000 IOPS的性能、667GB的SSD云盘拥有最高20000 IOPS的性能
    如果SSD云盘在用户原有的ECS实例上使用,性能最多能发挥出1000 IOPS的能力;如果想要1000以上的IOPS性能,SSD云盘必须与I/O优化的实例配合使用;

 

    购买后,我该如何测试磁盘性能? 
linux环境使用FIO做性能测试,测试命令:
fio -direct=1  -iodepth=64  -rw=randwrite  -ioengine=libaio  -bs=16k  -size=10G  -numjobs=1  -runtime=1000  -group_reporting  -name=/storage/iotest

这段测试的含义是测试随机写,每次写入大小16K,文件大小为10G,ioengine=libaio,运行1000秒(runtime),跳过buffer,其中 -name 指向到你想测试的磁盘上的文件。
上面这点代码比较耗时,我们可以缩减测试文件的大小和运行时间,改为:
fio -direct=1  -iodepth=64  -rw=randwrite  -ioengine=libaio  -bs=16k  -size=256M  -numjobs=1  -runtime=100  -group_reporting  -name=/storage/iotest

 

    下面以20G的ssd云盘(系统默认盘)测试,每秒写速bw=9456KB/s,IOPS=591。
阿里云SSD云盘性能测试:每GB空间30个IOPS

    下面以50G的ssd云盘测试,每秒写速bw=23731KB/s,IOPS=1483。确实如介绍的那样每1GB空间30个IOPS,50G就是50x30=1500IOPS:
阿里云SSD云盘性能测试:每GB空间30个IOPS

 

    我们再对比下购买阿里云的普通云盘的性能  bw=16284KB/s, iops=1017 :
阿里云SSD云盘性能测试:每GB空间30个IOPS

    普通云盘的性能 和磁盘大小无关,一般固定在16MB/s吞吐量、1000IOPS随机读写上下。

 

    我们再来对比下腾讯云的普通云硬盘的性能,每秒写速bw=41341KB/s,IOPS=2583:
阿里云SSD云盘性能测试:每GB空间30个IOPS

    我只能呵呵了,腾讯云的普通云硬盘达到了2500随机读写IOPS、41MB/s吞吐量,是阿里云普通云盘的性能的2倍以上。

 

    然后,我们来看一下腾讯云最新推出的高IO版本的服务器情况(测试默认系统8G ssd盘):
阿里云SSD云盘性能测试:每GB空间30个IOPS

    腾讯云的高IO版本硬盘达到了1.8万随机读写IOPS、300MB/s吞吐量!

 

    再看腾讯云高IO版的500G硬盘(ssd盘):
阿里云SSD云盘性能测试:每GB空间30个IOPS

    达到了6.3万随机读写IOPS、998MB/s吞吐量!

 

    注意,新的磁盘需要先挂载:Linux VPS如何挂载硬盘

 


windows环境下使用AnvilPro工具做性能测试; 

 

也许有人说最高提供20000随机读写IOPS、256MB/s吞吐量的存储性能 也不咋样啊?

 

飘易就举例说明下:我们家用机械盘在小I/O情况下,读写时随机IOPS也就是80~100左右、吞吐量10MB/s左右;如果是拷贝大的压缩包时,由于有OS的pagecache,吞吐量能达到100MB/s以上,但这只能是拷贝大应用时,对于企业级应用根本达不到这样。

 

    为什么我用FIO测试性能时,会导致实例宕机?     
     FIO这个测试工具支持裸盘分区、文件系统两种方式测试I/O性能;如果是直接测试裸盘分区,可能导致裸盘分区中的文件系统元数据被破坏掉,访问该裸盘分区中的文件时会失败,导致实例宕机;使用FIO的文件系统方式测试性能时,不存在上述问题,因此我们推荐使用FIO文件系统的方式测试I/O性能; 

 


    【补充:】
dd命令测试硬盘的读写速度
写速度:
time dd if=/dev/zero of=/var/test bs=8k count=1000000

读速度:
time dd if=/var/test of=/dev/null bs=8k count=1000000

 
    FIO是测试IOPS的非常好的工具,用来对硬件进行压力测试和验证,支持13种不同的I/O引擎,包括:sync,mmap, libaio, posixaio, SG v3, splice, null, network, syslet, guasi, solarisaio 等等。 
    一,FIO安装 
wget http://brick.kernel.dk/snaps/fio-2.0.7.tar.gz 
yum install libaio-devel 
tar -zxvf fio-2.0.7.tar.gz 
cd fio-2.0.7 
make 
make install
 

 

    二,随机读测试: 
随机读: 
fio -filename=/dev/sdb1 -direct=1 -iodepth 1 -thread -rw=randread -ioengine=psync -bs=16k -size=200G -numjobs=10 -runtime=1000 -group_reporting -name=mytest 

说明: 
filename=/dev/sdb1 测试文件名称,通常选择需要测试的盘的data目录。 
direct=1 测试过程绕过机器自带的buffer。使测试结果更真实。 
rw=randwrite 测试随机写的I/O 
rw=randrw 测试随机写和读的I/O 
bs=16k 单次io的块文件大小为16k 
bsrange=512-2048 同上,提定数据块的大小范围 
size=5g 本次的测试文件大小为5g,以每次4k的io进行测试。 
numjobs=30 本次的测试线程为30. 
runtime=1000 测试时间为1000秒,如果不写则一直将5g文件分4k每次写完为止。 
ioengine=psync io引擎使用pync方式 
rwmixwrite=30 在混合读写的模式下,写占30% 
group_reporting 关于显示结果的,汇总每个进程的信息。 
此外 
lockmem=1g 只使用1g内存进行测试。 
zero_buffers 用0初始化系统buffer。 
nrfiles=8 每个进程生成文件的数量。 

 

顺序读: 
fio -filename=/dev/sdb1 -direct=1 -iodepth 1 -thread -rw=read -ioengine=psync -bs=16k -size=200G -numjobs=30 -runtime=1000 -group_reporting -name=mytest 

随机写: 
fio -filename=/dev/sdb1 -direct=1 -iodepth 1 -thread -rw=randwrite -ioengine=psync -bs=16k -size=200G -numjobs=30 -runtime=1000 -group_reporting -name=mytest 

顺序写: 
fio -filename=/dev/sdb1 -direct=1 -iodepth 1 -thread -rw=write -ioengine=psync -bs=16k -size=200G -numjobs=30 -runtime=1000 -group_reporting -name=mytest 

混合随机读写: 
fio -filename=/dev/sdb1 -direct=1 -iodepth 1 -thread -rw=randrw -rwmixread=70 -ioengine=psync -bs=16k -size=200G -numjobs=30 -runtime=100 -group_reporting -name=mytest -ioscheduler=noop
 

 

【参考】
SSD云盘+ECS(IO优化): http://bbs.aliyun.com/read/241167.html
linux 使用FIO测试磁盘iops :http://blog.itpub.net/26855487/viewspace-754346/
作者:飘易
来源:飘易
版权所有。转载时必须以链接形式注明作者和原始出处及本声明。

与[转帖]阿里云SSD云盘性能测试:每GB空间30个IOPS相似的内容:

[转帖]阿里云SSD云盘性能测试:每GB空间30个IOPS

http://www.piaoyi.org/linux/aliyun-SSD-disk-test.html 正 文: 由于服务器需要高并发高IO,所以入手了阿里云的SSD云盘+IO优化的ECS实例。 阿里云SSD云盘:单盘最高提供20000随机读写IOPS、256MB/s吞吐量的存储性能。采用分布式

[转帖]阿里云宣布核心产品全面 Serverless 化

https://linux.cn/article-15209-1.html 11 月 3 日,2022·云栖大会上,阿里云智能总裁张建锋表示,以云为核心的新型计算体系正在形成,软件研发范式正在发生新的变革,Serverless 是其中最重要的趋势之一,阿里云将坚定推进核心产品全面 Serverles

[转帖]阿里云Redis开发规范

https://developer.aliyun.com/article/531067?spm=a2c6h.13262185.0.0.59cb5a7cO5qJMS#cc2 简介: 本文介绍了在使用阿里云Redis的开发规范,从键值设计、命令使用、客户端使用、相关工具等方面进行说明,通过本文的介绍可以

[转帖]阿里云时间服务器

https://zhuanlan.zhihu.com/p/615757644#:~:text=openEuler%E5%AE%89%E8%A3%85ntpdate%20yum%20-y%20install%20ntp.x86_64%20%E9%85%8D%E7%BD%AE%E5%BC%80%E6%9

[转帖]完整阿里云Redis开发规范

https://www.cnblogs.com/-wenli/p/10941249.html 本文主要介绍在使用阿里云Redis的开发规范,从下面几个方面进行说明。 键值设计 命令使用 客户端使用 相关工具 删除bigkey 通过本文的介绍可以减少使用Redis过程带来的问题。 一、键值设计 1、k

[转帖]Centos配置阿里云yum源

https://www.cnblogs.com/root-123/p/16570906.html 一、备份原来的yum源,以防后续使用 cd /etc/yum.repos.d/;mkdir bak/; mv *.repo bak/ 二、下载阿里云的base源 Centos6: wget -O /et

[转帖]看了阿里云云解析DNS,涨见识了

https://www.jianshu.com/p/8354e647cf71 在学习这篇文章前,只知道DNS就是做域名解析的,查到域名对应的ip就结束了。没成想惊呆了,DNS还有这么大的规模这么低的时延要求。 阿里云DNS是一个复杂的巨型分布式系统。依托云计算丰富的计算和存储资源和技术,阿里云在全球

[转帖]一张图读懂阿里云数据库架构与选型

https://www.cnblogs.com/zhoujinyi/p/16289252.html 背景 阿里云RDS已经发展超过十年,在演进的过程中,其架构和规格已经变得比较复杂,本文尝试通过一张架构图,较为完整的概况RDS所支持的主要的架构类型、规格,帮助开发者从高可用、成本、可靠性等角度选择适

[转帖]本地负载均衡与 Nginx 区别 | 学习笔记

来自:阿里云开发者学堂 2022-10-31 92 辽宁举报 简介: 快速学习 本地负载均衡与 Nginx 区别 开发者学堂课程【精通 Spring Cloud Alibaba:本地负载均衡与 Nginx 区别】学习笔记,与课程紧密联系,让用户快速学习知识。 课程地址:https://develop

[转帖]TCP/IP RFC

TCP/IP RFC-阿里云开发者社区 TCP/IP 标准是在一系列称为 RFC 的文档中发布的。RFC 是目前仍在发展的描述 TCP/IP 和 Internet 内部工作的一系列报告、协议的提议以及协议标准。 虽 然 TCP/IP 标准通常由 RFC 发布,但不是所有的 RFC 都被最终指定为标准