malinux

malinux' lillablogg

RAID på Linux - trinn 1 — Denne posten er skrevet av royk —

RAID - Redundant Array of Inexpensive (eller Independant) Disks er en måte å bruke mange disker av samme størrelse til å utnytte plass bedre og samtidig unngå datatap når en disk tryner. RAID finnes i mange varianter.Ordet Redundans brukes mye videre i artikkelen, og betyr overflod, med andre ord for mange enheter enn det som kreves. Har man redundans i et system, det være seg strømforsyninger eller harddisker, tåler man at en enhet tryner, mens resten av systemet går videre. De vanligste RAID-nivådene er 1, 5 og 6. Disse er godt beskrevet på wikipedia, men en oppsummering følger under.

RAID-0

Som tallet avslører, er ikke dette egentlig et RAID-nivå. Det handler om å lagre data over mange disker i "striper" på typisk 64kB til 1MB eller høyere per disk. Dette gjør at man får høy hastighet, men gjør også at hvis én enkelt disk tryner, så går hele RAIDet ned.

RAID-1

Speiling - data lagres parallelt på to disker slik at når man mister en disk virker ting som vanlig. Godt implementert RAID-1 gjør også at lesehastigheten økes, siden man leser fra forskjellige sted på begge diskene samtidig. Skrivehastigheten tilsvarer en enkelt disk.

RAID-1+0

Dette er en kombinasjon av speiling (RAID-1) og striping (RAID-0) og tar med seg det beste fra begge typer. Med RAID-1+0 (også kalt RAID10) får man veldig høy ytelse og god sikkerhet. Man mister her som i RAID-1 halvparten av plassen i redundans.

Paritet

Følgende RAID-systemer bruker paritet og ikke enkel speiling. Det medfører at du mister kapasiteten til én disk per paritetsnivå, men at du også kan miste én disk per paritetsnivå uten datatap.

RAID-4

Data lagres i "striper" på samme måte som med RAID-0, men i tillegg brukes enkel paritet på dedikert paritetsdisk. Ulempen med RAID-4 er at ved skriving, blir paritetsdisken hardt belastet og fører til at RAIDet yter dårlig.

RAID-5

Enkel paritet som i RAID-4, men her distribuert over alle disker i RAIDet. Ligger data på disk 1, 2 og 3, ligger paritet på disk 4. Denne roteres jevnlig slik at data ligger på alle disker, mens paritet alltid ligger på en annen disk enn dataene i samme stripe.

RAID-6

Data lagres i "striper" som i RAID-4 og -5, men her benyttes dobbel paritet (i to dimensjoner) noe som betyr at man mister kapasitet og ytelse tilsvarende to av diskene, men til gjengjeld tåler å miste to disker uten datatap.

Hvorfor RAID-6?

En kan spørre seg hvorfor man vil bruke RAID-6 - sjansen for å miste to disker på en gang, er liten, spesielt med mindre disksett. Det er imidlertid en ganske stor sjanse for at, i et RAID-5, en disk tryner og man gjennom gjenoppbygging av RAIDet finner dårlige sektorer på en annen, eventuelt at en sviktende disk tryner ved belastninga av gjenoppbygginga. Ved RAID-6 vil sjansen være vesentlig lavere for datatap.

Hva skal jeg velge?

Fagfolk krangler fremdeles om hva som er sikrest av RAID-nivåer. I RAID-5 kan du miste én disk, mens i RAID-6 kan du miste to vilkårlige disker, i RAID-1+0 kan du miste en disk på hver side av hvert speil. RAID-4 kan kanskje brukes, men da helst med en SSD for paritetsdisken, og da bare for spesielle behov. I de fleste miljøer brukes RAID-6 for lagring på mange disker, kanskje 5 eller mer. Med over 15 disker eller så, bør det lages flere RAID-grupper som sys sammen med andre ting, som LVM. Skal du sette opp RAID-1+0 på Linux, er det nok bedre å bruke flere RAID-1-enheter og så bruke LVM over dem framfor å bruke RAID10-nivået i mdraid i Linux, da dette er svært lite fleksibelt.


Categorised as: Debian | Gjesteinnlegg | RAID | Ubuntu



Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.