监控安装 ERP

系统集成论坛

 找回密码
 注册通行证

QQ登录

只需一步,快速开始

路由器交换机防火墙系统集成商城 优质产品采购平台
查看: 9525|回复: 0
打印 上一主题 下一主题

存储系统测试方法和测试工具软件

[复制链接]
跳转到指定楼层
1
发表于 2011-12-20 15:52:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
华为金牌代理
存储系统是信息基础架构的重要组成部分,它围绕信息技术的核心——信息而展开,提供信息保存、信息备份、信息安全以及信息生命周期管理的支持。涉及到具体的测试,一般会有2大测试内容:各种环境下的功能测试和各种环境下的性能测试;各种环境是指:网络环境(包括物理链路,距离,防火墙,客户的综合网络配置环境下是否用,并达到应有的性能),操作系统环境(如UNIX、Linux、windows、文件系统等),业务应用环境(如各种数据库、各种业务应用软件等)。

功能测试指的是各功能模块的测试,如快照、复制、数据迁移,数据分级。

性能测试指的是IOPS(I/O per second)每秒最大I/O数,一般用来测量大量小文件并发随机读写的环境,存储所能提供的最大文件并发数,如数据库应用。,MBPS(MB per second)每秒的最大带宽为多少兆,一般用来测试量大文件顺序读写时,存储所能提供的最大带宽,如视频制作应用。

  影响存储测试性能优劣的因素有很多,如果这些环节配置合理,可以发挥出存储的最佳性能,如果不当,那么任何一个环节都有可能成为瓶颈,可能影响到测试性能的因素主要有:
磁盘(磁盘类型,SATA,SAS)
RAID(RAID类型,RAID组磁盘数)
接口(业务口配置,聚合,网卡性能及兼容性)
中间设备(交换机,链路,巨帧)
网络设置(网卡,巨帧)
软件(相关软件设置,测试软件设置及选择)
客户端主机性能(initiator与CPU占用率的关系)

下面是主要的测试工具概述:

1、IOMeter

   IOMeter最早是Intel公司开发的一个专门测试系统I/O(包括磁盘、网络等)速度的测试软件,它是模拟实际应用环境来测试SAN环境中存储系统的性能。IOMeter预置了多种磁盘实际运行环境,包括定长数据块的读写、数据的连续读写,以及数据库、文件服务器和Web服务器等多种模式,用户通过 该软件可以测试出磁盘乃至存储系统的具体性能。目前IOMeter有Windows,Linux和NetWare三个平台版本,并且支持客户端、服务器类型的典型分布式环境测试。因此大型数据中心使用 多台Linux服务器版本或者客户端版本的IOMeter得分作为存储产品的测试选型参考。实际对比测试中需要定义统一的测试边界条件来保障测试结果的合 理性,比如定义合理的压力I/O模型、统一的加压服务器内核参数以及等量的存储条件(比如相同的磁盘数量等)。
Iometer操作简单,可以录制测试脚本,可以准确有效的反映存储系统的读写性能,为各大服务器和存储厂商所广泛采用。
配置参数说明:
  
  Maximum Disk Sizes 是指Iometer对多大的扇区进行访 问,一般来讲一个扇区是512Bytes,如果是10000的话,就是指Iometer只对5M的磁盘进行访问。默认是0,如果是0,则意味着对整个磁盘扇区进行访问。
在Iometer开始对磁盘进行访问时,会先生成一个文件iobw.tst,其大小决定于“Max Disk Size”,如Max Disk Size = 10000,则生成5M的文件,如果Max Disk Size = 0,则生成一个占满全磁盘的文件;


  of Outstanding I/Os 这是并发执行的指令数,一般这个值就设在16或32。
  
2、dd

   dd是UNIX和Linux系统自带的工具,能够以操纵裸设备的方式完成本地磁盘之间的高速复制,跨网络数据复制,以及制作磁盘镜像等功能。另外dd还能 生产固定大小的文件,以很高的速度写入磁盘。这就为存储测试提供了一个较好的手段,我们可以利用dd生成许多小文件来测试存储的吞吐量(IOPS)指标, 而利用dd生成数个大文件来测量存储系统带宽(MB/s)。下面我们举两个简单的例子来说明用dd测试存储性能的实际用法。

   使用dd测试存储系统带宽(MB/s)时,我们通常可以对主机中识别到的每块磁盘,顺序组合使用类似下面两行的命令,来衡量大数据块并发读写时存储 的带宽性能指标。其中bs值是指每次写入文件的大小,本例中是1MB大小,用户可以根据自身情况设置好最符合自身应用情况的文件大小进行测试。每条最后 的&表示后台让该命令运行,一般我们是先运行写测试然后再运行读测试,让读写操作并发进行。由于实际生产测试环境中往往有多块磁盘,我们往往会将 这一系列命令写成Shell脚本让测试过程自动进行。

    #dd if=/dev/zero of=/dev/sda bs=1024k &(带宽写测试)

    #dd if=/dev/sda of=/dev/null bs=1024k &(带宽读测试)

   使用dd测试存储系统吞吐量(IOPS)指标时,我们通常顺序组合使用下面的命令,来模拟小数据块并发读写时存储的吞吐量性能指标。与测试带宽时相 比,吞吐量测试的数据文件大小仅为8KB,因此能够测试出大量小I/O情况下存储的吞吐量(IOPS)指标。当然进行吞吐量测试时,我们一般也要针对主机 的每块磁盘设备,因此也将这些命令写成Shell脚本,从而让测试过程自动进行。

    #dd if=/dev/zero of=/dev/sda bs=8k &(吞吐量写测试)

    #dd if=/dev/sda of=/dev/zero bs=8k &(吞吐量读测试)

   观察测试过程中存储性能的实时情况时,我们一般会采用iostat命令每隔几秒查看存储系统的性能统计情况。

3、IOZONE

   IOZone是目前很流行的一种开源的测试文件系统性能的工具,它能够自动进行多种典型的文件系统测试。我们可以在http://www.iozone.org/上免费下载到IOZone的最新权威版本,目前该软件能在Windows和Linux系统中运行。

   IOZone主要通过自动执行一系列的I/O操作完成对文件系统的带宽性能测试,并能给出相关性能参数指标如带宽、响应延迟等的可视化图表报告。这 一系列的操作包括: 读(Read),写(write),重读(re-read),重写(re-write),反向读(read backwards),跨越式读(read strided),从文件中读(fread),往文件中写(fwrite),随机读(random read),预读取(pread),内存映射文件I/O(mmap),异步I/O读(aio_read),异步I/O写(aio_write)等。

4、SANergy
   
  SANergy其实是一款SAN共享软件,使用它可以使存储提供的同一个SAN资源被多台应用服务器同时读写,以实现NAS over SAN的功能。我们这里提到它是因为这个软件提供了对存储进行带宽测试的功能,而且这个软件被广泛应用于SAN共享的领域。特别是非线性编辑制作网等,使用该软件来进行大文件读写的高带宽测试。
我分享,我成长!系统集成 XTJC.COM
您需要登录后才可以回帖 登录 | 注册通行证

本版积分规则

联系我们| 手机版|系统集成论坛 ( 京ICP备11008917号 )

GMT+8, 2024-5-5 02:16 , Processed in 0.094981 second(s), 26 queries .

系统集成论坛

BBS.XTJC.COM

快速回复 返回顶部 返回列表