NFS writes to md-raid extremely slow with busy jbd2
As far as I can remember, this problem appeared after upgrade from Debian Squeeze to Wheezy. The symptom is extremely slow write performance on the server's dmraid exclusively if written via nfs shares from any client. The performance issue seems to occur after some minutes of transfer and maybe only with large files.
The harddisk's noise in this condition is really concise - as I am talking about my home server, I can tell you by acoustics whether the system is in the problematic state currently:D This may give a hint on the cause as it sounds like seek or random read/write benchmarks, but not like a read benchmark or a write benchmark when done separately.
The problem occurs when using nfs shares on an Ubuntu 14.04 system or/and when using nfs shares on an Mythbuntu 12.04 system - there is no difference in behaviour. For this I had to switch the Mythbuntu system to sftp, because this system copies tv recordings automatically to the server.
Just to underline: copying the very same files via ssh/scp/sftp makes no problem at all and gives good performance! (1 GBit/s network)
Back to a problematic transfer: there the transmitting speed forms waves: it is really slow at ~150-250 KiB/s for approx. 4 seconds, then "sucks" a chunk at ~4-7 MiB/s for approx. 1-2 seconds.
Это подчеркивает, что нет проблем с сетью, нет неправильных протоколов, нет дополнительной нагрузки, которая может привести к замедлению работы систем.
Это версии:
nsk@server7even3:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 7.6 (wheezy)
Release: 7.6
Codename: wheezy
nsk@server7even3:~$ uname -a
Linux server7even3 3.2.0-4-amd64 #1 SMP Debian 3.2.54-2 x86_64 GNU/Linux
nfs-kernel-server находится на версии 1:1.2.6-4
Это пример вывода iotop: хорошо... Мне не удалось скопировать вывод, поскольку он все время обновляется, что очищает мой выбор, но соответствующая строка выглядит так:
8417 be/3 root 0.00 B/s 0.00 B/s 0.00 % 99.95 % [jbd2/dm-0-8]
Это не соответствует 99.xx % - это варьируется между 91.xx-99.99 %
Конечно, рейд не повторяется сейчас
nsk@server7even3:~$ cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md127 : active raid5 sdf1[0] sdd1[4] sda1[2] sdb1[1]
11720655360 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/4] [UUUU]
Здесь вы можете увидеть, что это raid5 и файловая система ext4.
Я нашел некоторые похожие проблемы в Интернете; но при внимательном прочтении ни один из них на самом деле не совпадает.
Любые советы?
//Редактировать:
Диски с данными:
- Куплено: март 2014
- Мощность на часах: ~6150
Массив:
- Создано с помощью mdadm без дополнительных параметров (насколько мне известно из моих заметок)
- RAID шаг: 128
- Ширина полосы RAID: 384
Раздел:
- Выровнен по секторам: 2048
- Размер блока: 4096
- Размер инода: 256
- Иноды на группу: 4096
- Количество блоков Inode на группу: 256
Это второй раздел в массиве
Я забыл сказать, что раздел дополнительно зашифрован - извините за это!
nsk@server7even3:~$ sudo cryptsetup status /dev/mapper/udisks-luks-uuid-18cea73e-4176-4d8a-b80d-cc5e933beb77-uid0
/dev/mapper/udisks-luks-uuid-18cea73e-4176-4d8a-b80d-cc5e933beb77-uid0 is active and is in use.
type: LUKS1
cipher: aes-cbc-essiv:sha256
keysize: 256 bits
device: /dev/md127p2
offset: 3072 sectors
size: 15032381407 sectors
mode: read/write