On 25.04.2014 17:37, Yuriy B. Borysov wrote:

> Помню, какое-то время назад, тут кто-то (Евгений?) давал рекомендации 
> по тюнингу системных настроек FS для файлопомойки.
> Но сейчас не могу найти. 
> 
> В связи с чем вопрос, кто как для некритичной к сохранности данных 
> файлопомойки, оптимизирует настройки?

Я не давал, да и особенных рекомендаций нету, если потеря данных не страшна.
Можно монтировать в UFS с опцией noatime (не обновлять время доступа к файлам).
Если есть хороший UPS то монтировать UFS в режиме async.

Если при этом массированная линейная запись нечаста, а часты мелкие записи,
да ещё и в параллель, можно использовать gjournal+async, это здорово ускоряет 
такую запись,
хотя и вдвое замедляет массированную линейную запись, идущую в один поток.
Замедления можно избежать, если под журнал поставить отдельный SSD.
Плюс это отменяет fsck при аварийных ребутах.

Для 9+ можно попробовать вместо gjournal+async использовать SUJ,
но у меня есть отрицательный опыт, когда на супермикре КАЖДЫЙ аварийный
ребут ведет к повреждению журнала SUJ и необходимости полной проверки fsck
без использования журнала. И не только у меня, blacklion@ в листах на эту же 
проблему
жалуется. С gjournal с этой проблемой на практике не встречался, хотя 
эксплуатирую
gjournal очень активно.

В любом случае для UFS имеет смысл резко увеличить read-ahead через
sysctl vfs.read_max=128 (вместо дефолтного 8).

ZFS очень любит мощный CPU (даже больше чем много памяти), без него тормозит,
а для файлопомоек у меня пока мощных CPU не было, поэтому ZFS и не использую.

Использование RAID1 (gmirror) для файлопомойки даёт не только надежность,
но и ускорение чтения при наличии конкуретнтых запросов к файлопомойке.
Использование RAID0 (gstripe) уменьшает надежность, но увеличивает ещё
и скорость записи.

RAID0+async+noatime+gjournal на SSD самый "ядерный" вариант, но для данных,
с которыми не жалко расстаться в любой момент (из-за stripe).

Ответить