Meenemen BTRFS disk span naar andere machine?

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • HTT-Thalan
  • Registratie: Juni 2004
  • Laatst online: 21:15

HTT-Thalan

technically, I'm not pedantic.

Topicstarter
Ik ben bezig een nieuwe NAS server te bouwen en als onderdeel daarvan wil ik BTRFS gaan gebruiken. Helaas krijg ik het onder Debian (mijn voorkeurs-OS) nog niet goed voor elkaar zonder de LVM te gebruiken (en GRUB kan volgens mij ook niet zomaar naar BTRFS booten) dus ik heb een test-vm gebouwd met Ubuntu 11.10 erin, om wat dingen uit te proberen.

De VM bevat 4x8gb disken, de eerste (sda) heeft een standaard Ubuntu (Ext2/boot - Ext4/root - swap) indeling. Vanuit Ubuntu heb ik vanaf de command line via mkfs.btrfs een Raid 1 disk aangemaakt, bestaande uit 2 van die virtuele 8gb disks: sdb en sdc. Je krijgt dan vanwege een nog aanwezige bug wel 2 btrfs disken die je apart kunt mounten, maar als je /dev/sdb gewoon mount naar in mijn geval /mnt/btrfs1 dan krijg je netjes een 8gb grote map waar je bestanden in kunt schrijven. So far, so good dus.


Nu heb ik in de NAS die ik ga bouwen sowieso de beschikking over een 500gb en een 320gb SATA disk. Ik hoop er eind van deze week nog 2 grofweg identieke (in ieder geval merk + grootte) 320gb SATA schijven bij te hebben.

Mijn voorlopige plan is dus om de 500gb schijf als OS schijf te gebruiken via een normale 'tried and true' ext4 partitie als root, zodat ik vanaf daar met de 3 extra disken kan experimenteren. Ik wil graag een BTRFS span over 3 disken (alleen ondersteunt het op dit moment helaas alleen nog maar Raid 1, 0 en 10) met als eisen dat ik

- een schijf mag verliezen (fysiek wegvallen dus)
- bij stroomuitval geen corrupte on-disk data heb (dat ik de inhoud van de cache dan kwijtraak is van secundair belang)
- snapshots kan gaan gebruiken

De data in kwestie zal divers zijn, maar wel plat: video's, foto's, documenten, iso's, etc. Er word niet actief naar gekoppeld behalve via Samba om de data te lezen of dumpen bij wijze van backup vanaf mijn windows clients.


Uiteindelijk zal de data periodiek vanaf deze server naar een secundaire locatie (usb schijf, dvd) worden weggeschreven als permanente backup, maar just-in-case (het is en blijft een thuissituatie met een niet-redundant uitgevoerde server) wil ik weten of ik de data die in die BTRFS setup aanwezig is, kan uitlezen vanaf een andere machine. Dat wil zeggen: als de server fysiek niet meer kan booten (omdat bv het moederbord is overleden) wil ik de schijven die het BTRFS bestandssysteem bevatten in een nieuwe/andere server kunnen steken en uitlezen.

Als je dit met hardware raid had willen doen, moet je identieke raid controllers hebben, firmware versies, etc etc. Software raid is een stuk makkelijker mee te nemen, maar dit is volgens mij niet hetzelfde, in feite is BTRFS een filesysteem met een eigen ingebouwde software raid die niet op de traditionele manier via het OS word aangestuurd.

Iemand die ik gesproken heb die ZFS in productie heeft draaien, wist mij te vertellen dat hij sowieso de ZFS-config in een XML document heeft staan (buiten het ZFS systeem) en dat hij die sowieso nodig zou hebben om zijn ZFS diskpool op een fysiek andere machine over te nemen, maar hij kent BTRFS niet en weet niet of het daar ook zo is. De besturingssystemen die ik gebruik (voornamelijk Debian of -afgeleiden) hebben allemaal BTRFS-support in de kernel ingebouwd.

Zijn er mensen die hier ervaring mee hebben, die hier op kunnen aanvullen/verbeteren?

Acties:
  • 0 Henk 'm!

  • Tp21
  • Registratie: December 2003
  • Laatst online: 28-08 15:22
Ik kan je aanraden op dit moment geen BTRFS te gebruiken voor data die je niet wilt verliezen. Als je toch btrfs wilt gebruiken is het ten sterkste aan te raden de nieuwste kernel te gebruiken (3.3 of 3.4). Tevens is het heel sterk aan te raden dan ook goede backups te maken.

snapshots kan je ook doen met lvm, je zou dan md raid kunnen gebruiken voor je raid-1 opstelling. Dit is ook wat ik zelf gebruik (met ext4 boven op lvm dan weer).

[ Voor 23% gewijzigd door Tp21 op 23-03-2012 13:36 ]


Acties:
  • 0 Henk 'm!

  • HTT-Thalan
  • Registratie: Juni 2004
  • Laatst online: 21:15

HTT-Thalan

technically, I'm not pedantic.

Topicstarter
Jammer dat ik na wat spelen in een VM ook tot die conclusie lijk te komen. Ik kopieer wat files, probeer het FS uit te breiden met een derde disk, etc, maar het wil niet echt lekker lopen...

Acties:
  • 0 Henk 'm!

  • army
  • Registratie: April 2009
  • Laatst online: 22-01-2023

army

The root of a lot of evil

Helaas (gelukkig eigenlijk) zijn LVM snapshots niet hetzelfde als BtrFS snapshots. En BtrFS support tegenwoordig zowel read-only snapshots, maar Ubuntu heeft hier niet de tools voor. Debian Wheezy wel btw. Read-write snapshots zijn eigenlijk te vergelijken met ZFS clones en kosten dus ook redelijk wat om te verwijderen. Beseft dit ook als je dingen verwijdert bij BtrFS, de interne job om de data daadwerkelijk te unlinken loopt op de achtergrond en volgt hiermee eigenlijk het breathing gedrag wat bij ZFS te zien is.

Van BtrFS booten kan per GRUB 1.99 en zit helaas pas in Debian Wheezy, maar hierbij kan je dus wel van verschillende subvolumes booten wat system upgrades en rollbacks mogelijk maakt. Veel installers ondersteunen dit nog niet. Je BtrFS moet je dus nu nog vooraf voorbereiden en het default volume wijzigen van volid 0 veranderen naar je subvolume voor root filesysteem.

Over disken verhuizen. BtrFS werkt gewoon met disk-id's zoals oa Linux MD, Linux LVM, Veritas VxVM, ZFS, Sun Volume Manager. Je reboot als je nieuwe disken aankoppeld en dan wordt er automatisch een scan gedaan naar BtrFS of je doet een `sudo btrfsctl -a` (nog geen vergelijkbare optie in btrfs).

Voor productieomgeving. Ja, alleen RAID 0 / 1 / 1 + 0 wordt ondersteund en of dat echt een probleem is blijft de vraagt. Wat je wel moet inplannen is een regelmatige scrub actie om alles op disk te controleren en hier is waar BtrFS en ZFS zich onderscheiden van andere oplossingen. Het pro-actief controleren van data die op disk staat begint steeds belangrijker te worden. Wat ook belangrijk is om alleen nog systemen te gebruiken met ECC geheugen zodat je zeker weet dat alles goed op disk komt.

De mooiste test om te doen is om bij een disk van een BtrFS volume in RAID 1 op willekeurige plekken de data op disk met dd te overschrijven. Hierna een leesactie doen of een scrub draaien geeft de kracht van oa BtrFS en ZFS weer. Iets wat bij MD+LVM+EXT3/4 bijvoorbeeld niet mogelijk is.

Of het echt productie ready? Sinds kernel 3.2 is dat een ja qua code. Het probleem zit hem in de integratie in je distributie en hier zie je eigenlijk dezelfde issues die Sun had met ZFS in Solaris en waarom Solaris 11 mandatory op ZFS wordt geïnstalleerd. Ook lopen veel distributies met de userland tools nog veel te ver achter om het serieus te gebruiken.

"I don't have hard drives. I just keep 30 chinese teenagers in my basement and force them to memorize numbers." — ikkenai


Acties:
  • 0 Henk 'm!

  • HTT-Thalan
  • Registratie: Juni 2004
  • Laatst online: 21:15

HTT-Thalan

technically, I'm not pedantic.

Topicstarter
Echt jammer, want het is zo'n geweldig systeem! Ik verkoop ZFS zakelijk in de vorm van Nexenta en had het heel gaaf gevonden zoiets thuis ook te draaien.

Voorlopig maar een software Raid 1 dan. Ik heb een 2e 500gb schijf gevonden op zolder, dat word dus 320gb primair en 2x500gb secundair in Raid 1 via een Debian CLI servertje.