Whitepaper om RAID – en innføring

Til dagen ser vi mange unge håpefulle forveksle sentrale nøkkelbegrep og teknologier som skytjenester og Backup. Dette er din introduksjon til RAID.

Misforstå oss rett, RAID er en viktig bit i puslespillet knyttet til datasikkerhet, men å sette likhetstegn mellom RAID og backup vil i beste fall kun være en begrepsforvirring. Først, la oss fastsette fem bekrepsforklaringer og forkortelser:

  1. RAID – Redundant array of independent (Tidligere “inexpensive”) disks
  2. SLED – Single large expensive disk
  3. JBOD – Just a bunch of disks
  4. Redundans: duplikat av komponenter og funksjoner for mer pålitelig system
  5. Matrise: Objekter satt sammen systematisk i rekker og kolonner

Så om det ikke er backup, hva er da egentlig RAID?

Historien bak

Tilbake på 1970 tallet og utover 1980 tallet var det stor fremgang i utvikling av CPU og minne, noe forbrukere og systembyggere kunne juble for. Men CPU ytelse alene gjør ikke systemet optimalisert. En CPU instruksjon krever en viss mengde lagring i minnet. Så skal alt arbeidet lagres en plass og her kommer harddisken inn. Før RAID eksisterte måtte systembyggere benytte seg av store dyre disker, kalt SLED – Single Large expensive disk. Det var også mulighet for JBOD – just a bunch of disks, men disse diskene kunne ikke samarbeide seg imellom og det var ingen toleranse for diskfeil. Røk disken, ja så mistet du alt som manglet i backup. Ja, du hadde vel backup?

Produsentene av SLED hadde flere utfordringer. Når operativsystemet ber harddisken sende data må harddisken lete opp data og sende det til CPU via minnet. Hvis operativsystemet ber om mange små filer vil det bli mye leting på harddisken. En stor fil går kjapt men mange små filer tar lang tid. Dette heter random access og er en flaskehals på harddisker. Den faktiske søketiden på en stor disk hadde bare 7% forbedring per år der minne og CPU hadde 40% økning per år. Systembyggere satset på minne eller SSD disker til mellomlagring for å hjelpe med I/O trafikk, men spørsmålet var om dette kunne holde følge med den ville utviklingen? Ikke bare skulle SLED produsenter følge med utviklingen av CPU ytelse og minne, men også tenke sikkerhet. Med tanke på en dyr, stor, treg disk med null toleranse for disk havari og mye arbeid med backup og komplisert konfigurasjon, fristet det for systembyggere å se etter alternativer.

Da dukket det opp en gjeng med akademikere, David A Patterson, Garth Gibson og Randy H Katz fra Universitetet i California, som fant ut at det var billigere, raskere og tryggere å sette sammen flere billige disker i en redundant matrise som på engelsk heter RAID – Redundant array of independent (Tidligere “inexpensive”) disks. De hentet fram data og sammenlignet i en tabell.

Karakter
IBM 3380
Fujitsu M2361A
Conners CP3100
Disk diameter i tommer
14
10
3,5
Formatert datakapasitet (MB)
7500
600
100
Pris pr MB
$18-$10
$20-$17
$10-$17
Strøm (W)
6600
640
10

Tabell: Utdrag fra tabell 2 i A Case for Redundant Arrays of Inexpensive Disks (RAID).

En SLED var på 14 tommer, 7500 MB diskplass, samme størrelse som en bærbar Pc, hadde egen strømforsyning og drog hele 6600 watt. En billig disk ment for forbrukere hadde tilnærmet lik ytelse i random access som en SLED, kostet mye mindre og trengte bare 10w per disk. Du kunne sette sammen 660 disker for å oppnå samme strømforbruk, få 66 000 MB diskplass og likevel få billigere MB per $. Akademikerne mente at krymping av disker ville være en suksess på samme måte som krymping av CPU er en suksess.

Valget lander på fire SAS-disker på 10K RPM og 1TB diskstørrelse fordi Raid 6 krever minimum fire disker. SAS har høy driftssikkerhet og bra ytelse til veldig god pris. SSD er et alternativ når SAS ikke er godt nok.

