OCFS2

Z DCEwiki
Skočit na navigaci Skočit na vyhledávání

OCFS2 je plně POSIX kompatibilní souborový systém, který umožňuje přístup k jednomu disku z několika clusterových nodů současně. Řeší tedy věci spojené s tím, když se dva systémy snaží přistupovat k jednomu a témuž souboru současně, atp.

Je-li připojený, chová se stejně jako lokální systém. Přistupuje-li k editaci jednoho souboru více uživatelů současně, zapíše změny toho, kdo uloží soubor jako poslední.

Při mazání souborů je to podobné jako u hardlinků. Inode souboru se zruší teprve tehdy, až se uzavře poslední otevřený deskriptor tohoto souboru.

OCFS2 podporuje také žurnálování, tzn. že když umře některý z nodů (viz HA cluster), jsou zbylé nody schopny jeho obsah obnovit, takže metadata souborového systému zůstávají vždy konzistentní (neporušená). Podporuje žurnálování typu:

  • ordered - změny se zapisují tak jak se postupně řadí do fronty požadavků
  • writeback - změny se zapisují se zpožděním, což je výhodnější z hlediska rychlosti IO operací

OCFS2 je souborový systém, který není závislý na architektuře procesoru, takže lze cluster složit jak z 32-bitových, tak i 64-bitových nodů.

OCFS2 lze snadno a rychle nakonfigurovat. Podporuje kvóty, POSIXové ACL, "děravé" (sparse) soubory, rozšířené atributy aj.

Z hlediska použití jde o robustní a systémově nenáročný souborový systém, který lze používat i na nodech s menším množstvím paměti než 512MB.

Historie

Vývoj OCFS2 byl odstartován počátkem r. 2003, s tím že fa. ORACLE (která stojí za jeho vývojem) od samého počátku usilovala o jeho zařazení do hlavní vývojové větve linuxového jádra, protože v tu dobu neobsahovalo ovladač pro žádný clusterový souborový systém.

K začlenění došlo v lednu 2006 a první stable verze jádra (2.6.16), která podporovala OCFS2 byla uvolněna v březnu.

Vývoj OCFS2 probíhá přímo v hlavní linii linuxového jádra, ovšem pro enterprise verze komerčních linuxových distribucí bylo uvedeno postupně několik vydání, které implementovaly nové funkcionality.

Verze 1.4 (uvolněná v červnu 2008) přinesla oproti výchozí verzi 1.2 (z dubna 2006) podporu "děravých" souborů, unwritten extents, inline data a sdílenou zapisovatelnou mmap.

Verze 1.6 začlenila REFLINKy, indexaci adresářů, kontrolní součty pro metadata, rozšířené atributy, podporu pro kvóty, podporu POSIXových ACL a vyhrazenou alokaci.

Kód OCFS2, dostupný pod GPL licencí, je součástí linuxového jádra, takže veškeré novinky jsou ihned komukoli k dispozici. Podmínkou pro jejich využití je odpovídající sada nástrojů, v Debianu dostupná v rámci balíku ocfs2-tools