Неравномерная загрузка дисков в raid

N
На сайте с 06.05.2007
Offline
419
1469

Перетащил один старый сайтик на новый Debian 9 с ядром 4.9.0-3-amd64 и сделал там raid1 из трех дисков.

К сожалению, возникли проблемы с контроллером DELL R320 Mini : невозможно настроить bios контроллера чтобы диски виделись в чистом виде, поэтому они увиделись только когда их настроил в виде трех отдельных массивов RAID0. После этого уже собрал RAID1 из трех дисков как обычно.

И теперь я вижу как нагружается в основном первый диск. В старых версиях linux всегда все было равномерно.

Что я упустил ? Что поменялось?

А может быть все как раз нормально и улучшилось, последовательное чтение теперь так и должно продолжаться с того диска с которого началось?

Сравнить эффект в выданых мегабитах вряд ли получится, тк датацентр и раньше не давал особо разойтись.

до 100% загрузки не факт что удастся вообще раздать контента.

Вот что я вижу в atop:


PRC | sys 0.20s | user 0.09s | #proc 172 | #trun 1 | #tslpi 181 | #tslpu 0 | #zombie 0 | #exit 0 |
CPU | sys 2% | user 2% | irq 2% | idle 792% | wait 3% | guest 0% | curf 2.91GHz | curscal 90% |
CPL | avg1 0.00 | avg5 0.02 | avg15 0.02 | | csw 5650 | intr 108759 | | numcpu 8 |
MEM | tot 62.9G | free 457.8M | cache 60.5G | buff 22.1M | slab 504.8M | shmem 26.2M | vmbal 0.0M | hptot 0.0M |
SWP | tot 3.7G | free 3.7G | | | | | vmcom 1.5G | vmlim 35.2G |
PAG | scan 77315 | steal 77315 | stall 0 | | | | swin 0 | swout 0 |
MDD | md1 | busy 0% | read 0 | write 13 | KiB/w 5 | MBr/s 0.0 | MBw/s 0.0 | avio 0.00 ms |
MDD | md2 | busy 0% | read 1978 | write 0 | KiB/w 0 | MBr/s 24.5 | MBw/s 0.0 | avio 0.00 ms |
DSK | sda | busy 13% | read 1385 | write 11 | KiB/w 7 | MBr/s 17.2 | MBw/s 0.0 | avio 0.93 ms |
DSK | sdb | busy 5% | read 455 | write 11 | KiB/w 7 | MBr/s 5.6 | MBw/s 0.0 | avio 1.00 ms |
DSK | sdc | busy 1% | read 138 | write 11 | KiB/w 7 | MBr/s 1.7 | MBw/s 0.0 | avio 0.99 ms |
NET | transport | tcpi 84255 | tcpo 196052 | udpi 5 | udpo 5 | tcpao 50 | tcppo 103 | tcprs 2218 |
NET | network | ipi 84274 | ipo 103533 | ipfrw 0 | deliv 84272 | | icmpi 0 | icmpo 0 |
NET | eno1 23% | pcki 84925 | pcko 200272 | sp 1000 Mbps | si 4700 Kbps | so 235 Mbps | erri 0 | erro 0 |
NET | lo ---- | pcki 501 | pcko 501 | sp 0 Mbps | si 57 Kbps | so 57 Kbps | erri 0 | erro 0 |

тут видно что устройство md2 получает 24 Мб/cек чтений, а дальше они распределяются на sda,sdb,sdc непропорционально.

Так же непропорционально распределяется и загрузка busy.


mdadm --query --detail (ничего особо интересного)

/dev/md2:
Version : 1.2
Creation Time : Sun Oct 15 12:05:34 2017
Raid Level : raid1
Array Size : 5826630592 (5556.71 GiB 5966.47 GB)
Used Dev Size : 5826630592 (5556.71 GiB 5966.47 GB)
Raid Devices : 3
Total Devices : 3
Persistence : Superblock is persistent

Update Time : Sun Oct 22 15:19:35 2017
State : clean
Active Devices : 3
Working Devices : 3
Failed Devices : 0
Spare Devices : 0

Name : files:2
UUID : 555555:ea516955:a0f1e1c4:d555555
Events : 73833

Number Major Minor RaidDevice State
0 8 4 0 active sync /dev/sda4
1 8 20 1 active sync /dev/sdb4
2 8 36 2 active sync /dev/sdc4
Кнопка вызова админа ()
adel92
На сайте с 04.01.2012
Offline
334
#1

Покажите:

cat /proc/mdstat

10 символов

NVMe VDS (https://well-web.net/nvme-vps) с поддержкой 24/7 - от 545 руб.! Безлимитный хостинг (https://well-web.net/ssd-hosting) - от 129 руб.! Домен в подарок! Перенос бесплатно! Заказывайте сейчас, и получите скидку 50%! Заходи! (https://well-web.net/limited-offers)
N
На сайте с 06.05.2007
Offline
419
#2

adel92, там та же информация что в mdadm --query --detail


cat /proc/mdstat
Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10]
md2 : active raid1 sdb4[1] sdc4[2] sda4[0]
5826630592 blocks super 1.2 [3/3] [UUU]

md0 : active (auto-read-only) raid1 sdb2[1] sdc2[2] sda2[0]
3904512 blocks super 1.2 [3/3] [UUU]

md1 : active raid1 sdb3[1] sdc3[2] sda3[0]
29280256 blocks super 1.2 [3/3] [UUU]

unused devices: <none>

[umka]
На сайте с 25.05.2008
Offline
456
#3

Может, оно и к лучшему? Если нагрузка будет ложиться равномерно, то диски выйдут из строя примерно одновременно :)

Лог в помощь!
N
На сайте с 06.05.2007
Offline
419
#4

Судя по исходникам, примерно в linux 3.6 появился особый код перераспределения последовательного чтения, но не каждая инсталляция занимается раздачей файлов и поэтому обычно незаметно. Есть переменная best_pending_disk.

Может и к лучшему, но не могу понять как этим управлять и для эксперимента включить старое поведение?

L
На сайте с 13.01.2011
Offline
125
#5

обычно если в биос если собираешь диски в массив встроенным райд контроллером - то они видятся в ос как 1 диск. если обнулить диски командой dd , mdadm --zero-superblock и не строить их них массив встроенным райд контролером - то они должны видится в биос как обычные отдельные диски(и собирать из них mdadm средствами ос) - может обновить биос и почитать доку по серверу.

Контакты-icq 535609 ()
D
На сайте с 05.06.2007
Offline
155
#6

Интересно, а с сервера в основном читаются большие файлы или мелочь которая быстро отдаётся?

Написал не мало шедевров ;)
N
На сайте с 06.05.2007
Offline
419
#7

Dimanych, с этого достаточно большие.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий