Ero sivun ”Ohjelmistopohjainen RAID” versioiden välillä

Siirry navigaatioon Siirry hakuun
3 897 merkkiä lisätty ,  30. syyskuuta 2010
Ei muokkausyhteenvetoa
 
(25 välissä olevaa versiota 11 käyttäjän tekeminä ei näytetä)
Rivi 1: Rivi 1:
= mdadm =
Linuxin kernelissä on ohjelmistopohjainen [[RAID]]-toteutus, md (multidisk). Linuxissa RAID-pakkoja ovat ''/dev/mdX'' -[[laitetiedostot|laitteet]], jotka käyttäytyvät kuten normaalitkin levyasemat. Jos järjestelmän juurihakemisto on raidilla, saattaa käynnistäminen aiheuttaa päänvaivaa. On suositeltavaa sijoittaa /boot-hakemisto erilliselle osiolle.


[[mdadm]] eroaa raidtools:sta mm. siten, että mdadm on yksi ohjelma jossa on yleinen syntaksi lähes kaikkien toimintojen suorittamiseen. mdadm ei myöskään tarvitse konfiguraatiotiedostoa.
RAIDin asentaminen on verrattain helppoa. Aluksi koneeseen asennetaan kiintolevyt joita RAIDiin on tarkoitus käyttää. Kiintolevyt osioidaan omien mieltymysten ja valitun RAID-järjestelmän rajoitusten mukaan (esim. peilattaessa luodaan kahdelle eri levylle yhtä suuret osiot). Osioiden tyypiksi asetetaan ''Linux raid autodetect'' (heksakoodi ''fd''). Lisäksi [[Ydin|ytimessä]] on [[Kernelin kääntäminen|oltava tuki]] RAID-järjestelmälle. Nykyisten jakeluiden valmiit ytimet tukevat käytännössä aina RAIDia suoraan.


mdadm:n käyttö on sangen yksinkertaista, sillä komennon parametrit kuvaavat hyvin kutakin suoritettavaa toimintoa ja ohjelman oma ohjeistus on erittäin hyvää. Komento ''mdadm --help'' auttaa hyvin alkuun.
Aluksi muodostetaan RAID-pakka sopivalla työkalulla. RAID-työkaluja on tällä hetkellä yleisesti käytössä kaksi - vanha ''raidtools'' ja uudempi ''mdadm''. Näistä mm. ''Software-RAID-HOWTO'' suosittelee jälkimmäistä. Lopuksi RAID-pakalle tehdään tiedostojärjestelmä normaaliin tapaan, minkä jälkeen pakka on käytettävissä. RAID-pakan tilaa voi yleensä tutkia katselemalla tiedoston ''/proc/mdstat'' sisältöä. Tilan tarkastelu onnistuu myös mdadm-ohjelmalla.


Esimerkkitapaus: Levyosiot /dev/hda1 ja /dev/hdc1 halutaan asettaa RAID-1-pakaksi /dev/md0. Sopiva komento olisi tällöin
== mdadm ==
  mdadm --create --level=1 --raid-devices=2 /dev/md0 /dev/hda1 /dev/hdc1
 
[[mdadm]] eroaa raidtoolsista mm. siten, että mdadm on yksi ohjelma jossa on yleinen syntaksi lähes kaikkien toimintojen suorittamiseen.
 
mdadm:n käyttö on sangen yksinkertaista, sillä komennon parametrit kuvaavat hyvin kutakin suoritettavaa toimintoa ja ohjelman oma ohjeistus on erittäin selkeä. Komento <tt>mdadm --help</tt> auttaa hyvin alkuun.
 
Esimerkkitapaus: Levyosiot <tt>/dev/sda1</tt> ja <tt>/dev/sdc1</tt> halutaan asettaa RAID-1-pakaksi (peilaus) <tt>/dev/md0</tt>. Sopiva komento olisi tällöin
mdadm --create --level=1 --raid-devices=2 /dev/md0 /dev/sda1 /dev/sdc1
 
Jos <tt>/dev/md0</tt>-laitetta ei löydy, sen voi luoda komennolla
[[mknod]] /dev/md0 b 9 0
 
Tarkastetaan sitten mitä uudelle RAID-pakalle kuuluu:
mdadm --detail /dev/md0
 
Tämän jälkeen levyosiolle (<tt>/dev/md0</tt>) voitaisiin luoda [[tiedostojärjestelmä]] normaaliin tapaan, esimerkiksi [[ext3]]-järjestelmä komennolla
[[mkfs.ext3]] /dev/md0
 
Esimerkki mdadm:n käytöstä löytyy artikkelista [[Ohjelmistopohjainen RAID ja LVM]].
 
== RAID-laitteen tekeminen raidtools-työkaluilla ==
''raidtools''-paketista löytyvät vanhat työkalut <tt>md</tt>:n säätämiseen, jotka <tt>mdadm</tt>
on pitkälti korvannut.
 
Seuraavaksi kirjoitetaan /etc/raidtab -tiedosto, joka kuvaa mitkä levyt kuuluvat RAIDiin, ja millaisen md-laitteen ne muodostavat.
 
Esimerkkitapaus, jossa laitteet /dev/hde1 ja /dev/hdh1 muodostavat peilatun laitteen (RAID-1), joka on siis yhtä iso kuin kumpikin yksittäinen levy, ja joka selviää toisen levyn rikkoutumisesta tietojen häviämättä. Raid-level kohdan arvoa muuttamalla voi tehdä erilaisia RAID-tasoja edustavia laitteita: esimerkiksi RAID-0:lla saa kahdesta levystä tehtyä yhden ison, ja RAID-5:llä kolmesta tai useammasta saadaan yhtä levyä sekä vikasietoisempi, suurempi että nopeampi laite.
 
        raiddev /dev/md0
                raid-level      1
                nr-raid-disks  2
                nr-spare-disks  0
                persistent-superblock 1
                device          /dev/hde1
                raid-disk      0
                device          /dev/hdh1
                raid-disk      1
 
Lopuksi tehdään laite komentamalla:
            mkraid /dev/md0
 
Tämän jälkeen /dev/md0 on käsiteltävissä siinä missä mikä tahansa levyosio: sille voi luoda minkä tahansa tiedostojärjestelmän.
 
==/proc/mdstat==
Tiedosto <tt>/[[proc]]/mdstat</tt> sisältää ajantasaiset tiedot käytössä olevien <tt>md</tt>-laitteiden tilasta. Esimerkissä käytössä on kaksi <tt>md</tt>-laitetta, jotka molemmat ovat aktiivisia.
 
pentti@kone:~$ cat /proc/mdstat
Personalities : [raid1]
md1 : active raid1 hdc1[0] hdh1[1]
      156288256 blocks [2/2] [UU]
md0 : active raid1 hda1[0] hdd1[1]
      244195904 blocks [2/2] [UU]
unused devices: <none>
 
== Katso myös ==
*[[LVM]]
*[[Ohjelmistopohjainen RAID ja LVM]] - käyttöesimerkki ohjelmistopohjaisesta RAIDista ja LVM:stä yhteiskäytössä
==Aiheesta muualla==
*[http://www.tldp.org/HOWTO/Software-RAID-HOWTO.html The Linux Documentation Project: Software RAID HowTo]
 
[[Luokka:Osiot]]
Rekisteröitymätön käyttäjä

Navigointivalikko