Lagringsteknologien kjent som RAID (Redundant Array of Independent Disks) kombinerer flere fysiske disker til en logisk enhet. Stasjonene kan vanligvis kombineres for å gi data redundans eller for å utvide størrelsen på logiske enheter utover funksjonen til de fysiske diskene eller begge deler. Teknologien gir også mulighet for vedlikehold av maskinvare uten å slå av systemet.
Typene RAID organisering er beskrevet i RAID Wiki.
Merk at mens RAID gir beskyttelse mot diskfeil, er det ikke en erstatning for sikkerhetskopiering. En fil slettet er fortsatt slettet på alle diskene i en RAID matrise. Moderne sikkerhetskopier gjøres vanligvis via rsync-3.2.7.
Det er tre hovedtyper av RAID implementering: Maskinvare RAID, BIOS-basert RAID og programvare RAID.
Maskinvarebasert RAID gir kapasitet gjennom proprietær maskinvare og dataoppsett. Kontrollen og konfigurasjonen er generelt gjort via fastvare i forbindelse med kjørbare programmer gjort tilgjengelig av enhetsprodusenten. Mulighetene leveres vanligvis via et PCI-kort, selv om det er noen forekomster av RAID komponenter integrert i hovedkortet. Hardware RAID kan også være tilgjengelig i et frittstående kabinett.
En fordel med maskinvarebasert RAID er at stasjonene tilbys til operativsystemet som en logisk stasjon og ingen operativsystemavhengig konfigurasjon er nødvendig.
Ulemper inkluderer vanskeligheter med å overføre stasjoner fra ett system til et annet, oppdatere fastvare eller erstatte ødelagt RAID-maskinvare.
Noen datamaskiner tilbyr en maskinvarelignende RAID-implementering i system-BIOS. Noen ganger blir dette referert til som "falsk" RAID siden funksjoner vanligvis er integrert i fastvare uten maskinvare akselerasjon.
Fordelene og ulempene med BIOS-basert RAID er generelt det samme som hardware RAID med den ekstra ulempen at det ikke er maskinvareakselerasjon.
I noen tilfeller er BIOS-basert RAID-fastvare aktivert som standard (f.eks. noen DELL systemer). Hvis programvare RAID er ønsket, må dette alternativet være eksplisitt deaktivert i BIOS.
Programvarebasert RAID er den mest fleksible formen for RAID. Det er enkelt å installere og oppdatere og gir full kapasitet på alle eller del av alle stasjoner som er tilgjengelige for systemet. I BLFS, RAID-programvaren finnes i mdadm-4.2.
Det er enkelt å konfigurere en RAID enhet mdadm. Vanligvis opprettes enheter i
/dev
mappen som /dev/mdx
hvor x er et heltall.
Det første trinnet i å lage en RAID matrise er å bruke
partisjoneringsprogramvare som for eksempel fdisk
eller parted-3.6 til å definere
partisjonene som trengs for matrisen. Vanligvis vil det være en
partisjon på hver stasjon som deltar i RAID matrisen, men det er
ikke strengt nødvendig. For dette eksemplet vil det være fire
harddisker: /dev/sda
, /dev/sdb
, /dev/sdc
,
og /dev/sdd
. De vil bli delt opp som
følger:
Partition Size Type Use
sda1: 100 MB fd Linux raid auto /boot (RAID 1) /dev/md0
sda2: 10 GB fd Linux raid auto / (RAID 1) /dev/md1
sda3: 2 GB 83 Linux swap swap
sda4 300 GB fd Linux raid auto /home (RAID 5) /dev/md2
sdb1: 100 MB fd Linux raid auto /boot (RAID 1) /dev/md0
sdb2: 10 GB fd Linux raid auto / (RAID 1) /dev/md1
sdb3: 2 GB 83 Linux swap swap
sdb4 300 GB fd Linux raid auto /home (RAID 5) /dev/md2
sdc1: 12 GB fd Linux raid auto /usr/src (RAID 0) /dev/md3
sdc2: 300 GB fd Linux raid auto /home (RAID 5) /dev/md2
sdd1: 12 GB fd Linux raid auto /usr/src (RAID 0) /dev/md3
sdd2: 300 GB fd Linux raid auto /home (RAID 5) /dev/md2
I dette arrangementet opprettes en egen oppstartspartisjon som
første RAID matrise og et rootfilsystem som den andre RAID
matrisen, begge speilet. Den tredje partisjonen er en stor (omtrent
1 TB) matrise for /home
mappen. Dette
gir en evne til å stripe data på tvers av flere enheter, og
forbedre hastigheten for både lesing og skriving av store filer.
Til slutt opprettes en fjerde matrise som kobler sammen to
partisjoner til en større enhet.
Alle mdadm kommandoer må kjøres
som root
bruker.
For å opprette disse RAID matrisene er kommandoene:
/sbin/mdadm -Cv /dev/md0 --level=1 --raid-devices=2 /dev/sda1 /dev/sdb1 /sbin/mdadm -Cv /dev/md1 --level=1 --raid-devices=2 /dev/sda2 /dev/sdb2 /sbin/mdadm -Cv /dev/md3 --level=0 --raid-devices=2 /dev/sdc1 /dev/sdd1 /sbin/mdadm -Cv /dev/md2 --level=5 --raid-devices=4 \ /dev/sda4 /dev/sdb4 /dev/sdc2 /dev/sdd2
Enhetene som er opprettet kan undersøkes enhet for enhet. For
eksempel, å se detaljene om /dev/md1
,
bruk /sbin/mdadm --detail
/dev/md1
:
Version : 1.2
Creation Time : Tue Feb 7 17:08:45 2012
Raid Level : raid1
Array Size : 10484664 (10.00 GiB 10.74 GB)
Used Dev Size : 10484664 (10.00 GiB 10.74 GB)
Raid Devices : 2
Total Devices : 2
Persistence : Superblock is persistent
Update Time : Tue Feb 7 23:11:53 2012
State : clean
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
Name : core2-blfs:0 (local to host core2-blfs)
UUID : fcb944a4:9054aeb2:d987d8fe:a89121f8
Events : 17
Number Major Minor RaidDevice State
0 8 1 0 active sync /dev/sda1
1 8 17 1 active sync /dev/sdb1
Fra dette tidspunktet kan partisjonene formateres med filsystemet
du velger (f.eks. ext3, ext4, xfsprogs-6.6.0, etc). De formaterte
partisjonene kan da bli montert. /etc/fstab
filen kan bruke enhetene som er
opprettet for montering ved oppstart og linux kommandolinjen i
/boot/grub/grub.cfg
kan spesifisere
root=/dev/md1
.
vekselminnet bør spesifiseres i /etc/fstab
filen som normalt. Kjernen striper
normalt vekselminnets data på tvers av flere vekselminnefiler og
bør ikke lages som del av en RAID matrise.
For ytterligere alternativer og administrasjonsdetaljer for RAID
enheter, se man
mdadm
.
Ytterligere detaljer for å overvåke RAID matriser og håndtere problemer finner du på Linux RAID Wiki.