The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"ZFS и MemAvailable"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Файловые системы, диски / Linux)
Изначальное сообщение [ Отслеживать ]

"ZFS и MemAvailable"  +/
Сообщение от Аноним (0), 30-Авг-25, 06:13 
После перехода из Btrfs в ZFS на десктопе обнаружил вещь, о которой никто не распространялся и не предупреждал: ZFS использует RAM для своих кэшов как обычное приложение, и линукс не заносит эту память в графу MemAvailable в /proc/meminfo. На самом деле ZFS с готовностью освободит память, если линукс попросит его об этом, однако по каким-то техническим/историческим причинам такая память не попадает в MemAvailable. А должна бы. Отсюда следует, что все остальные приложения (браузеры, OOM-киллеры и т. д.) получают некорректную статистику по тому, сколько памяти доступно в системе -- она существенно занижена. А значит браузеры будут слишком рано разгружать вкладки, OOM-киллеры будут рано пытаться убивать процессы, и т. д.

Есть вариант сделать так, чтобы ARC не жрал много памяти (видимо zfs_arc_max). Но тогда получается, что ZFS не будет использовать оперативку по полной программе в те моменты, когда ее никто не использует.

Есть вариант выставить следующие опции вместо zfs_arc_max (https://github.com/openzfs/zfs/issues/10255):

    options spl spl_kmem_cache_slab_limit=1048576 # default is 16384
    options zfs zfs_abd_scatter_enabled=0 # default is 1

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

Как вы решили такую проблему для себя? Сдается мне, ZFS хреновато интегрирован с линуксом в этом отношении. Мне очень важно иметь правильный MemAvailable, потому что я периодически дохожу до потолка даже с моими 64 GB -- некоторые приложения читают это значение и не стесняясь забирают все. Проблему считаю критичной, и я удивлен, что никто ее особо не упоминает.

Ответить | Правка | Cообщить модератору


Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру