做环评需要关注哪些网站,wordpress友情链接单页,泰国网站的域名,天津建设工程信息网公布一、认识存储磁盘IO
磁盘IO测试是指在性能测试过程中#xff0c;对系统的磁盘读写操作进行测试和评估的过程。磁盘是计算机系统中重要的存储介质#xff0c;对于许多应用程序来说#xff0c;磁盘IO的性能影响着系统的整体性能。
在性能测试中#xff0c;磁盘IO测试通常有…一、认识存储磁盘IO
磁盘IO测试是指在性能测试过程中对系统的磁盘读写操作进行测试和评估的过程。磁盘是计算机系统中重要的存储介质对于许多应用程序来说磁盘IO的性能影响着系统的整体性能。
在性能测试中磁盘IO测试通常有以下指标。
磁盘读取磁盘读取测试是通过模拟实际应用程序对磁盘的读取操作来评估磁盘的读取性能。该测试通常会模拟不同的读取负载例如随机读取、顺序读取等不同的读取模式。通过监控读取操作的吞吐量、响应时间等指标可以评估磁盘的读取性能。
磁盘写入磁盘写入测试是通过模拟实际应用程序对磁盘的写入操作来评估磁盘的写入性能。该测试通常会模拟不同的写入负载例如随机写入、顺序写入等不同的写入模式。通过监控写入操作的吞吐量、响应时间等指标可以评估磁盘的写入性能。
带宽测试通过传输大文件来测试存储系统的带宽。
吞吐量测试通过模拟多个并发访问在一定时间内对存储系统进行读写操作测试存储系统的吞吐量。
延迟测试通过发送请求并检查收到响应所需的时间测试存储系统的延迟。
IOPS测试通过模拟多个并发请求测试每秒处理的输入/输出操作次数IOPS。
峰值负载测试通过模拟高负载情况测试存储系统在峰值负载下的性能表现。
随机性能测试通过模拟随机读写操作测试存储系统在随机工作负载下的性能表现。
理解磁盘IO的性能对于了解系统的瓶颈和优化系统性能非常重要。通过性能测试中的磁盘IO的相关指标可以发现磁盘的性能瓶颈例如磁盘读写速度是否达到系统的需求是否存在磁盘队列等待的情况等。在优化系统性能时可以根据磁盘IO的性能指标来调整磁盘配置例如增加磁盘缓存、优化磁盘访问模式等从而提高系统的整体性能。
二、测试说明
1.基于当前云平台环境的硬件配置一般通过官网查询到存储性能指标的计算公式。通过该公式可以估算出当前规模下该存储集群可提供的最大集群性能IOPS和吞吐。 2.增加多云主机或多挂载磁盘的方式通过fio测试工具进行性能压测测试存储集群的最大性能。 3.测试指标包括
不同类型磁盘SAS/SATA/SSD的随机读IOPS、随机写IOPS、顺序读带宽、顺序写带宽、随机读延时、随机写延时
不同存储集群SAS/SATA/SSD的随机读IOPS、随机写IOPS、顺序读带宽、顺序写带宽、存储集群性能上限
4.测试所用工具
1fio---磁盘性能测试工具
fio 是一个 I/O 工具用来对硬件进行压力测试和验证支持 13 种不同的 I/O 引擎包括sync, mmap, libaio, posixaio, SG v3, splice, null, network, syslet, guasi, solarisaio 等等I/O priorities (for newer Linux kernels), rate I/O, forked or threaded jobs, 等等。 2 iostat---磁盘性能监控工具
iostat 主要用于输出磁盘IO 和 CPU的统计信息。iostat属于sysstat软件包。可以用yum install sysstat 直接安装。
三、测试用例
1、不同类型磁盘SAS/SATA/SSD的随机读写IOPS测试
1测试前提动作 在计算及存储节点执行echo 3 /proc/sys/vm/drop_caches清空缓存 创建相同规格的虚拟机挂载不同磁盘类型的50G云盘记为vdb 执行mkfs.xfs /dev/vdb格式化数据盘 执行mkdir -p /perf-test 执行mount /dev/vdb /perf_test dd if/dev/zero of/perf_test/testfile \ bs1M oflagdirect,sync count20480 2随机读IOPS测试 fio -direct1 -iodepth128 -rwrandread -ioenginelibaio \ -bs4k -size20G -numjobs1 -group_reporting \ -log_avg_msec1000 -write_bw_logtest-fio \ -write_lat_logtest-fio -write_iops_logtest-fio \ -per_job_logs0 -filename/perf_test/testfile -namerr-iops 3随机写IOPS测试 fio -direct1 -iodepth128 -rwrandwrite -ioenginelibaio \ -bs4k -size20G -numjobs1 -group_reporting \ -log_avg_msec1000 -write_bw_logtest-fio \ -write_lat_logtest-fio -write_iops_logtest-fio \ -per_job_logs0 -filename/perf_test/testfile -namerw-iops 4测试记录
查看fio随机读写命令输出结果或使用gnuplot生成fio测试过程数据生成数据趋势图。
2、 不同类型磁盘SAS/SATA/SSD的顺序读写带宽测试
1测试前提动作 在计算及存储节点执行echo 3 /proc/sys/vm/drop_caches清空缓存 创建相同规格的虚拟机挂载不同磁盘类型的50G云盘记为vdb 执行mkfs.xfs /dev/vdb格式化数据盘 执行mkdir -p /perf-test 执行mount /dev/vdb /perf_test dd if/dev/zero of/perf_test/testfile \ bs1M oflagdirect,sync count20480 2顺序读带宽测试 fio -direct1 -iodepth64 -rwread -ioenginelibaio \ -bs1024k -size20G -numjobs1 -group_reporting \ -log_avg_msec1000 -write_bw_logtest-fio \ -write_lat_logtest-fio -write_iops_logtest-fio \ -per_job_logs0 -filename/perf_test/testfile -namesr-bw 3顺序写带宽测试 fio -direct1 -iodepth64 -rwwrite -ioenginelibaio \ -bs1024k -size20G -numjobs1 -group_reporting \ -log_avg_msec1000 -write_bw_logtest-fio \ -write_lat_logtest-fio -write_iops_logtest-fio \ -per_job_logs0 -filename/perf_test/testfile -namesw-bw 4测试记录
查看fio随机读写命令输出结果或使用gnuplot生成fio测试过程数据生成数据趋势图。
3、 不同类型磁盘SAS/SATA/SSD的随机读写时延测试
1测试前提动作 在计算及存储节点执行echo 3 /proc/sys/vm/drop_caches清空缓存 创建相同规格的虚拟机挂载不同磁盘类型的50G云盘记为vdb 执行mkfs.xfs /dev/vdb格式化数据盘 执行mkdir -p /perf-test 执行mount /dev/vdb /perf_test dd if/dev/zero of/perf_test/testfile \ bs1M oflagdirect,sync count20480 2随机读时延测试 fio -direct1 -iodepth1 -rwrandread -ioenginelibaio \ -bs4k -size20G -numjobs1 -group_reporting \ -log_avg_msec1000 -write_bw_logtest-fio \ -write_lat_logtest-fio -write_iops_logtest-fio \ -per_job_logs0 -filename/perf_test/testfile -namerr-latency 3随机写时延测试 fio -direct1 -iodepth1 -rwrandwrite -ioenginelibaio \ -bs4k -size20G -numjobs1 -group_reporting \ -log_avg_msec1000 -write_bw_logtest-fio \ -write_lat_logtest-fio -write_iops_logtest-fio \ -per_job_logs0 -filename/perf_test/testfile -namerw_latency 4测试记录
查看fio随机读写命令输出结果或使用gnuplot生成fio测试过程数据生成数据趋势图。 4、 不同存储集群SAS/SATA/SSD的IOPS读写、带宽读写性能上限测试
1测试前提动作
创建多台测试虚拟机不同规格存储轮流测试备用
2IOPS上限测试
依次启动虚拟机并参照1随机读写IOPS的步骤执行压测命令10台主机一组完成测试并记录为一组数据然后继续增加测试组数每组测试较上一组测试增加10台虚机同时启动测试命令完成测试并记录为一组数据直到所有虚机随机读写IOPS之和不在增加则停止测试
3带宽上限测试
依次启动虚拟机并参照1顺序读写带宽的步骤执行压测命令10台主机一组完成测试并记录为一组数据然后继续增加测试组数每组测试较上一组测试增加10台虚机同时启动测试命令完成测试并记录为一组数据直到所有虚机顺序读写带宽之和不在增加则停止测试
4测试记录
查看fio随机读写命令输出结果或使用gnuplot生成fio测试过程数据生成数据趋势图也可以使用iostat等工具记录每组测试过程中服务器的相关监控数据。