Portál AbcLinuxu, 7. května 2025 20:58
Lze použít disková zařízení různých velikostí, což je další posun oproti systémům raid.
Vzhledem k tomu, že to stejně už z principu nemůže fungovat, v tom žádnou výhodu nevidím. Např. u RAID 1 buď kus nebude mirrorovaný nebo to bude "fungovat" přesně stejně jako u normálního RAID 1, tj. z větších zařízení se použije jen část.
Obecně považuji snahu reimplementovat RAID (a další funkce) na úrovni filesystému za velmi nešťastnou, raději mám řešení na úrovni blokového zařízení, které je univerzální a neomezuje mne na jediný filesystém.
Obecně považuji snahu reimplementovat RAID (a další funkce) na úrovni filesystému za velmi nešťastnou, raději mám řešení na úrovni blokového zařízení, které je univerzální a neomezuje mne na jediný filesystém.
Implementace raid ve FS má své výhody. Například při výměně diskového zařízení není třeba kopírovat všechny bloky, ale jen ty skutečně zabrané. Což je mnohem rychlejší. Tuhle informaci raid na samostatné vrstvě nemá. Dále je možné kdykoliv odebrat jakékoliv zařízení. To už souvisí s tvou první poznámkou:
Vzhledem k tomu, že to stejně už z principu nemůže fungovat, v tom žádnou výhodu nevidím. Např. u RAID 1 buď kus nebude mirrorovaný nebo to bude "fungovat" přesně stejně jako u normálního RAID 1, tj. z větších zařízení se použije jen část.
Toto by platilo u dvou disků. Když tam ale budeš mít mnoho diskových zařízení, tak se FS zkrátka postará o uložení zrcadlených bloků na dvě různá zařízení, nikoliv na dvě konkrétní (předem dané). Tedy ani rozdílná velikost příliš nevadí.
Například při výměně diskového zařízení není třeba kopírovat všechny bloky, ale jen ty skutečně zabrané. Tuhle informaci raid na samostatné vrstvě nemá.Zatím. Pro softwarový RAID v Linuxu je to v plánu.
Nie je mi celkom jasné, prečo sa na tento účel nezačal používať TRIM, ktorý sa aj tak musel implementovať kvôli SSD diskom.Obecně považuji snahu reimplementovat RAID (a další funkce) na úrovni filesystému za velmi nešťastnou, raději mám řešení na úrovni blokového zařízení, které je univerzální a neomezuje mne na jediný filesystém.Implementace raid ve FS má své výhody. Například při výměně diskového zařízení není třeba kopírovat všechny bloky, ale jen ty skutečně zabrané. Což je mnohem rychlejší. Tuhle informaci raid na samostatné vrstvě nemá. Dále je možné kdykoliv odebrat jakékoliv zařízení. To už souvisí s tvou první poznámkou:
LVM/RAID neví, které bloky jsou obsazené, takže některé operace jsou velmi neefektivníTo je ale přece záležitost současné implementace, nikoli principu. Většina souborových systémů používá nějaké bloky, takže tahle vrstva se dá do LVM/RAID implementace přesunout a mohou ji využívat všechny souborové systémy.
Jenže prakticky je to na používání horšíLíbí se mi, kolik lidí si vybere jedno jediné kritérium a use case, a na základě toho tvrdí, že je něco obecně (prakticky) lepší nebo horší.
Náhrada vadného diskuKdyž to tak čtu, zajímalo by mě - jak to dopadne při startu? Ve fstab běžně volba "degraded" nebývá, co když umře jeden ze systémových disků? Pokud by v takovém případě byla nutná asistence na místě, viděl bych to jako problém...
Tato operace se opět a zde poněkud překvapivě vykonává nad připojeným systémem souborů. Někdy může být nutné připojit souborový systém v degradovaném režimu, pomocí volby „degraded“:
btrfs device scan
, takže je nutné uvést seznam zařízení v fstab. Druhým zjištěním bylo, že pokud je explicitně uveden seznam zařízení v fstab, disk se v degradovaném režimu nepřipojí s hláškou, že takové zařízení neexistuje. Nakonec jsem z fstab seznam zařízení vyhodil a před spuštěním initu zkusil ručně spustit btrfs device scan
; v takovém případě se souborový systém bez protestů připojil.
Čili pokud na btrfs v RAIDu závisí start systému, je podle všeho nutné mít do initrd doplněné scanování btrfs...
Inak na btrfs mi vadi jedna vec - je strasne pomaly s postgresql.
Doplnil bych ještě v jaké verzi Btrfs a Postgresu. Na Debianu (2.6.32 a PostgreSQL 8.4) je to brutálně pomalé, ale v benchmarku (počínaje tímto článkem) od Tomáše Vondry (2.6.39-gentoo-r3 a PostgreSQL 9.0.4) už to bylo "normálně" rychlé.
Nejdříve musí být prohlášen za stabilní potom bude následovat několik let testování a až potom půjde do enterprise dister.
Taky jsem si to myslel. Ale vypadá to že ne.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.