malinux

malinux' lillablogg

RAID på Linux – trinn 2 — Denne posten er skrevet av royk —

I første artikkel i denne serien, ga vi en enkel innføring i de forskjellige RAID-nivåene. I denne artikkelen, går vi gjennom installasjon av RAID-1/speiling på systempartisjonene på Linux gjennom installasjonen. Eksemplene under er for Debian Wheezy, men framgangsmåten er lik på Ubuntu og tilsvarende distroer. På CentOS og andre RedHat-baserte versjoner, vil det være forskjellig.

Kort om RAID-kontrollere

Denne artikkelserien handler om RAID gjort i åpen programvare. Det finnes RAID-kontrollere som gjør dette svært effektivt, men de koster mye og er skjelden eller aldri like fleksible som Linux' mdraid, som det som omtales her. Mange hovedkort kommer i dag med "RAID-kontroller", men disse har typisk bare en BIOS og kanskje litt elektronikk for å hjelpe til med paritetsberegning og kalles i Linux-kretser for FakeRaid. Har du en slik kontroller, skru av RAID i BIOS og la Linux gjøre jobben. Har du en skikkelig RAID-kontroller, kan du selv velge om du vil bruke denne eller mdraid. Om hva som er best, strides som alltid de lærde.

mdraid

mdraid (md som i "miltiple devices") er den mest brukte av Linux' innebygde software RAID-løsninger og er den jeg går gjennom her. LVM støtter også litt RAID, men dette omtales ikke her. md-driveren så dagen først i 2001, i 2005 kom RAID-6 inn, og i dag er dette annsynligvis noe av det mest utbredte RAID-systemet på kloden{{citation-needed}}, takket være mengden små, billige NAS-løsninger{{citation-needed}}.

Plassering av data og rota

Linux (dvs GRUB) kan ikke starte direkte fra RAID-nivåer andre enn RAID-1/speil. Noen NAS-produsenter, som QNAP, bruker små partisjoner i begynnelsen av store disker og speiler disse og bruker resten til RAID-5 eller -6. Jeg anbefaler ikke dette, siden det alltid er en god idé å separere data og system, og da på forskjellige fysiske disker. Det er veldig stor forskjell på I/O-mønster på rota (stort sett les) og på data (veldig varierende avhengig av datatype osv) og også i hastighet. Satt litt på spissen, gitt at systemet ikke swapper, kan du fint ha rota på treige minnepinner fra ebay, mens du har raske og gode disker til data. I tillegg vil man helst ha RAID direkte på disker (som sdc) og ikke på partisjoner (som sdc1), noe man ikke enkelt kan gjøre med rota. Dette er fordi at hvis du har et RAID og bytter alle disker med større, så vil det være mulig å utvide raidet med en enkel kommando. Ligger raidet på partisjoner, må du gjennom utvidelse av partisjonene før raidet kan utvides, og siden utvidelse av partisjoner må gjøres når disken er offline, vil det medføre nedetid og bannskap.

Speiling av systempartisjoner under installasjon

Jeg startet installasjon av en ny virtuell maskin eller VM med navn raidtest som ble satt opp med 2 disker på 8GB hver. Når installasjonsprogrammet nådde Partition disks, valgte jeg Manual. For hver disk, gikk jeg gjennom og laget én partisjon til /boot (500MB), én partisjon til swap (500MB) og resten til rota (/). Den første ble laget som physical partition, resten som logical partition. På samtlige valgte jeg Use as: physical volume for RAID. Etter at partisjonene ble opprettet, valgte jeg Configure software RAIDCreate MD Device, RAID1, 2 disker og 0 spares, og valgte vda1 og vda2 som active devices, så tilsvarende for de andre to settene med partisjoner. Valgte så Finish og fikk opp lista over disker og partisjoner igjen, men nå også med RAID-settene jeg hadde laget, her vist etter at jeg har valgt monteringspunkter og filsystemtype/swap. På en fysisk maskin vil disse enhetene bli hetende sda og sdb med partisjoner som sda1 og sdb1 og så videre.

Screen Shot 2015-03-30 at 18.21.19

Velg nå "Finish partitioning and write changes to disk" og installasjonen fortsetter som vanlig. Når installasjonen er ferdig, kjør en statussjekk av de tre RAID-settene som er satt opp:

Screen Shot 2015-03-30 at 19.17.36

Hvis en md-enhet, som md1 her, kommer opp med auto-read-only etter installasjon, er dette som regel en falsk alarm, da md-enheter normalt står i denne statusen fram til det blir forsøkt skrevet til enheten. Den kan imidlertid tvinges i read-write med "mdadm --readwrite /dev/md1" jamfør lista vist over.

Oppsummering

Ved å følge denne gjennomgangen, vil du ha et ferdig system med redundans på systemet. Oppsett av datasett bør gjøres manuelt, og mer om dette kommer i neste artikkel.


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.