Permalänk

FreeBSD+ZFS

Hej

Efter att ha läst som en galning på internet om ZFS undrar jag om ni kan hjälpa mig och svara på några frågor.

Jag har en hemma server med 5x500gb diskar och lite andra smådiskar. Om jag bestämmer mig för att skapa en RAIDZ pool med 500Gb diskarna. Men sen vill jag mounta en eller två TB diskar enskilt utan någon redundans. Om jag lägger till TB diskarna i en annan pool.

Vad händer när det skrivs data till den poolen, kommer datan att skriva till Raidz delen och TB disken. Tex om en TB disk kraschar så kommer all data som skrivits till poolen att försvinna. Eller kan man binda en eller flera kataloger till en disk.

Anledningen till att frågor beror på att det blir en så hög kostnad att enbart köra Raidz.

Jag hoppas att ni förstår vad jag menar.

Permalänk
Medlem

Du kan ju skapa flera olika zpooler, tex. har du en pool för din raidz, sedan skapar du en eller flera pooler där du lägger dina anda diskar.
Har du en pool med flera diskar men utan spegling/raidz får du nog räkna med att allt data ryker om en disk kraschar, så en pool per disk är nog att föredra där...

Permalänk
Medlem

Glöm inte att det inte går att lägga till diskar i en pool efter den blivit skapad.
Samt att om du skapar en RAIDZ av en bunt diskar så kommer den minsta disken att bestämma storleken på poolen, alltså 500GBx5+250GBx2 = 1500GB utrymme.

Om du bara ska koppla t.ex externa USB-diskar och inte använda RAIDZ finns det egentligen inte nån anledning att använda ZFS, formatera dom som ufs2 eller nåt annat isåfall. Om du vill dra ihop 2 externa USB-diskar till en och samma mountpoint funkar ju ZFS bra dock.

Permalänk
Avstängd
Citat:

Ursprungligen inskrivet av Neco
Glöm inte att det inte går att lägga till diskar i en pool efter den blivit skapad.
Samt att om du skapar en RAIDZ av en bunt diskar så kommer den minsta disken att bestämma storleken på poolen, alltså 500GBx5+250GBx2 = 1500GB utrymme.

Det stämmer inte riktigt. Du kan alltid lägga till en grupp av diskar till en zpool. Men varje grupp bör klara av en diskkrasch inuti gruppen. Det är alltså inte bra att adda en grupp av diskar, som bara består av en enda disk - därför att om den disken kraschar så har hela gruppen kraschat. Du kan däremot adda en grupp av diskar om gruppen är en raidz1 utan problem - därför att om en disk kraschar i den gruppen så gör det inget eftersom raidz1 klarar av en diskkrasch.

Däremot kan du inte öka på antal diskar inuti en grupp. Men en zpool kan bestå av många olika grupper. Du kan ha flera olika zpooler också, som är oberoende av varandra.

Du kan aldrig minska på antalet diskar. Du kan inte ta bort en grupp, eller minska på antal diskar inuti en grupp. (Detta gäller inte SSD diskar som cache, du kan adda SSD diskar som cache och ta bort dem från en zpool - utan problem)

Det bästa, tycker jag, är att bestämma sig för ett antal diskar som man alltid ska ha i all framtid, och för att uppgradera: swappa en disk i taget mot en större. Helst är raidz2 att rekommendera.

Citat:

Ursprungligen inskrivet av Neco
Om du bara ska koppla t.ex externa USB-diskar och inte använda RAIDZ finns det egentligen inte nån anledning att använda ZFS, formatera dom som ufs2 eller nåt annat isåfall. Om du vill dra ihop 2 externa USB-diskar till en och samma mountpoint funkar ju ZFS bra dock.

Anledningen att använda ZFS är ju att det detekterar och reparerar silent corruption. ZFS detekterar alltid bit rot, dvs silent corruption. Men för att ZFS ska kunna reparera silent corruption krävs någon redundans, helst två diskar eller flera.

Kör du en ensam disk kan inte ZFS reparera ruttna bitar (om du inte installerar ZFS med alternativet "copies=2" för då kopieras data i 2 kopior överallt på disken och då kan ZFS reparera. Dock är jag osäker på om copies=2 kopierar alla data dubbelt, eller bara metadatat dubbelt, dvs det viktigaste datat. Om den kopierar all data dubbelt så får du halva lagringsytrymmet på en ensam disk).

Om du tänker ha extern usb disk, inte som backup, utan som temporär lagring så datat inte är viktigt, så är kanske ett annat filsystem bättre eftersom Linux känner igen många andra filsystem. (Om du inte bara kör mot FreeBSD och Apple OS X som båda kan ZFS, för då går det bra).

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av saddam
Det stämmer inte riktigt. Du kan alltid lägga till en grupp av diskar till en zpool.

Ok, hur?

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Neco
Ok, hur?

Saxat från man-sidan för 'zpool':

zpool add [-fn] pool vdev ... Adds the specified virtual devices to the given pool. The vdev specification is described in the "Virtual Dev- ices" section. The behavior of the -f option, and the device checks performed are described in the "zpool create" subcommand.

Jag gissar på att du blandar ihop zpool och raidz. I en zpool kan du lägga enskilda diskar, mirrors, raidz-arrayer, t.o.m filer om jag inte minns fel.
En raidz är dock låst till det antal diskar du skapar den med från början, dock kan man genom att byta ut diskarna en efter en mot större diskar expandera storleken på en raidz.

Permalänk
Avstängd

Precis.

För att ta det igen. En ZFS raid (som för mig, betyder samma sak som en zpool) består av grupper av diskar. Till en ZFSraid/zpool kan du adda nya grupper av diskar. Det är typ:

#zpool add raidz1 myZFSraid disc8 disc9 disc10

Eller nåt sånt.

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av saddam
Precis.

För att ta det igen. En ZFS raid (som för mig, betyder samma sak som en zpool) består av grupper av diskar. Till en ZFSraid/zpool kan du adda nya grupper av diskar. Det är typ:

#zpool add raidz1 myZFSraid disc8 disc9 disc10

Eller nåt sånt.

Så fortfarande ingen riktig erfarenhet alltså av att lägga till diskar till en och samma mountpoint?
Redan läst alla mansidor och labbat själv med virtuella maskiner men aldrig fått det att fungera.

Skapa en raidz med X antal diskar, utrymmet tar slut, man vill fortsätta spara data under samma mountpoint och då skapa ytterligare en raidz eller liknande men som ska ligga under samma mountpoint i filsystemet.

Permalänk
Avstängd

Jag förstår inte din fråga. Om du addar en grupp av diskar till din zpool så växer zpool. Dina mountpoints och allting ligger kvar som vanligt.

Det är som om du lägger i ytterliggare RAM stickor i din maskin. Det totala minnet ökar.

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av saddam
Jag förstår inte din fråga. Om du addar en grupp av diskar till din zpool så växer zpool. Dina mountpoints och allting ligger kvar som vanligt.

Det är som om du lägger i ytterliggare RAM stickor i din maskin. Det totala minnet ökar.

Har fortfarande inte lyckats med det i praktiken själv, så jag vill se vilka options och dylikt som krävs för att få det att fungera.

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Neco
Har fortfarande inte lyckats med det i praktiken själv, så jag vill se vilka options och dylikt som krävs för att få det att fungera.

Jag kan ju ha missförstått vad du vill göra och jag använder OpenSolaris 2008.11 istället för FreeBSD. Så ta allt med en nypa salt.

> zpool create bitbucket raidz c4t1d0 c4t2d0 c4t3d0 > zfs create bitbucket/bucket > zpool status ... bitbucket raidz c4t1d0 c4t2d0 c4t3d0 ... > df -h ... bitbucket 142M bitbucket/bucket 142M ... > zpool add bitbucket raidz c4t4d0 c4t5d0 c4t6d0 > zpool status ... bitbucket raidz1 c4t1d0 c4t2d0 c4t3d0 raidz1 c4t4d0 c4t5d0 c4t6d0 ... > df -h ... bitbucket 315M bitbucket/bucket 315M ...

Detta fungerar hos mig på min virtuella (VirtualBox) OpenSolaris maskin.

Det där [code] fungerar lite halvkass här men jag kom inte på något bättre sätt att få till en läslig text.

[Edit: Om jag nu ska skriva kodexempel så kan jag ju åtminstone försöka få det rätt...]

Permalänk
Medlem

Efter lite labbande och om jag tillåter mig att gissa lite så tror jag att Neco försökt lägga till en raidz till en zpool, något i stil med # zpool add tank tank2
Detta fungerar inte.
Man kan däremot göra # zpool add tank raidz1 disk1 disk2 disk3
Är det samma storlek på diskarna visar nu # zfs list tank dubbelt upp i utrymme.

Måste lära mig skriva snabbare om jag skall hinna före Fnorken

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av saddam
För att ta det igen. En ZFS raid (som för mig, betyder samma sak som en zpool) består av grupper av diskar.

