Raid5 met dynamische grootte: wel of geen LVM?

Pagina: 1
Acties:

  • mithras
  • Registratie: Maart 2003
  • Niet online
Ik wil binnenkort eens een server gaan inrichten. Voornamelijk file/ftp server, maar het zal ook een apache testbak worden en dan op gegeven moment nog wat interfaces komen om te downloaden (usenet / bittorrent). Het belangrijkste is de data die erop gaat staan: ik wil een kleine harde schijf hebben voor het OS, en daarnaast een RAID5 draaien voor de data.

Op dit moment heb ik één 300GB Seagate. Ik wil deze uiteindelijk ook gaan gebruiken in de raid, maar aangezien nu alle data daar opstaat gaat dat bij de installatie nog niet lukken. Nu wil ik een ding bereiken, namelijk dat als de array vol zit, ik een nieuwe (zelfde type) schijf koop, deze bijprik en op die manier de array vergroten. Ik heb namelijk geen geld om in een keer een grote investering te doen en ik weet nog niet hoeveel ruimte ik in gebruik zal nemen.

Nu het punt: is het handig (of gewoon verstandig) om dit met een lvm oplossing te doen, zodat de kernel niet de fysieke hdd ziet, maar alleen de lvm indeling? Ik weet niet of ik met alleen een raid5 oplossing er later hdd kan bijprikken en de array zo laten vergroten. Hier staat wel iets over 'Growing a raid5 array', dus in principe zou het moeten lukken om ext3 / reiserFS / XFS te laten groeien?
offtopic:
Ik moet ook nog kijken naar filesystem. Neig naar ext3 omdat het makkelijk is en ik het ken. Meeste data is muziek (iig >3MB bestanden), dus afaik is reiser dan niet handig. Maar dat is iets wat later beslist kan worden.


Dan de volgende vraag: ik wil bij het begin zo min mogelijk hdd's aanschaffen. Ik zet het ding in elkaar, installeer het, pomp de data van de 300GB naar de array over en prik de single 300GB bij de array om hem te vergroten. Kan ik dan in het begin af met 2 hdd om een raid5 te vormen?
Volgens wikipedia:
A RAID 5 two disk set is possible, but many implementations do not allow for this. In some implementations a degraded disk set can be made (3 disk set of which 2 are online).
Het kan dus wel, maar wat kan ik dan vervolgens niet gebruiken? Ik koop liever in het begin zo min mogelijk schijven :)

Of zeggen jullie dat ik gewoon voor een andere oplossing moet gaan? Ik wil graag raid draaien voor de continuïteit en de hogere zekerheid (ik weet het: het is geen backup, maar wel extra veilig). Graag jullie mening over lvm ja of nee en hoe ik de raid voor elkaar moet krijgen :)

Verwijderd

volgensmij maakt het niets uit en kun je zelfs LVM op Raid5 bouwen.

je begint dus met 3 schijfen, zet zet in Raid5 en plaats daar je LVM op. later koop je dan weer 3 schijfen erbij en maakt daar ook een Raid5 van. je hebt nu dus 2 Raid5 sets. vervolgens voeg je die 2e Raid5 set toe aan je LVM en je hebt een LVM over 2 Raid5 sets.

theoretisch kun je Raid5 over 2 schijf draaien daar Raid5 de parity verdeelt over 3 of meer schijfen. de 3e missende schijf bevat dus of een parity of een stripe. als de parity mist, staan de stipe's op schijf 1 en 2. als de stripe mist, staat de parity op schijf 1 of 2. zodoende kun je dus uitrekenen welke informatie er op schijf 3, welke dus mist, moet staan.

echter ondermijn je nu natuurlijk het hele systeem van redundency omdat in Raid5 maximaal 1 schijf mag missen. als je dus Raid5 met 2 schijfen maakt mis je all 1 schijf. als er dus nog 1 kapot gaat ben je alles kwijt. deze Raid5 opstelling is dan ook meer vergelijkbaar met Raid0 en dus niet veilig.

  • mithras
  • Registratie: Maart 2003
  • Niet online
Nee, het gaat om het volgende:
[list=1]• Installeren met 2 schijven
• Data overzetten (kans is erg klein dat nu al een schijf kapot gaat)
• 3e schijf erbij zetten (array laten groeien)
• Werken met een fileserver van 3 schijven
• Is alles vol? Ik koop één extra schijf en prik die erbij
• Array is nu ter grootte van 4 schijvenDus niet extenden met elke keer 3 schijven, en ook is er maar een korte periode (een paar dagen, kan ik een paar uur: om de data over te zetten) waarin de array uit 2 schijven bestaat :)

Verwijderd

Raid5 vereist 3 schijfen om stabiel te zijn. het kan met 2 schijfen omdat je de 3e kunt berekennen uit de andere 2.

LVM is eigenlijk niet meer dan het samenvoegen van meerdere schijfen en ze als 1 aan het syteem aanbieden. of dat dat Raid of gewone schijfen zijn maakt niet uit. software Raid kan volgensmij zelfs.

als je met 2 schijfen begint en er dan een 3e erbij zet, groei je de Raid array niet, je herstelt hem. de 3e schijf was zegmaar stuk en die heb je door het plaatsen van de 3e schijf vervangen. het kan zijn dat veel Raid5 implementaties daarom weigeren te beginnen met 2 schijfen.

een Raid5 van 3 schijfen laten groeien naar 4 schijfen hang heel erg af van je controller daar dit eigenlijk geen onderdeel is van de Raid specs. wat je eigenlijk doet is een Raid5 ontmantelen en dan over 4 schijven weer opnieuw opbouwen. je moet dan kijken naar 'raid expansion' of dergelijke.

zonder meer te weten over welke controller en/of software die je gebruikt kan ik niet zeggen of het op deze manier mogelijk is. Raid5 kun je alleen bouwen met minmaal 3 schijfen. ook als je 2 schijfen gebruikt heb je mogelijk een 3e schijf nodig om de array te creeeren. deze kun je daarna weglaten met de risico's zoals hierboven beschreven. je kunt dan net zogoed Raid0 gaan draaien.

  • CyBeR
  • Registratie: September 2001
  • Niet online

CyBeR

💩

LVM is hier bruikbaar voor, maar niet noodzakelijk. LVM is namelijk geen filesystem maar een manier om dynamisch block devices te maken alsof 't partities zijn. Daarin moet gewoon een filesystem staan. Met andere woorden voor deze specifieke toepassing heeft 't geen toegevoegde waarde.

Btw Docey, schijven is met een v.

All my posts are provided as-is. They come with NO WARRANTY at all.


  • mithras
  • Registratie: Maart 2003
  • Niet online
CyBeR schreef op donderdag 26 april 2007 @ 00:06:
LVM is hier bruikbaar voor, maar niet noodzakelijk. LVM is namelijk geen filesystem maar een manier om dynamisch block devices te maken alsof 't partities zijn. Daarin moet gewoon een filesystem staan. Met andere woorden voor deze specifieke toepassing heeft 't geen toegevoegde waarde.
Dat weet ik, maar ik dacht dat het dmv lvm makkelijker is om schijven te wisselen en aan te koppelen, omdat je dan een tussenlaag hebt tussen hdd en filesystem.

Ik veronderstelde het om nodig te hebben voor mijn idee: met twee schijven beginnen, en (min of meer) onbeperkt met een willekeurig aantal schijven kunnen uitbreiden. En dat alles in raid5 :)
offtopic:
Dat is wel heel veel korter dan dat blaatverhaal in de TS zeg :p

  • CyBeR
  • Registratie: September 2001
  • Niet online

CyBeR

💩

Niet echt: je moet nog steeds je RAID uit kunnen breiden als je op die manier te werk gaat, en daar kan LVM je niet mee helpen. LVM is in dat opzicht meer bedoeld om meerdere arrays te combineren. Dus dat je nu een RAID array hebt (1 of 5 meestal), en dan later de volume group uitbreidt met nog een dergelijke (of andere, dat maakt neit echt uit) array.

All my posts are provided as-is. They come with NO WARRANTY at all.


  • mithras
  • Registratie: Maart 2003
  • Niet online
Dus dan is het alleen maar simpel: koop in het begin 3 schijven, maak een raid5 array en formatteren die hap. Data overpompen en 4e schijf erbij zetten. Als het vol zit, kan ik er gewoon een schijf bijkopen en die erbij prikken.

De array wordt dan gereshaped en ik kan door met een groter volume. Als dat de insteek is, dan weet ik genoeg :)

Verwijderd

bijna goed, LVM kun je gebruiken om meerdere Raid array's als een grote schijf aan het systeem aan te bieden waardan de partities en filesystems op kunnen worden gemaakt.

je hebt bijvoorbeeld 3 schijven van 320GB in je Raid5 array. deze worden door het systeem gezien als 1 enkele 640GB schijf. deze 640GB schijf maak je dan onderdeel van je LVM die dan dus ook 640GB wordt. op deze 640GB LVM schijf maak je dan weer je partities.

vervolgens kun je bijvoorbeeld nog eens 3 schijven erbij kopen van 500GB en een 2e Raid5 array van 1TB. vervolgens kun je die 1TB schijf toevoegen aan je LVM en tada: je LVM is 1,64TB. vervolgens kun je dan je partities oprekken om hiervan gebruik te maken.

of je voegt een enkele 320GB schijf toe. vervolgens geef je je controller de opdracht op je huidige Raid5 uit te bereiden over de nu 4 320GB schijven. hierdoor verandert je 640GB Raid5 array in een 960GB schijf. vervolgens zul je waarschijnlijk deze opnieuw moeten toevoegen aan je LVM daar deze de schijf niet meer herkent. en dan is je LVM ineens 960GB. klaar om je partities op te rekken die er met een beetje goed geluk nog keurig opstaan.

in beide scenario's kun je LVM gebruiken. zelf ben ik niet zo'n fan van Raid Expansion daar ik dit vaak genoeg heb zien fout gaan. maak altijd een backup van je data voordat je je Raid laat groeien.

zelf zou ik voor het eerste scenario gaan en gewoon meerdere Raid5 array's maken van 3 schijven elk. dit is vaak makkelijker te beheeren en daarbij is LVM een zegen. gewoon wat langer doorsparen dus.

conclusie zou dan eigenlijk zijn dat wel of geen LVM gebruiken erg afhangt van hoe goed en op welke manier je Raid5 controller over raid expansion beschikt. de duurdere controllers zoals de LSI, Areca of 3Ware welke allen Hardware based zijn kun je LVM perfect gebruiken i.c.m Raid Expansion.

de wat goedkopere merken zoals Highpoint of de nvraid welke deels host-based zijn zou ik liever niet i.c.m LVM en Raid expansion gebruiken. je kunt dan beter de array gewoon opnieuw aanmaken en toevoegen aan je LVM. maar zoals gezegd is het niet LVM maar je controller de beslissende factor.
Pagina: 1