我可以使用 bonnie++ 确定磁盘阵列上的 IOPS 吗?

Ste*_*ski 6 storage iops

我想测量 RAID6 阵列与 RAID10 阵列的读写性能。我知道bonnie++可用于计算磁盘性能,但 bonnie++ 生成的数字不包括“IOPS”等术语。如今,许多磁盘性能文章和指南都提到了“IOPS”。

如何使用 bonnie++ 计算磁盘阵列的 IOPS。如何确保我的测试测试的是磁盘的实际 I/O 而不是系统缓存?

以下是我的一台服务器的一些示例统计数据。这些字段之一会报告类似于 IOPS 的数字吗?

# bonnie++ -q -d /data -u root
Version  1.96       ------Sequential Output------ --Sequential Input- --Random-
Concurrency   1     -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
hosta.example. 11680M   680  99 281780  26 133389  18  3955  99 382518  24  1097  31
Latency             12070us     124ms     406ms    8065us   60074us   36903us
Version  1.96       ------Sequential Create------ --------Random Create--------
hosta.example.org     -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                 16 25616  33 +++++ +++ +++++ +++ +++++ +++ +++++ +++ +++++ +++
Latency               125us     637us     585us     100us      13us      41us
1.96,1.96,hosta.example.org,1,1371669888,11680M,,680,99,281780,26,133389,18,3955,99,382518,24,1097,31,16,,,,,25616,33,+++++,+++,+++++,+++,+++++,+++,+++++,+++,+++++,+++,12070us,124ms,406ms,8065us,60074us,36903us,125us,637us,585us,100us,13us,41us
Run Code Online (Sandbox Code Playgroud)

eww*_*ite 6

不同的工具以不同的方式显示此信息。术语不一致。

我认为您不应该单独使用bonnie++来确定 IOPS。或者,如果您确实选择使用它(或其他工具,如iozone),您可以使用任意数量的实用程序来衡量活动以捕获每秒 I/O 操作。

因此,我可以运行bonnie++ -d /data -u root -n 64:100000:16:64,并且在此过程中,我将使用以下方法之一来跟踪 I/O 活动:

PS 默认情况下,bonnie++ 将使用两倍于已安装 RAM 量的文件大小来限制/消除缓存效果。

......或者你可以绘制它......

我为此目的使用逆戟鲸

该系统的平均读/写 IOPS 为 816。 在此处输入图片说明


例子:

iostat - 寻找tps

[root@Brazzers1 ~]# iostat cciss/c0d0 1
Linux 2.6.18-348.2.1.el5 (Brazzers1)         06/19/13

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           8.61    2.74   11.17    0.56    0.00   76.92

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
cciss/c0d0     2774.00        48.00    113297.00         48     113297
Run Code Online (Sandbox Code Playgroud)

collectl - 寻找IOs. 分为读和写。总和等于 IOPS。

[root@Brazzers2 ~]# collectl -sD
waiting for 1 second sample...

# DISK STATISTICS (/sec)
#          <---------reads---------><---------writes---------><--------averages--------> Pct
#Name       KBytes Merged  IOs Size  KBytes Merged  IOs Size  RWSize  QLen  Wait SvcTim Util
c0d0           300      0   64    5    4732     83  293   16      14     1     1      0   35
c0d0            20      0    5    4    3397     39  344   10       9     5     1      0    6
c0d0             3      0    1    4    2256      8  267    8       8    11     1      0    3
c0d0             4      0    1    4    4283      3  499    9       8    11     1      0    7
c0d0             0      0    0    0    1692     49  133   13      12     2     0      0    2
c0d0             8      0    2    4    6689     17  710    9       9    18     1      0    7
c0d0             0      0    0    0    1246     13  187    7       6    22     0      0    0
c0d0            16      0    3    5    3870      7  247   16      15     3     0      0    7
c0d0            31      0    8    4    3149     40  195   16      15     1     0      0    7
c0d0            28      0    6    5    1883     20  250    8       7     4     1      0    6
c0d0             8      0    2    4    1872     59  137   14      13     1     0      0    6
c0d0             4      0    1    4    4582     45  681    7       6    23     1      0    5
c0d0            52      0   13    4    2621     10  182   14      13     1     0      0   12
c0d0             0      0    0    0    2613     14  324    8       8     7     1      0    4
c0d0             7      0    2    4    1983      9  223    9       8     2     0      0   10
c0d0             8      0    2    4    1709     30  215    8       7     6     0      0    2
c0d0             4      0    1    4    4102     17  253   16      16     2     1      0   15
c0d0            12      0    3    4    4415     20  500    9       8     7     1      0   11
c0d0             4      0    1    4    3261     21  449    7       7    10     1      0    7
c0d0             3      0    1    4   12639      3  640   20      19     2     0      0    8
c0d0            28      0    7    4   42023      8 1839   23      22     1     0      0   15
c0d0             4      0    1    4   28384      6 1401   20      20     2     0      0   12
Run Code Online (Sandbox Code Playgroud)

nmon - 寻找Xfers.

在此处输入图片说明