Ghid pentru configurarea zfs pe freebsd

NOTĂ! Articolul original este în curs de suplimente permanente, traducerea poate fi diferită de cea originală.

Când se utilizează ZFS, se recomandă utilizarea a cel puțin 1GB de memorie RAM. Este posibil să lucrați cu ZFS și pe sisteme cu mai puțin RAM, dar în acest caz va trebui să configurați parametrii kernelului, altfel nu puteți evita problemele.







Istoricul lansărilor FreeBSD, inclusiv ZFS, arată astfel:

  • 7.0, 7.1 - importul versiunii originale a lui ZFSv6. Necesită o reglare considerabilă pentru funcționarea stabilă
  • 7.2 - încă ZFSv6, manipulare îmbunătățită a memoriei, poate amd64 nu are nevoie de nici o configurație
  • 7.3 + - portarea inversă a codului ZFSv13, dar pot exista unele caracteristici noi
  • 8.0 + - se folosește codul ZFSv13, se face o mulțime de eforturi în ceea ce privește erorile, se recomandă utilizarea

De asemenea, este recomandat pentru a elimina din miezul toate driverele neutilizate și opțiunile pe care le va salva câteva MB de memorie. Există indicii că funcționarea stabilă a fost realizată cu valoarea parametrului vm.kmem_size = »1536M» un nucleu nemodificat 7.0-RELEASE, care a fost suficient pentru șoferi și KVA_PAGES instalare = 512.


[ad name = "Google Adsense"]

Sarcina de lucru poate necesita o reducere semnificativă a dimensiunii ARC și VDEV cache. ZFS ARC opereaza printr-un proces multi-threaded, iar în cazul în care ARC va necesita mai multă memorie, atunci ZFS va aloca necesar. În acest caz arc_max (vfs.zfs.arc_max) poate fi depășită, în timp ce un alt fir din cadrul ZFS eliberează periodic memoria alocată ARC, în cazul depășirii arc_max. Astfel, chiar și cu o mică valoare poate fi depășită arc_max ARC kmem_size_max parametrul kernel și panică. În sistemele în care memoria nu este suficient, se recomandă să se utilizeze cel mai mic arc_max posibil. De exemplu, instalați și vm.kmem_size vm.kmem_size_max o valoare 512M, 160M vfs.zfs.arc_max în valoare, păstrând jumătate vfs.zfs.vdev.cache.size dimensiunea implicită de 10MB (în acest mod minunat oferă o mai bună stabilitate).







echo TEXT = $ TEXT, `echo $ TEXT | awk '' `
echo DATA = $ DATA, `echo $ DATA ' awk '' `
echo TOTAL = $ TOTAL, echo $ TOTAL awk '' `

Atenție: poate există un alt mod de a determina dimensiunea vm.kmem_size. dar dezvoltatorii nu sunt conștienți de aceasta. În prezent, acest lucru necesită experimente. Cu toate acestea, dacă setați valoarea de la loader.conf la vm.kmem_size prea mare, kernelul se va panica în timpul fazei inițiale de boot. Puteți rezolva acest lucru prin accesarea liniei de comandă a bootloader-ului și setarea vm.kmem_size = "512M" (sau mai mică).

Parametrul Vm.kmem_size_max nu este utilizat în mod direct în funcționarea sistemului (nu este o limită de creștere a KMEM), dar este folosit pentru inițială de auto-configurare a diverșilor parametri de configurare a sistemului, dintre care cele mai importante pentru această discuție este rezoluția ARC. Dacă kmem_size arc_max și va fi configurat manual, kmem_size_max vor fi ignorate.

Problema de depleție a memoriei kernel-ului este foarte complexă și depinde de viteza discului, de programele de aplicații și de caching-ul pe care îl execută ZFS. Unitățile mai rapide vor scrie mai rapid date din memoria cache, dar vor umple mai rapid și cache-urile. În general, cu cât unitățile de discuri sunt mai mari și mai rapide, cu atât mai multă memorie aveți nevoie de ZFS.

Sistemele de operare pe FreeBSD 7.2 și de mai sus, strategia de alocare de memorie îmbunătățit în mod semnificativ, ca urmare, pe sisteme cu mai mult de 2 GB de memorie RAM, nu este nevoie pentru oricare dintre setările.

In sistemele care folosesc FreeBSD 7.0 și 7.1, memorie nucleu (vm.kmem_size) trebuie crescută la aproximativ 1 GB, iar dimensiunea este redusă ARC:

vm.kmem_size_max = "1024M"
vm.kmem_size = "1024M"
vfs.zfs.arc_max = "100M"

Acest lucru poate fi util în cazul în care aparatul este încărcat cu alte sarcini, cum ar fi activitatea de rețea (server de fișiere) etc. Configurarea KVA_PAGES pe amd64 nu este necesară.


[ad name = "Google Adsense"]







Articole similare

Trimiteți-le prietenilor: