NAS med ZFS

Berätta om dina pågående projekt.
Användarvisningsbild
arvidb
Inlägg: 4537
Blev medlem: 8 maj 2004, 12:56:24
Ort: Stockholm

NAS med ZFS

Inlägg av arvidb »

Jag har en filserver hemma som jag håller på att uppdatera & uppgradera. När jag började såg den ut så här:

* Virtuell installation av OpenMediaVault (omv-0.5.48, en riktigt gammal version) - systemet på en 4 GiB virtuell disk backad av en SSD och datadisk i form av en 3 TB WD Red.
* Hårdvaran under är ett Supermicro A1SAi-2550F (4 core Atom C2000) med 16 GiB ECC-RAM.
* Virtualisering med libvirt (KVM+Qemu).

Jag behöver egentligen inte mer plats just nu men däremot var det hög tid för uppdatering av mjukvaran, och så kändes det olustigt att inte ha någon form av redundans. Allt viktigt bör i och för sig finnas på offline-backup, men det vore ändå besvärligt att bli av med rippade filmer med mera. Bland annan efter att ha läst xxargs inlägg här så blev jag intresserad av ZFS och Btrfs - både möjligheten till redundans och skydd mot "bitröta" känns som bra grejer!

Efter att ha läst på lite valde jag ZFS. Även om Btrfs funkar bra för många så verkar det också vara en hel del som plötsligt får problem på olika sätt. ZFS verkar mer beprövat. Nackdelen med ZFS är att det inte finns i Linuxkärnan utan man måste installera det separat, vilket gör framtida stöd osäkert (och gör installationen krångligare). Men hellre det än ett filsystem som plötsligt inte funkar. Så jag patchade kärnan för ZFS och har lekt runt lite med "pooler" skapade från lokala filer för att testa hur det funkar.

Häromdan köpte jag också en ny disk, en Seagate ST6000DM003. Det är en disk på 6 TB. Jag valde den på grund av lågt pris per TB och - kanske viktigare - lågt ljud och låg effekt, och på grund av att den var tillgänglig i butik (just hårddiskar vill jag inte att posten ska slänga omkring). Lustigt nog blev det mycket billigare att köpa en extern lagringsenhet - STEL6000200 (1539:-) - och plocka ur disken, än att köpa disken löst (1990:-). Priserna är de billigaste som finns tillgängliga i butik i närheten av mig. Tyvärr gick det inte att plocka ur disken utan att delvis förstöra kabinettet - det var typ kassaskåpssäkert!

Denna disk ger mig redundans genom spegling samt 3 TB i reserv inför framtiden.

Ett problem med C2000-chipsetet är att det inte stödjer VT-d - det går alltså inte att "skicka vidare" SATA-kontrollern till en virtuell maskin. Hittills har jag löst det genom att skicka med den råa diskenheten som en virtuell disk till OpenMediaVault. ZFS trivs dock inte med virtuella enheter - direkt åtkomst till SATA-kontrollern rekommenderas starkt, som jag har förstått det bland annat för att säkerställa att data verkligen skrivs till disk (och inte fastnar i cache), för att hantera diskfel, och för att kolla SMART-data. Så jag kör ZFS på hosten och tanken har varit att skapa en zvol (en "ZFS-diskenhet" ovanpå ZFS-poolen) och skicka med den till OpenMediaVault, som då får skapa sitt egna filsystem (ext4?) ovanpå. Men nu har jag börjat fundera på om det inte vore smidigare att helt enkelt installera samba (cifs-server) direkt på hosten istället. Vi får se hur det blir, måste fundera lite.
Användarvisningsbild
arvidb
Inlägg: 4537
Blev medlem: 8 maj 2004, 12:56:24
Ort: Stockholm

Re: NAS med ZFS

Inlägg av arvidb »

En kul grej som jag upptäckte är att det går att skicka mail med curl! Jag använder detta för att få statusmeddelanden från ZFS:

Kod: Markera allt

#!/bin/bash

