storage load tests

4k-rw-test-SSD-read-cache

#!/bin/bash
/usr/bin/fio –filename=/dev/bcache0 –direct=1 –rw=randrw –refill_buffers –norandommap –randrepeat=0 –ioengine=libaio –bs=4k –rwmixread=100 –iodepth=16 –numjobs=16 –runtime=60000 –group_reporting –name=4ktest

Verwendete Parameter:

  • filename: Verwendung einer einzelnen Datei oder eines ganzen Block Devices (Achtung: Beim Verwenden eines Block Devices wird das ganze Device überschrieben!)
  • direct: 1 = benutze non-buffered I/O, 0 = buffered
  • rw: I/O Muster, mögliche Optionen: read,write(Sequential reads/writes),randread,randwrite(Random reads/writes),readwrite(Sequential reads&writes),randrw(Random reads&writes)
  • refill_buffers: Puffer bei jedem IO-Submit neu befüllen (SSD Kompressions-Effekt umgehen)
  • norandommap: wähle neuen offset bei random I/O
  • randrepeat: 1=vorhersehbare Zufallszahlen (für konsistente Ergebnisse bei mehreren Durchläufen), 0=nicht vorhersehbare Zufallszahlen
  • ioengine: sync(read/write+fseek), psync (pread/pwrite), vsync (readv/writev), pvsync(preadv/pwritev), libaio(Linux native asynchronous), posixaio(aio_read/aio_write), u.a.
  • bs: blocksize
  • rwmixread: Anzahl Read Operationen (in Prozent)
  • rwmixwrite: Anzahl Write Operationen (in Prozent)
  • iodepth: Anzahl parallele I/O-Requests (bei libaio engine)
  • numjobs: Anzahl Prozesse die gestartet werden, um parallel Jobs auszuführen
  • runtime: Laufzeit des Tests (in Sekunden)
  • group_reporting: Ergebnisse pro Gruppe (bei Verwendung von –numjobs) anstatt pro Job
  • name: Name des Tests

4k-rw-test-HDD

#!/bin/bash
/usr/bin/fio –filename=/dev/sdd –direct=1 –rw=randrw –refill_buffers –norandommap –randrepeat=0 –ioengine=libaio –bs=4k –rwmixread=100 –iodepth=16 –numjobs=16 –runtime=60000 –group_reporting –name=4ktest

4k-rw-test-HDD-new

#!/bin/bash
/usr/bin/fio –filename=/media/data1 –direct=1 –rw=randrw –refill_buffers –norandommap –randrepeat=0 –ioengine=libaio –bs=4k –rwmixread=100 –iodepth=16 –numjobs=16 –runtime=60000 –group_reporting –name=4ktest

8k-70-30-test-SSD-read-cache

#!/bin/bash
fio –filename=/dev/bcache0 –direct=1 –rw=randrw –refill_buffers –norandommap –randrepeat=0 –ioengine=libaio –bs=8k –rwmixread=100 –iodepth=16 –numjobs=16 –runtime=60000 –group_reporting –name=8k7030test

iozone # hard core load test

#!/bin/bash
iozone -R -l 100 -u 256 -r 4k -s 1000m -F /mnt/test{1..256}

Verwendete Parameter:

  • R: generiere Excel Report
  • l: mindestzahl an zu startenden Prozessen
  • u: höchstzahl an zu startenden Prozessen
  • r: Record Size (k/m/g=Kbytes/Mbytes/Gbytes)
  • s: Größe Testdatei (k/m/g=Kbytes/Mbytes/Gbytes)
  • F: Dateinamen der Testdateien (Anzahl = Anzahl Prozesse)

weitere Informationen

Measure Ceph RBD performance in a quantitative way (part I)
NAS Server Testing, Part 2: IOZone
Gluster performance testing
Thomas Krenn Wiki: Fio
Thomas Krenn Wiki: Messen von I/O Performance
How to benchmark disk I/O
Linux Benchmarking Tools

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.