Instalace serveru FreeBSD / ZFS
Vilem Kebrt
vilem.kebrt at gmail.com
Wed Mar 25 21:27:03 CET 2009
moc pekne, odzkousim...
diky za popis...
vilem
Miroslav Lachman napsal(a):
> Jozef Babjak wrote:
>>>> Mel jsem na mysli zvetsovani mista na filesystemu serveru napr. pro
>>>> /home
>>>> a ne pridavani disku do serveru. :-)
>>
>>
>>> Jak je to v tomto ohledu na ZFS netusim.
>>
>>
>> ^-- IIRC, jednoducha zmena velkosti particii a na nich leziaceho
>> suboroveho systemu - odhliadnuc od faktu ze, samotne pojmy particie a
>> suboroveho systemu mozu byt v pripade ZFS zavadzajuce - je jednou zo
>> zakladnych crt ZFS. Nakolko je to teoria a nakolko je to pouzitelne
>> [na FreeBSD], zial, povedat neviem.
>
> Se ZFS je situace uplne jina. V idealnim pripade dostane ZFS nejake cele
> disky (treba ad0 a ad1 do mirroru, nebo ad0 + ad1 + ad2 do RAIDZ [neco
> jako RAID5]), v pripade pouziti nejakeho pole pod nim, dostane jen to
> jedno zarizeni, ktere to diskove pole "exportuje" pro system.
> Z techto disku se prikazem zpool vytvari pool, ve kterem se rozdeluji
> jednotlive souborove systemy. Pro kazdy souborovy system (rikejme mu
> oddil) je dostupna kapacita celeho poolu, dokud ji neomezime prikazem
> zfs set quota=size tank/muj_oddil
>
> Na jednom stroji to vypada nejak takhle:
>
> root at kiwi ~/# zfs list
> NAME USED AVAIL REFER MOUNTPOINT
> tank 1.30T 1.37T 29.9K /tank
> tank/system 1.04G 1.37T 28.4K /tank/system
> tank/system/tmp 49.4K 1.37T 49.4K /tmp
> tank/system/usr 610M 1.37T 80.0K /tank/system/usr
> tank/system/usr/obj 26.9K 1.37T 26.9K /usr/obj
> tank/system/usr/ports 441M 1.37T 213M /usr/ports
> tank/system/usr/ports/distfiles 105M 1.37T 105M /usr/ports/distfiles
> tank/system/usr/ports/packages 123M 1.37T 123M /usr/ports/packages
> tank/system/usr/src 168M 1.37T 168M /usr/src
> tank/system/var 453M 1.37T 213K /var
> tank/system/var/db 415M 1.37T 415M /var/db
> tank/system/var/db/pkg 387K 1.37T 387K /var/db/pkg
> tank/system/var/log 37.7M 1.37T 37.7M /var/log
> tank/system/var/run 60.6K 1.37T 60.6K /var/run
> tank/vol0 1.30T 1.37T 1.30T /vol0
> tank/vol0/mon 65.1K 1.37T 65.1K /vol0/mon
>
> Celkova velikost poolu je v tomto pripade 2.7TB (pool tvori 4 disky o
> kapacite 1TB v rezimu RAIDZ) a z toho uz je 1.3TB zabraneho mista.
> Jak je videt, tak kazdy z oddilu ma porad ve sloupci AVAIL napsano
> 1.37T. Pokud bych chtel treba pro /vol0/mon nastavit, ze muze dostat
> maximalne 1GB mista a vic ne, staci na to prikaz:
>
> zfs set quota=1G tank/vol0/mon
>
> a od te chvile bude radek pro tento oddil vypadat nasledovne:
>
> tank/vol0/mon 65.1K 1024M 65.1K /vol0/mon
>
> aha, vlastne by se mi ted hodil ten oddil vetsi, treba 5GB:
>
> zfs set quota=5G tank/vol0/mon
>
> tank/vol0/mon 65.1K 5.00G 65.1K /vol0/mon
>
> a po predvedene ukazce to na tom stroji zase vratim zpet
>
> zfs set quota=none tank/vol0/mon
>
> tank/vol0/mon 65.1K 1.37T 65.1K /vol0/mon
>
> Takze pokud nekdo opravdu potrebuje casto nastavovat velikost oddilu
> (rekl bych spis adresarove quoty), tak je ZFS "ta prava volba"
> (samozrejme s ohledem na soucasnou kvalitu / stabilitu atd., to si kazdy
> musi zvazit sam)
>
> Pokud by nekoho prekvapovalo, proc tu mam vytvoreno tolik oddilu, tak je
> to proto, ze se ZFS to je mozne vyuzit a nedela to problemy. Kdyby neco,
> mohu je kdykoliv zrusit a neprijdu tim o zadne prealokovane misto, jako
> kdyz clovek nevhodne rozdeli disk s UFS.
> Tady jsem si napriklad "hral" s nastavovanim ruzne komprese pro ruzne
> oddily (ta se da opet kdykoliv za behu zapnout, vypnout, zmenit jeji
> uroven...)
>
> zfs get -r compression | grep -v off
> NAME PROPERTY VALUE
> tank/system/usr/ports compression gzip-9
> tank/system/usr/src compression gzip-9
> tank/system/var/db/pkg compression gzip-9
> tank/vol0 compression gzip
> tank/vol0/mon compression gzip-9
>
> Ucinnost si lze snadno prohlednout:
>
> zfs get -r compressratio | grep -v 1.0
> NAME PROPERTY VALUE
> tank compressratio 1.17x
> tank/system compressratio 1.61x
> tank/system/usr compressratio 2.13x
> tank/system/usr/ports compressratio 1.67x
> tank/system/usr/src compressratio 3.26x
> tank/system/var/db/pkg compressratio 4.29x
> tank/vol0 compressratio 1.17x
> tank/vol0/mon compressratio 2.08x
>
> Jsou tam zapocitane i nadrazene oddily, ktere ve skutecnosti
> komprimovane nejsou, ale jelikoz jejich potomci kompresi pouzivaji, tak
> i nadrazeny oddil vykazuje nejake compressratio.
>
> Jeste tu od nekoho padnul dotaz na moznost bootovani FreeBSD ze ZFS - v
> 7.x tato moznost neni a i kdyby byla, tak bych ji nevyuzil. Pro tenhle
> konkretni stroj pouzivam USB flashdisk s UFS, kde je root a tam
> nainstalovany zakladni system a mountovany Read-Only, zbytek pak je na
> ZFS. Takze i kdyby se s tim ZFS stalo neco hodne oskliveho, mam
> fungujici system na USB flashdisku a muzu se pokouset ZFS obnovit.
> Ve skutecnosti staci mit na nejakm UFS oddilu jen loader a oddil /boot,
> zbytek pak uz lze po natazeni kernelu premountovat ze ZFS.
>
> V soucasne dobe tusim uz loader ve verzi 8.x ma nejakou podporu
> bootovani ze ZFS, ale nevim, jestli jen z mirroru, nebo i RAIDZ / RAIDZ2.
>
> Doufam, ze tahle mala ukazka nekoho nalaka k testovani a odhalovani
> dalsich chyb v ZFS :)
> Ale nasazeni do provozu necht si kazdy zvazi podle sveho. Na to co jsem
> od toho potreboval ja jsem to nasadil uspesne k plne spokojenosti, ale
> tak nejak "vim" co od toho ocekavat a kde mohou byt problemy a na co
> bych to zatim urcite nepouzil a zustal u UFS.
>
> Mirek
> --
> FreeBSD mailing list (users-l at freebsd.cz)
> http://www.freebsd.cz/listserv/listinfo/users-l
More information about the Users-l
mailing list