RAID står för Redundant Array of Independent/Inexpensive Disks. En zpool kan lika gärna vara en stripe/JBOD, som inte är redundant. Alltså, zpool != RAID.

/Besserwisser-nillon

Permalänk
Avstängd
Citat:

Ursprungligen inskrivet av nillon
RAID står för Redundant Array of Independent/Inexpensive Disks. En zpool kan lika gärna vara en stripe/JBOD, som inte är redundant. Alltså, zpool != RAID.

/Besserwisser-nillon

Du har helt rätt där.

Jag ser dock ingen anledning att köra zpool utan redundans, jag föredrar raid eller mirror.

Permalänk
Medlem

Jag lånar tråden lite, då rubriken stämmer så bra.

Jag har en filserver jag tänkte skulle använda ZFS, och mig veterligen är FreeBSD ypperlig för serverrollen. Jag är inte kunnig på os'et, men jag kan linux bra.

Den ska bara stå som lagringsplats på ett företag. 2-3 datorer ska kunna ansluta, Mac som PC, och jag är ganska säker på att Appletalk inte används, så bara TCP/IP kommer användas.

1st 160GB systemdisk, och4st 500GB lagringsdiskar.
Tänkte använda mig utav ZFS rakt igenom, då jag fått upp ögonen lite för att datan inte är helt säker där den är nu på Ext3, även om det är ett bra filsystem.

Datorn kommer inte stå övervakad med monitor eller dyl. utan kommer mer eller mindre bara startas upp vid behov. Kan man på nåt relativt enkelt sätt få datorn att meddela sig vid ev. diskkrash i raiden? Kanske ett mail som skickas iväg? (Mycket konfiguration?)

CPUn är en 5000+ med 8GB DDR2, den borde klara ZFS med bra prestanda antar jag? Diskarna är SATA2.

Nåt särskilt som är värt att tänka på?

Visa signatur

WS: Asus P8Z77-I Deluxe mITX | Intel 3770K@4.6 | NH-U12P | Asus 780 GTX | Corsair 2x8GB 1600Mhz CL9 | Samsung 840 512GB | Ubuntu 16.04.3 x86_64 | Corsair AX750 | 2x Dell U2412M | Puppe.se | NAS: i7 860, 16GB DDR3, GA-P55M-UD4, FD Define R3, 8x2TB Samsung F4EG, Serveraid M1015, EVGA 750W G2 PSU, FreeBSD x64

Permalänk
Avstängd

Om du verkligen ska köra skarp produktion så kanske du ska överväga raidz2 istället för raidz1. Sen kanske du kan adda en hot disc också. Den idlar tills det blir en krasch, då kommer den automatiskt gå in och reparera poolen. Med raidz2 och en hot disc så får du mycket mycket mycket säker lösning. Plus att ZFS säkrar ju dina data också.

Du kan köra crontab med jämna mellanrum (varje dag?/timme?) och köra "zpool status". Där ser du om det blivit något läs/skriv fel på en disk. Då kan du skicka mail eller sms så kan du byta ut disken.

EDIT:
Det är många som föredrar CIFS för att dela ut mappar, då det ger bra prestanda och är smidigt. Jag föreslår att du kör CIFS. Ronnylov vet mera om CIFS fördelar, fråga honom

Permalänk
Medlem

Det finns en dator med Mac OS 9.2/9.1 som kan behöva tillgång till servern också, samt 1-2 med Mac OSX, samt 1st PC. Detta borde inte vara problem?
Är 98% säker på att det inte används nåt AppleTalk längre.

Visa signatur

WS: Asus P8Z77-I Deluxe mITX | Intel 3770K@4.6 | NH-U12P | Asus 780 GTX | Corsair 2x8GB 1600Mhz CL9 | Samsung 840 512GB | Ubuntu 16.04.3 x86_64 | Corsair AX750 | 2x Dell U2412M | Puppe.se | NAS: i7 860, 16GB DDR3, GA-P55M-UD4, FD Define R3, 8x2TB Samsung F4EG, Serveraid M1015, EVGA 750W G2 PSU, FreeBSD x64

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Schrimp
Jag har en filserver jag tänkte skulle använda ZFS, och mig veterligen är FreeBSD ypperlig för serverrollen. Jag är inte kunnig på os'et, men jag kan linux bra.

Ska du verkligen använda FreeBSD och ZFS till en server i produktionsmiljö? Har du tittat på FreeBSDs wiki om ZFS? http://wiki.freebsd.org/ZFS Jag skulle drista mig till att säga att det inte är riktigt färdigt än.