headers="From: <avsändaren-som-ska-synas-i-mailet>
To: <din-mottagaradress>
Subject: $1
Date: $(date --rfc-email)"

body="$(cat -)"

echo "$headers

$body
" | curl smtp://smtp.din-mailserver.org:587 --ssl-reqd --mail-from "<din-mailkontoadress>" --mail-rcpt "<din-mailkontoadress>" --upload-file - --user <anv-namn>:<lösen> --connect-timeout 60 --max-time 120
Scriptet anropas med ärenderaden som parameter och förväntar sig mailtexten via stdin.
Användarvisningsbild
mrfrenzy
Co Admin
Inlägg: 14818
Blev medlem: 16 april 2006, 17:04:10

Re: NAS med ZFS

Inlägg av mrfrenzy »

man måste installera det separat, vilket gör framtida stöd osäkert (och gör installationen krångligare). Men hellre det än ett filsystem som plötsligt inte funkar.
Vilken linuxdist kör du?

Om du använder debian så behöver du bara skriva "apt-get install zfs" för att det ska fungera och det är 100% garanterat att det inte plötsligt kommer sluta fungera.
Debian släpper aldrig en uppdatering som inte är ordentligt testad av tusentals testare.

För enkelhetens skull rekommenderas att man installerar på en liten root-partition med ext4 och använder zfs för lagringen sedan (det går bra att dela upp ifall man inte har separata systemdiskar).
Användarvisningsbild
arvidb
Inlägg: 4537
Blev medlem: 8 maj 2004, 12:56:24
Ort: Stockholm

Re: NAS med ZFS

Inlägg av arvidb »

Jag kör Gentoo och en modullös kärna (enligt rekommendationerna från Kernel Self Protection Project). Gentoo har instruktioner för detta även om det behövdes lite handpåläggning för att få det att funka utan kernelmoduler aktiverat.

Precis som du säger så kör jag rooten som ext4 (på en SSD). Endast lagringen blir på ZFS.
Användarvisningsbild
arvidb
Inlägg: 4537
Blev medlem: 8 maj 2004, 12:56:24
Ort: Stockholm

Re: NAS med ZFS

Inlägg av arvidb »

Är det någon som vet hur man monterar en partition skapad på en virtuell disk på hosten?

Så här ser konfigurationen för disken ut i libvirt (/etc/libvirt/qemu/omv.xml):

Kod: Markera allt

    <disk type='block' device='disk'>
      <driver name='qemu' type='raw'/>
      <source dev='/dev/disk/by-partuuid/b1289fda-19be-4791-86ae-9a91b3c4552e'/>
      <target dev='vdb' bus='virtio'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x0'/>
    </disk>
'blkid' på hosten säger:

Kod: Markera allt

/dev/sda1: PTUUID="44b45295-b848-4c12-9d6c-4f44e460e62e" PTTYPE="gpt" PARTLABEL="storage1" PARTUUID="b1289fda-19be-4791-86ae-9a91b3c4552e"
/etc/fstab på OpenMediaVault:

Kod: Markera allt

UUID=e8bc6d21-24da-4f82-a83b-a8b95c0dbb25 /media/e8bc6d21-24da-4f82-a83b-a8b95c0dbb25 ext4 defaults,nofail,acl,user_xattr,noexec,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 0 2
'blkid' på OpenMediaVault:

Kod: Markera allt

/dev/vdb1: LABEL="storagefs1" UUID="e8bc6d21-24da-4f82-a83b-a8b95c0dbb25" TYPE="ext4" 
Om jag fattar det rätt så har jag alltså skapat en partition på disken som jag sedan skickar med som en virtuell disk till OpenMediaVault. (Jag hade för mig att jag skickade med själva disken rå, men tydligen inte...?) Det borde alltså vara så att /dev/disk/by-partuuid/b1289fda-19be-4791-86ae-9a91b3c4552e1 innehåller en partitionstabell som i sin tur innehåller en partition med ett ext4-filsystem på. Hur monterar jag detta på hosten? :humm:
Användarvisningsbild
arvidb
Inlägg: 4537
Blev medlem: 8 maj 2004, 12:56:24
Ort: Stockholm

