Denis Zaika wrote:
On 23.02.2012 14:48, Slawa Olhovchenkov wrote:
Пускай у нас есть система amd64.
Пусть она будет zfs only.
Какое количество памяти надо закладывать в таком варианте для
нормальной (стабильной) работы zfs?

Какие параметры надо тюнить и как?

Хочется потребность в памяти зажать максимально.

На 768 МБ заводилось года ~4 назад, правда без raidz и прочих sha csums,
dedup и без zfs on root.
Делал как-то так:

vm.kmem_size_max="512M"
vm.kmem_size="512M"
vfs.zfs.arc_max="256M"
vfs.zfs.zil_disable="1"

Может что-то еще было, но уже не вспомню. Его тогда и на x86 получилось
завести, после увеличения kva_pages. И оно даже стабильно работало.


Ну раз пошла такая пьянка...

У меня одна машина стоит на i386 с гигом памяти под RELENG_9. Весь диск на zfs.

/boot/loader.conf:
vm.kmem_size_max=1536M
vm.kmem_size=1536M

KERNEL:
KVA_PAGES=500

Wine с diablo][, flash, chromium, регулярный buildworld/buildkernel и ещё куча всего пашут. Работает даже стабильнее винды на том же железе.

vm.kmem_size* - обозначает сколько памяти из виртуальных 4G можно брать ядру. Чем больше поставлено тем меньше шансов получить "kmem map too small". Увеличение выше определённого предела даёт 100% корку при инициализации ядра, у меня где-то в районе 17xx Mb.

vfs.zfs.arc_max - ограничивает размер адаптивного кеша. Уже достаточно давно этим параметром можно не играться, по-моему ещё до выхода 8.2 кто-то коммитил патчи позволявшие ZFS'у выдыхать когда память была нужна кому-то ещё.

Если не собираетесь запускать чего-нить прожорливого то и 512 Mb ему за глаза хватит, хотя машина постоянно старается выжрать всю оперативу ZFS'ом.

--
Sphinx of black quartz judge my vow.

Ответить