Я хотел бы измерить производительность чтения и записи массива RAID6 по сравнению с массивом RAID10. Я это понимаю Бонни ++ может использоваться для расчета производительности диска, но числа, полученные с помощью bonnie ++, не включают такие термины, как «IOPS». В наши дни во многих статьях и практических рекомендациях по производительности дисков упоминается «IOPS».
Как я могу использовать bonnie ++ для расчета IOPS дискового массива. Как я могу убедиться, что мои тесты проверяют фактический ввод-вывод дисков, а не системный кеш?
Вот несколько примеров статистики с одного из моих серверов. Будет ли в одном из этих полей отображаться число, аналогичное 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
Различные инструменты отображают эту информацию по-разному. Терминология непоследовательна.
Я не думаю, что тебе следует использовать Бонни ++ только для определения IOPS. Или если ты делать выберите его (или другой инструмент, например iozone), вы можете измерять активность с помощью любого количества утилит для отслеживания операций ввода-вывода в секунду.
Так что я могу бежать bonnie++ -d /data -u root -n 64:100000:16:64
, и пока это выполняется, я буду использовать один из следующих методов для отслеживания активности ввода-вывода:
P.S. По умолчанию bonnie ++ будет использовать размер файлов, вдвое превышающий объем установленной оперативной памяти, чтобы ограничить / исключить эффект кэширования.
... или вы можете построить график ...
я использую Orca для этого.
В этой системе в среднем 816 объединенных операций чтения / записи IOPS.
Примеры:
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
собирать - искать 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
nmon - Искать Xfers
.