Re: NAS med ZFS

Inlägg av arvidb »

Ha, jag kom på det!

# mount -o loop,offset=1048576 /dev/disk/by-partuuid/b1289fda-19be-4791-86ae-9a91b3c4552e /media/tmp

Offseten 1048576 = 2048*512 fick jag från:

Kod: Markera allt

#fdisk -l /dev/disk/by-partuuid/b1289fda-19be-4791-86ae-9a91b3c4552e
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 44B45295-B848-4C12-9D6C-4F44E460E62E

Device                                                      Start        End    Sectors  Size Type
/dev/disk/by-partuuid/b1289fda-19be-4791-86ae-9a91b3c4552e1  2048 5860531053 5860529006  2,7T Linux files
Alltid bra att skriva ett foruminlägg för att få ordning på saker och ting. :lol:
xxargs
Inlägg: 10183
Blev medlem: 23 september 2006, 14:28:27
Ort: Södertälje

Re: NAS med ZFS

Inlägg av xxargs »

Bra för oss andra också senare ;-)

Det jag skulle behöva är en liten crash course på är hur man kopplar och bryggar IP-adresser etc. om man tex. kör en FreeNAS i en VM (i KVM) och ändå har anständig datasäkerhet sedan.

har förvisso ett flertal nätverksportar tillgänglig på servern (med Ubuntu 18.04 headless -administreras via SSH enkom) som skulle kunna upplåtas enkom för tänkta VM-maskiner.

...men, känns lite att jag inte greppat konceptet sas.

i grafiska miljöer som oracel och VMware så är det inte så svårt - men att få till det i CLI-miljö verka vara värre än att sätta upp en headless-server från grunden med utdelade volymer etc.
Användarvisningsbild
lond
Inlägg: 3508
Blev medlem: 23 september 2009, 11:52:45
Ort: Hyssna

Re: NAS med ZFS

Inlägg av lond »

På min NAS kör jag freeNAS på en USB-sticka tillsammans med 4st 4TB-diskar i RAID som en stor ZFS-disk.

Enda problemet jag har haft var när USB-stickan blev trött och havererade, efter ett nervöst ögonblick kunde jag mounta ZFS-disken efter nyinstallationen :)

/// Marcus
Användarvisningsbild
arvidb
Inlägg: 4537
Blev medlem: 8 maj 2004, 12:56:24
Ort: Stockholm

Re: NAS med ZFS

Inlägg av arvidb »

xxargs skrev:Det jag skulle behöva är en liten crash course på är hur man kopplar och bryggar IP-adresser etc...
Nu var det rätt många år sedan jag kollade på detta, men jag har för mig att det är en djungel av olika sätt att lösa det hela. Jag löste det till slut genom att skapa en brygga med brctl (fast bridge-utils är visst deprecated nu så använd iproute2 istället) och dela ut denna via virtio. Jag har för mig att qemu sedan skapar ett virtuellt interface för varje maskin som startas och kopplar dem till bryggan:

Kod: Markera allt

    <interface type='bridge'>
      <mac address='<censored>'/>
      <source bridge='br_lan'/>
      <model type='virtio'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>
Utifrån ser då datorn ut som en switch med flera datorer anslutna.

Har man Intel VT-d eller AMD-Vi så kan man "koppla bort" det fysiska interfacet helt från hosten och låta gästen få hantera det istället. Edit: Givet att man har ett fysiskt nätverksinterface över på hosten då såklart.

Sen finns det en massa andra mysko lösningar också har jag för mig, mer eller mindre special för respektive virtualiseringsmjukvara.
Användarvisningsbild
arvidb
Inlägg: 4537
Blev medlem: 8 maj 2004, 12:56:24
Ort: Stockholm

Re: NAS med ZFS

Inlägg av arvidb »