raid_computer_server

Forskjellige RAID-nivåer

Akademikerne foreslo fem forskjellige typer matriser kalt Raid nivå 1, 2, 3, 4, 5. I nyere tid er Raid 0, 1, 10, 5 og 6 det mest kjente. Raid 0 er kjent som stripet raid der to disker er satt sammen til å samarbeide som én disk. Dette er egentlig ikke et raid fordi det er ingen pålitelighet her. Raid 1 er to speilede disker. De har samme innholdet og det gjør ingenting at den ene disken dør fordi den andre disken har samme innholdet. Raid 10 er to Raid 1 som er stripet. Det betyr at en disk i hvert raid 1 kan dø uten at systemet går ned. Dette er et nøstet raid som gir mye ytelse og sikkerhet. Raid 5 er bra hvis du trenger kjapp lesehastighet og Raid 6 for de som ønsker ekstra sikkerhet over Raid 5.

Diagrammer er laget med informasjon fra Wikipedia. Klikk på illustrasjonene for større versjon.

Nivå
Beskrivelse
Min. disker
Illustrasjon
Toleranse
RAID 0
Ingen redundans, ingen speiling eller paritet. Meget god ytelse, veldig usikkert. Egentlig ikke raid.
2
raid-0
0
RAID 1
Speilede disker, ingen paritet, god leseytelse, veldig sikkert.
2
raid-1
1
RAID 5
Paritet distribuert over alle disker, god leseytelse, bedre plassutnyttelse enn RAID 1
3
raid-5
1
RAID 6
Dobbel paritet distribuert over alle disker, god leseytelse, større toleranse enn RAID 5
4
raid-6
2
RAID 10
RAID 1 stripes utover flere grupper. Krever to disker som samarbeider. En disk pr gruppe kan ryke. Veldig sikkert med mange grupper. Svært god lese- og skriveytelse.
4
raid-10
RAID 0+1
Kan sette flere disker i hver gruppe. Gruppen er speilet videre. Hele gruppen må bygges opp på nytt om én disk ryker
4
RAID 50
raid-50
RAID 60
raid-60

Kost-/ nytteananalyse

Som så mange andre ting innen IT-bransjen, er en kost-/ nytteanalyse en sentral og ofte en avgjørende faktor for anskaffelse og til syvende og sist – hva som blir satt i produksjon.

Kostnader

Med nøye driftsplan for sjekk av harddisker i et Raid 6 er det lav sannsynlighet at du vil miste data, men det finnes likevel muligheter for datatap. En mulighet for å ødelegge et raid er å bytte feil disk. Hvis en disk dør mens en annen gjenopprettes vil raidet også gå ned. Det er stor belastning for disker å gjenopprette en raid-disk og det kan ta veldig lang tid å gjenopprette en treg 3TB SATA-disk, så risikoen er der. En annen mulighet er at raid-kontrolleren dør og identisk raidkontroller ikke kan skaffes. Software-raid har risiko for korrupsjon i oppsettet der all data går tapt.

Etter å ha gått gjennom fordeler og ulemper har vi pekepinner for å sette opp et bra raid. Det finnes mange bra ulike raid, alt etter ditt bruk. I et eksempel skal vi lage et raid med høy toleranse og bra ytelse. Eksempelet er beregnet til en database eller et nettsted.

Begynn alltid å planlegge hvilken type raid du skal ha. Skal du ha høyeste sikkerhet må du velge Raid 6 fordi det tåler to døde disker samtidig. Raid 6 har også veldig god skriveytelse med god kontroller. I dette scenarioet fokuseres det på høy sikkerhet med bra ytelse og derfor lander valget på Raid 6.

Raidet drives av en kontroller og her må du tenke på hvilken tjeneste som skal kjøres på serveren. Er det krav til høy oppetid? Skal raidet levere høy ytelse? Er det store datamengder? Mye random access som krever mellomlagring? Hvis svaret er ja på alle sammen, må du skaffe deg en skikkelig raid-kontroller som kan gjøre en god jobb. Hvis det viser seg i ettertid at raidet har lavere ytelse enn forventet, kan det hende at hele jobben må gjøres på nytt fordi du kan ikke flytte et raid mellom ulike raid kontrollere. Krav til raid-kontroller blir da støtte for SAS, SSD, Flash cache og Raid 6. Husk å sjekke tilkoplingene til raid-kortet da dette varierer.

Diskene bør være helt like i type, størrelse og hastighet. Det er fordi den dårligste disken vil begrense alle de andre diskene. Dersom en disk har 10k RPM og 72Gb lagring må alle andre disker kjøre samme hastighet og kapasitet. Den ekstra kapasiteten til de andre diskene går til spille.

raid_computer_recovery

Hvilket RAID-nivå anbefales?

I nyere tidsalder har vi for vane å kunne velge blant RAID 0, 1, 5 og 6. Det er likevel verd å nevne at nøstede RAID-sett som 10, 01, 50 og 60 også har sine fordeler, men la oss fokusere på de mest konvensjonelle.

RAID 0

Denne løsningen vil for mange kunne være svært attraktiv under en kostnadsanalyse, hvor den samlede lagringskapasiteten i settet er hva du som bruker får disponibelt. Dataene lagres stripet over de forskjellige diskene i settet og gir en bedre ytelse når det gjelder I/O mot disk. Ulempen derimot er at dersom en harddisk blir defekt, tapes alt. Altså det er ingen sikring i et RAID 0 og det anbefales sjeldent. Når det anbefales er dette mot en dynamisk lagringsenhet som ikke skal brukes for permanent lagring eller av data som likevel kan tapes.

RAID 1

Hvor RAID 0 gir ingen sikkerhet, gir RAID 1 en stor reduksjon i kostnadseffektivitet hvor kun halvparten av anskaffet lagringskapasitet kan anvendes. Fordelene er derimot at en disk som er speilet kan miste den speilede disken uten at det oppstår tap av data. Et RAID 1 sett vil tradisjonelt sett også gi en bedre leseytelse mot lagringsenheten ettersom det er to lagringsenheter som leverer den samme dataen, ikke en egen individuell som kun finnes på denne ene disken.

RAID 5

Fordelene med å gå for RAID 5 flere, en er distribuering av pariteter, noe som sikrer tap av data på en disk uavhengig hvilken, samtidig som den vil bidra til økt ytelse mot RAID settet. Den mest åpenbare fordelen er at det vil gi en bedre plassutnyttelse enn RAID 1, men til gjengjeld vil kreve minst tre disker for å fungere

RAID 6

Som ved RAID 5 vil RAID 6 gi en distribuering av pariteter, men her er det to pariteter som lagres distribuert over alle diskene. Fordelene med RAID 6 er at to uavhengige disker kan bli ødelagt uten at du opplever tap av data. Nå vil mange spørre seg: Hvorfor RAID 6? Et godt svar på dette er i store lagringssett hvor det gjerne er 8 eller muligens 12 harddisker som arbeider i et RAID sett og en disk melder om feil og skal byttes. Dersom tekniker da drar ut feil disk opplever settet dette som nok et tap, og du er oppe i to tapte disker. Dette er noe som tolereres i RAID 6, men ikke i RAID 5.

Trenger du backup når du har RAID?

Som ingressen allerede tar for seg; RAID er – i beste fall – kun en fysisk sikring mot maskinvarefeil hvor en eller flere harddisker kan feile i et sett. RAID gir ingen garanti eller sikkerhet dersom du personlig, eller organisasjonen opplever tap av data som følge av virusangrep, kryptolocker eller en vimsete bruker som sletter data med en feiltagelse. RAID gir heller ingen måte å kunne forhindre irreversible handlinger i manipulasjon av data, altså dersom det gjøres endringer i et dokument eller i en database og hvor det må gjøres en gjenoppretting.

For å svare på vårt eget spørsmål, trenger du backup når du har RAID? Så definitivt!

Kommentarer