OpenSolaris (Indiana projektet) är ingen direkt lösning heller. Dom publicerar för närvarande inga säkerhets patchar, se tex http://www.opensolaris.org/jive/thread.jspa?threadID=101336&t... så det måste lösas på något annat sätt. Eller så tar man risken och struntar i uppdateringar mellan releaser. Men det finns säkert någon annan som säljer support och uppdateringar till OpenSolaris. Jag har själv börjat fundera på att migrera min hemmaserver från OpenSolaris just pga avsaknanden av patchar. Fast jag vet inte riktigt vad jag ska byta till.

...nu kommer jag säkert få en massa religösa FreeBSD och Solaris fanatiker efter mig...

Permalänk
Medlem

Kan man inte köpa support till OpenSolaris? Jag tycket mig ha sett det lite varstans.

Har någon kört Solaris på riktigt, 10 med support, det kanske inte dräller med patchar till det som för Linux och windows?

Permalänk
Avstängd

Ska man köra servrar i skarp produktion kanske Solaris 10 kan vara ett alternativ. Det släpps patchar regelbundet. Dock finns inte CIFS till S10, vad jag vet. Nästa månad kommer OpenSolaris 2009.06.

Man kan köpa support till OpenSolaris, ja. Kostar nån tusenlapp per år eller däromkring tror jag?

Permalänk
Medlem

Vad tycker ni jag ska använda för OS då?
ZFS tycker jag är högt önskvärt, då det medför mycket gott för säkerheten i datan.

Visa signatur

WS: Asus P8Z77-I Deluxe mITX | Intel 3770K@4.6 | NH-U12P | Asus 780 GTX | Corsair 2x8GB 1600Mhz CL9 | Samsung 840 512GB | Ubuntu 16.04.3 x86_64 | Corsair AX750 | 2x Dell U2412M | Puppe.se | NAS: i7 860, 16GB DDR3, GA-P55M-UD4, FD Define R3, 8x2TB Samsung F4EG, Serveraid M1015, EVGA 750W G2 PSU, FreeBSD x64

Permalänk
Avstängd

Kör det OS du kan bäst? Det är ju ändå jobbdator, och inte lekdator? Då är det viktigt att du kör det OS du kan bäst, och får bäst support på. Strular det så vill du få problemet snabbt avklarat, eftersom det är jobbdator.

Permalänk
Citat:

Ursprungligen inskrivet av Fnorken
Ska du verkligen använda FreeBSD och ZFS till en server i produktionsmiljö? Har du tittat på FreeBSDs wiki om ZFS? http://wiki.freebsd.org/ZFS Jag skulle drista mig till att säga att det inte är riktigt färdigt än.

Helt riktigt. ZFS för FreeBSD är inte "färdigt" och lär aldrig bli det heller. Det är i ständig utveckling, precis som alla andra större aktiva mjukvaruprojekt inom Open Source.

Visa signatur

"Linux is good because it keeps people out of real kernels"

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av z84
Efter lite labbande och om jag tillåter mig att gissa lite så tror jag att Neco försökt lägga till en raidz till en zpool, något i stil med # zpool add tank tank2
Detta fungerar inte.
Man kan däremot göra # zpool add tank raidz1 disk1 disk2 disk3
Är det samma storlek på diskarna visar nu # zfs list tank dubbelt upp i utrymme.

Måste lära mig skriva snabbare om jag skall hinna före Fnorken

Tack till z84 och Fnorken.

För gamla MacOS klienter finns: http://netatalk.sourceforge.net/

# zpool create tank raidz ad1 ad10 ad12 (Diskarna är 2GB stora)

tank 3.9G 0B 3.9G 0% /tank

# zpool add tank raidz ad4 ad6 ad8

tank 7.8G 0B 7.8G 0% /tank

Permalänk
Medlem

Någon här som kör/kört ZFS i produktion (på jobbet)?

Permalänk
Medlem

Du kan fethaja att det finns människor som kör zfs i professionella miljöer...under solaris 10.

Visa signatur

Björn

Permalänk
Citat:

Ursprungligen inskrivet av Meto
Någon här som kör/kört ZFS i produktion (på jobbet)?

Vi har en backuptjänst som nyttjar ZFS och FreeBSD. Hanterar ett par TB data. Jag sköter dock inte själva ZFS-delen och har faktiskt rätt dålig kunskap om ZFS generellt.

Upplägget liknar dock i viss mån det som presenteras här: http://forums.freebsd.org/showthread.php?t=3689

Visa signatur

"Linux is good because it keeps people out of real kernels"