Mitt moderkort har fyra nätverksinterface (enp0s20f0 - enp0s20f3). Bryggorna ser ut så här:

Kod: Markera allt

# brctl show
bridge name     bridge id               STP enabled     interfaces
br_lan          8000.002590f2ce5e       no              enp0s20f0
                                                        enp0s20f1
                                                        enp0s20f2
br_wan          8000.002590f2ce61       no              enp0s20f3
Det vill säga port0-port2 är bryggade (jag använder dem istället för en switch i serverrummet). Port3/br_wan hade jag för WAN-anslutning förut när jag körde psSense virtualiserat på denna maskin.
Pedalosaurus
Inlägg: 455
Blev medlem: 29 april 2016, 21:44:12

Re: NAS med ZFS

Inlägg av Pedalosaurus »

Min son kör FreeBSD med ZFS på servernivå och är imponerad :) Det är nog ett filsystem som kommer att finnas kvar och utvecklas. Körde själv ZFS på OpenSolaris för några år sedan när jag hade mitt OS självskadebeteende :D och försökte ”gå över” från Windows till Linux, Open Solaris m.fl. OS. Hade gärna fortsatt med OpenSolaris för det var stabilt och kraftfullt. Dock så fanns inte mycket program till det. Sedan kom ju Ipad som jag var skeptisk till först, men nu är det det enda jag använder i stort sett. Mycket pga att det finns så mycket musikappar till den, och det är det jag kör mest nästan. Men det finns ju en gemensam nämnare och det är ju UNIX som ju IOS är baserat på. Vilken version vet jag dock inte. Tillbaks till ämnet :) ZFS är ett fantastiskt bra filsystem som är här för att stanna skulle jag tro!
Användarvisningsbild
arvidb
Inlägg: 4537
Blev medlem: 8 maj 2004, 12:56:24
Ort: Stockholm

Re: NAS med ZFS

Inlägg av arvidb »

Jag har bestämt mig för att skippa OpenMediaVault och köra samba direkt på servern istället. Det verkar funka bra.

Det är ju flera här som kör ZFS (och Btrfs); hur ofta har ni stött på bitröta (alltså checksummefel)? Under hur lång tid och med hur mycket data?
Användarvisningsbild
lond
Inlägg: 3508
Blev medlem: 23 september 2009, 11:52:45
Ort: Hyssna

Re: NAS med ZFS

Inlägg av lond »

Jag körde igång min NAS med freeNAS och 4st 4TB diskar 2015-08 och det enda problemet jag har råkat ut för är att USB-minnet med freeNAS på havererat en gång.

Kan även tillägga att den alltid varit kopplad till en UPS. Nu för tiden är det min pfsense-router som övervakar UPS:en och skickar ut meddelande på nätverket när det är dags att stänga ned saker vid strömavbrott. Har inte fixat att den skickar ut WOL-meddelanden när strömmen kommit tillbaka :humm: :humm:

Det är en HP MicroServer Gen8 som huserar NAS:en.

/// Marcus
Användarvisningsbild
arvidb
Inlägg: 4537
Blev medlem: 8 maj 2004, 12:56:24
Ort: Stockholm

Re: NAS med ZFS

Inlägg av arvidb »

lond: Kör du scrubs på dina ZFS-pooler ibland? Kollar du resultatet? :)
guckrum
Inlägg: 1669
Blev medlem: 19 juni 2012, 09:04:27
Ort: Lund

Re: NAS med ZFS

Inlägg av guckrum »

Det är ju flera här som kör ZFS (och Btrfs); hur ofta har ni stött på bitröta (alltså checksummefel)? Under hur lång tid och med hur mycket data?
Händer väl "ibland", beror ju såklart på hur många diskar man har. Jag inbillar mig att det finns en "badkarseffekt",
dvs en del diskar gallras bort ganska tidigt. (Jag kasserar dessutom diskar som rapporterar SMARTfel omedelbart.)
De som är kvar håller länge.
Skriv svar