Fórum Root.cz
Hlavní témata => Software => Téma založeno: Jakub Váňa 10. 05. 2011, 11:42:08
-
Zdravim a přeji pěkný den,
řešim tu teď otázku nasazení ext4 v jednom 32bit storage zařízení a narážim na nepříjemnost. Potřeboval bych na něm spouštět fsck a to obecně na oddíly opravdu velké. Problém je,že fsck.ext(3,4) mají paměťové nároky dle mých měření zhruba 100kB na 1GB, tj cca 3GB na 30TB, což je maximum, co se mi vejde do adresového prostoru.
To je trošku problém (pominu-li, že 90% z toho bude ve swapu). Nevíte někdo, jakým způsobem se dají tyto paměťové nároky utility fsck snížit. Nemáte někdo nějaký tip.
Děkuju,
Jakub
-
Možná by vás to mělo trknout a přivést k zamyšlení, zda je tento vysněný koncept ten správný. Na 30TB úložiště a 32b (3GB RAM), dost dobře nejde dohromady.
Na fsck jste narazil sám (u XFS by vám to neprošlo, i když tam by především neprošel ten 32b OS), ext4 také potřebuje paměť pro buffery (inode, metadata) a ty se obejít nedají a v neposlední řadě by se tomu fileserveru pro běžný provoz hodilo i pěkných pár giga cache.
-
Jo, jo, máte určitě do velké míry pravdu, ale ten koncept jsem si nevysnil já :D 64bit by bylo pro tyto účely asi hezkých, ale zatím to nevypadá průchodně.
S velikostí vyrovnávacích pamětí různých typů to nebude takový problém, protože se jedná o zařízení pro záznam stramů, takže v bufferech stejně nic moc dlouho nezůstane.
Zní to sice vtipně, ale to nejužší místo celého systému je opravdu fsck v kombinaci s 32bity :D
-
Snad bych ještě dodal, že ten koncept byl v době, kdy vzniknul ok, ale brzo by moh začít narážet na nové skutečnosti a je třeba vymyslet, jak ho přiohnout.
To výše prosím tedy nechápejte tak, že bych chtěl na někoho házet špatné světlo - prostě byla jiná doba.
-
nebylo by pruchozi rozdelit na mensi oddily a vytvorit samostatne filesystemy?
-
Děkuji za reakci, ano, je to zvažované řešení s několika dalšími výhodami. Tou podstatnou nevýhodou je ale, že by to nebylo abstraktní pro aplikace a ty by se kvůli tomu museli upravovat. Kromě jiného by museli řešit výběr partitiony, což by nemuselo být snadné ... (třetí variantou je dokonce napsat modul do kernelu, který by vytvářel jakýsi abstraktní FS nad větším množstvím skutečných, to je ale velmi čerstvá myšlenka :D)
Podařilo se mi položit googlu dotaz trochu lépe, než v těch několika předchozích pokusech, takže jsem našel tohle:
http://www.linux-archive.org/ext3-users/103464-2gb-memory-limit-running-fsck-6tb-device.html
Zatím mi to nefunguje, ale snad to už nějak přiohnu ...
-
mozna neco oskliveho nad aufs :b
-
Děkuju za tip.
-
Pokud to vzniklo před lety a vytrvale se trvá na 32 bitech, tak co tam kurňa dělá ten ext4? Dej tam etx2 jako tam byl v době vzniku.
-
Neříkej, že ta aplikace nemá více adresářů? Udělej víc FS a jeden master FS, ve kterym dáš symlinky na jednotlivý filesystémy tak, abys rozdistribuoval zátěž. Výhoda bude, že budeš moci rozdělit i disky mezi víc raid polí atd...
no a nebo ten aufs, tam bych se ale trochu bál, že když se něco pokazí, tak se to pokazí pořádně...
-
Krome pametovych naroku je potreba pocitat s tim, ze fsck nad 32T muze bezet cele dny.
-
Pindal: ext2 umí max 16T (4KB stránková platforma)
Logik: ta aplikace, tak jak teď je nedokáže počítat s tim, že storage neni souvislý. V nějakých adresářích to je, ale dopředu nedokážu říct, v jakých a kolik dat budou obsahovat.
To aufs se mi začíná líbit čim dál víc jako řešení, minimálně o tom něco pořádně zjistim a vyzkoušim ho.
Dan Ohnesorg: jo, to už bude problém toho, kdo tam dá tak velký disky ... s tim já nic neudělám.