Fórum Ubuntu CZ/SK
Ostatní => Ubuntu Server => Téma založeno: byper 26 Dubna 2016, 19:49:42
-
Chtěl bych se zeptat jestli nemáte nějaké tipy jak zrychlit čtení z raid5 svazku. Nebo jestli to je vubec realistické:)
tom@permon:~$ sudo mdadm --detail /dev/md127
/dev/md127:
Version : 1.2
Creation Time : Sat Mar 12 19:38:47 2016
Raid Level : raid5
Array Size : 2930009088 (2794.27 GiB 3000.33 GB)
Used Dev Size : 1465004544 (1397.14 GiB 1500.16 GB)
Raid Devices : 3
Total Devices : 3
Persistence : Superblock is persistent
Update Time : Tue Apr 26 19:13:45 2016
State : clean
Active Devices : 3
Working Devices : 3
Failed Devices : 0
Spare Devices : 0
Layout : left-symmetric
Chunk Size : 512K
Name : permon:127 (local to host permon)
UUID : 198f0680:4734a7ae:d30c7a51:918a12a3
Events : 13023
Number Major Minor RaidDevice State
0 8 1 0 active sync /dev/sda1
1 8 33 1 active sync /dev/sdc1
3 8 49 2 active sync /dev/sdd1
Celkem stabilně jede 65-70MB/s
Every 1.0s: iostat -k 1 2 Tue Apr 26 19:31:22 2016
Linux 3.13.0-53-generic (permon) 04/26/16 _x86_64_ (2 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
3.15 0.02 1.69 0.67 0.00 94.48
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sdb 9.29 869.48 212.01 64476128 15721392
sdc 1.08 53.59 278.25 3973818 20633367
sdd 1.29 79.39 278.19 5887296 20629243
sda 1.07 54.36 278.14 4030706 20625375
md127 1.65 148.19 556.07 10989137 41235360
avg-cpu: %user %nice %system %iowait %steal %idle
2.33 0.00 26.16 22.09 0.00 49.42
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sdb 0.00 0.00 0.00 0 0
sdc 45.00 23040.00 0.00 23040 0
sdd 46.00 23552.00 0.00 23552 0
sda 45.00 23040.00 0.00 23040 0
md127 136.00 69632.00 0.00 69632 0
Ale když čtu ze samotného sdd(2) tak tento samotný disk má rychlosti také přes 70MB/s.
Every 1.0s: iostat -k 1 2 Tue Apr 26 19:32:06 2016
Linux 3.13.0-53-generic (permon) 04/26/16 _x86_64_ (2 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
3.15 0.02 1.69 0.67 0.00 94.48
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sdb 9.29 868.97 211.89 64476128 15721652
sdc 1.08 53.91 278.08 3999930 20633367
sdd 1.32 84.11 278.03 6241092 20629243
sda 1.07 54.67 277.98 4056546 20625375
md127 1.65 149.15 555.74 11066689 41235360
avg-cpu: %user %nice %system %iowait %steal %idle
1.68 0.00 26.26 32.96 0.00 39.11
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sdb 0.00 0.00 0.00 0 0
sdc 0.00 0.00 0.00 0 0
sdd 574.00 73472.00 0.00 73472 0
sda 0.00 0.00 0.00 0 0
md127 0.00 0.00 0.00 0 0
Je to taková zbytkova partition na které má blbosti. Vznikla tak, že fyzicky mám 2x1,5TB a 1x2TB.
Co je zajimavé tak když zapisuji tak je ten výkon o dost vyšší...
Every 1.0s: iostat -k 1 2 Tue Apr 26 19:45:02 2016
Linux 3.13.0-53-generic (permon) 04/26/16 _x86_64_ (2 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
3.12 0.02 1.74 0.72 0.00 94.40
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sdb 9.21 860.33 209.72 64502568 15723452
sdc 1.20 100.71 285.09 7550826 21374557
sdd 1.72 165.90 285.03 12438284 21370173
sda 1.19 101.47 284.99 7607362 21366613
md127 1.98 289.55 569.76 21709077 42717332
avg-cpu: %user %nice %system %iowait %steal %idle
6.21 0.00 49.72 0.00 0.00 44.07
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sdb 0.00 0.00 0.00 0 0
sdc 169.00 192.00 61928.00 192 61928
sdd 169.00 248.00 61416.00 248 61416
sda 172.00 228.00 61984.00 228 61984
md127 243.00 4.00 123904.00 4 123904
Kdyby to bylo naopak tak bych to celkem chápal, ale takhle to je fakt divný...
Všechny rychlosti jsou vyvolány požadavky na r/w z win stanice která přistupuje přes smbd a má disk SSD. Kopíroval jsem jeden velký videosoubor.
-
Takze te stejne dobre mohly brzdit widle/smb/router...
IO se pochopitelne delaji tak, aby bylo co nejmene brzdicich mezivrstev:
dd if=soubor of=/dev/null
-
Případně přesnější testy pomocí fio
-
OK :) zkoušel jsem to pomocí dd a výsledek
Every 0.1s: iostat -k 1 2 Wed Apr 27 09:54:54 2016
Linux 3.13.0-53-generic (permon) 04/27/16 _x86_64_ (2 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
1.10 0.02 5.33 0.26 0.00 93.30
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 60.97 30927.03 0.00 1470205694 74
sdb 2.23 29.05 184.99 1380984 8794004
sdc 60.96 30927.04 0.00 1470206102 226
sdd 60.99 30927.12 0.01 1470210036 242
md127 1.07 328.28 0.00 15605565 180
avg-cpu: %user %nice %system %iowait %steal %idle
4.64 0.00 23.20 22.68 0.00 49.48
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 162.00 66560.00 0.00 66560 0
sdb 0.00 0.00 0.00 0 0
sdc 162.00 66224.00 0.00 66224 0
sdd 164.00 67072.00 0.00 67072 0
md127 485.00 198656.00 0.00 198656 0
Takže v raid5 to nebude. Mám jen gigabitovou LAN takže max rychlosti co jsem z toho vytřiskal jsou kolem těch 110MB/s přes síť.
Router to brzdit snad nemohl protože to je stále ten stejny stroj, widle samo můžou, to samé platí pro smb. Každopadně díky, v raidu to neni...
-
Takze te stejne dobre mohly brzdit widle/smb/router...
IO se pochopitelne delaji tak, aby bylo co nejmene brzdicich mezivrstev:
dd if=soubor of=/dev/null
neda mi to a musim doplnit sachyho ...
a) dd pri zapisu na bezna blokova zarizeni pri pouziti vychozi velikosti bloku (tedy iirc 512B) nebude merit primerenym zpusobem kvuli velokosti fyzicke jednostky na disku !!!!!!! tzn, pouzivejte nejakou block size dle geometrie vaseho disku (stare disky 1M a nove 4M)
b) dd pro testovani disku bez oflag=direct je opet k nicemu, protoze to hrnete pres cache !!!!
tzn:
dd if=/dev/zero of=/nekam/neco bs=1M count=1000 oflag=direct
-
@NTZ: přesně proto jsem navrhoval fio :)
-
Ja teda nevím jestli chápu dobře příspěvek, ale ja se ptal na čtení a prováděl jsem test čtení pomocí dd.
Takže zdroj byl soubor na md127 a pral jsem to dev/null.
Tímto způsobem je snad test validní nebo ne?
Se zápisem ani tak problém nemám. Myslím že ten funguje v pořádku, vzhledem k tomu že to je
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 42
model name : Intel(R) Celeron(R) CPU 847 @ 1.10GHz
Tak jsem ani nečekal že to bude takhle dobře fachcat:)
Jinak co se týká toho FIO tak s tím nemám žádné zkušenosti, ale jak jsem psla výše problém asi neni v raidu....
-
@NTZ: přesně proto jsem navrhoval fio :)
a-ha :)
diky, fio jsem neznal (doted)