Razlika između inačica stranice RAID dokumentacija

Izvor: HrOpenWiki
Skoči na: orijentacija, traži
Redak 59: Redak 59:
 
  # mdadm -v --create /dev/md0 --level=raid1 --raid-devices=2 /dev/sdc /dev/sdd  
 
  # mdadm -v --create /dev/md0 --level=raid1 --raid-devices=2 /dev/sdc /dev/sdd  
  
Čitanje stanja RAID polja:
+
Stvaramo RAID5 polje /dev/md0 od 3 diska /dev/sdc, /dev/sdd i /dev/sde:
  mdadm --detail /dev/md0
+
# mdadm -v --create /dev/md0 --level=raid5 --raid-devices=3 /dev/sdc /dev/sdd /dev/sde
 +
 
 +
Moguće je pri kreiranju polja navesti i ime rezervnog diska kojim će se polje automatski poslužiti u koliko dođe do kvara na jednom od diskova (primjer sa kreiranjem RAID10 polja s 4 diska + 1 rezervni):
 +
# mdadm -v --create /dev/md0 --level=raid10 --raid-devices=4 /dev/sdc /dev/sdd /dev/sde /dev/sdf --spare-devices=1 /dev/sdg
 +
 
 +
Nakon kreiranja RAID polja moramo ga prijaviti u sistem kako bi se isto automatski aktiviralo prilikom podizanja sustava, te eventualno montiralo putem ''fstab'' tablice.
 +
# mdadm -Es >> /etc/mdadm.conf
 +
 
 +
===Pregled stanja RAID polja===
 +
 
 +
Ako želimo saznati detalje o aktivnom RAID polju, to postižemo slijedećom naredbom
 +
  # mdadm --detail /dev/md0
 +
Naredba daje ovakav rezultat:
 +
<pre>
 +
/dev/md0:
 +
        Version : 1.2
 +
  Creation Time : Wed Jan 12 12:49:59 2011
 +
    Raid Level : raid10
 +
    Array Size : 16774144 (16.00 GiB 17.18 GB)
 +
  Used Dev Size : 8387072 (8.00 GiB 8.59 GB)
 +
  Raid Devices : 4
 +
  Total Devices : 5
 +
    Persistence : Superblock is persistent
 +
 
 +
    Update Time : Wed Jan 12 12:51:59 2011
 +
          State : active
 +
Active Devices : 4
 +
Working Devices : 5
 +
Failed Devices : 0
 +
  Spare Devices : 1
 +
 
 +
        Layout : near=2
 +
    Chunk Size : 512K
 +
 
 +
          Name : Arch-vbox:0  (local to host Arch-vbox)
 +
          UUID : ba5baaa6:c6046fe9:3e1afcd4:e4ff0cee
 +
        Events : 18
 +
 
 +
    Number  Major  Minor  RaidDevice State
 +
      0      8      33        0      active sync  /dev/sdc1
 +
      1      8      48        1      active sync  /dev/sdd
 +
      2      8      64        2      active sync  /dev/sde
 +
      3      8      80        3      active sync  /dev/sdf
 +
 
 +
      4      8      96        -      spare  /dev/sdg
 +
<pre>
  
 
Degradirano polje (ono koje je izgubilo jedan disk, ali i dalje radi) daje ovakav prikaz:
 
Degradirano polje (ono koje je izgubilo jedan disk, ali i dalje radi) daje ovakav prikaz:

Inačica od 12:55, 12. siječnja 2011.

Uvod u RAID

Značenje

RAID (Redundant Array of Independent (Inexpensive) Disks) ili na hrvatskome jeziku: Redundantno polje neovisnih (jeftinih) diskova čini zapravo jedinstveni uređaj za pohranu podataka koji se sastoji od mnoštva (najmanje 2) tvrda diska, a u svrhu povećanja sigurnosti od gubitka podataka ili zbog druge namjene.

Razlikujemo hardverske RAID-ove, tzv. fake RAID-ove (to su RAID-ovi integrirani na matičnim pločama računala) i softverske RAID-ove. U ovoj dokumentaciji baviti ćemo se softverskim RAID-om dostupnim na svim Linux računalima.

Namjena

U današnje vrijeme tvrdi diskovi više nisu skupi kao nekada, te su prilično dostupni svima. S druge strane, količina važnih podataka u digitalnom obliku se stalno povećava i potreba za sigurnim spremanjem (back-up-om) se također povećava. U koliko imate računalo u koje možete smjestiti više od jednog tvrdog diska (uglavnom sva stolna računala), onda možete oformiti i RAID za vlastite potrebe. Kada ga jednom podesite i pustite u rad, RAID je puno zahvalniji i jednostavniji nego stalno ručno ili automatsko čekanje na back-up podataka. Osim toga takvo spremanje podataka radite periodički (dnevno, tjedno, mjesečno) a u RAID polju vaši podaci su stalno sigurni. U slučaju kvara na jednom tvrdom disku, vaši podaci su i dalje dostupni i dovoljno je samo zamijeniti pokvareni disk i polje se vrlo jednostavno dovodi u ispravno (nedegradirano) stanje.

Vrste

RAID polja imamo više vrsta, a ovise o načinu pohrane podataka na tvrde diskove. Nećemo se baviti sa svim vrstama polja, nego samo s onima koja se najčešće koriste.

RAID0

Zapravo to i nije RAID u doslovnom smislu jer ne nudi nikakvu redundantnost podataka. Dapače, degradira sigurnost jer se povećava vjerojatnost kvara nekog tvrdog diska proporcionalno broju tvrdih diskova. RAID0 (data stripping) je zapravo stvaranje jednog polja kapaciteta jednakog zbroju kapaciteta svih diskova u polju. Naravno, ako dođe do kvara na bilo kojem disku u polju, gube se svi podaci tog polja. Ovaj tip RAID-a koristi se ako imamo veći broj malih diskova i želimo ih spojiti u jednu veliku particiju zbog potrebe za prostorom, a sigurnost nam u tom trenutku nije važna. Također, RAID0 ima nešto bolje performanse pri pisanju i čitanju.

RAID1

Vrlo česti primjer u praksi je RAID1. Radi se o čistom zrcaljenju (mirroring) podataka. Što konkretno znači da se podaci spremaju jednako na sve čvrste diskove u polju. Uobičajeno je koristiti dva tvrda diska u takvome polju, no moguće ih je postaviti bilo koji broj, te se u tom slučaju drastično povećava sigurnost podataka, jer je dovoljno da samo jedan disk preživi, a da ne dođe do gubitka. Kapacitet takvog polja uvijek je jednak kapacitetu najmanjeg diska. Što se brzine pristupa tiče, čitanje se može znatno ubrzati u odnosu na jedan disk, jer su svi podaci s diskova odmah dostupni, pa svaki disk može čitati u isto vrijeme drugi podatak. Iz tog razloga preporuča se postavljanje svakog diska na zasebni kontroler. Pisanje podataka je jednako brzini pisanja na pojedini disk jer se podaci moraju zapisati na sve diskove.

RAID10

Ovo je kombinacija RAID1 i RAID0 polja, a donosi beneficije kod većeg broja diskova. Radi se o tome da se dva ili više mirror polja (RAID1) vežu u jedno stripe RAID0 polje i na taj način povećava kapacitet cijelog polja.

Primjer: Imamo četiri diska kapaciteta 100 GB.

  • Ako ih povežemo u RAID0 polje dobivamo kapacitet polja: 4*100=400 GB, no kvarom jednog uređaja gubimo sve podatke.
  • Ako ih povežemo u RAID1 polje dobivamo kapacitet polja: 100 GB, no podaci su zapisani četverostruko i imamo (pre)veliku sigurnost
  • Ako ih povežemo u RAID10 polje dobivamo kapacitet polja: 100+100 =200 GB, RAID1 + RAID1 = RAID1+0 ili RAID10. Takav RAID0 (stripe) je zaštićen jer su njegove komponente ne pojedinačni diskovi, nego RAID1 (mirror) polja, pa ako dođe do kvara na jednom disku, polje i dalje opstaje.

RAID5

Ovaj RAID poprilično je popularan zbog svoje niske cijene redundantnosti, odnosno broja diskova koji su potrebni. Naime, dok je kod RAID1 i RAID10 polja kapacitet samo s/n, gdje je s zbroj kapaciteta n uređaja, RAID5 ima kapacitet Smin*(n-1), gdje je Smin kapacitet najmanjeg uređaja, a n broj svih uređaja u polju. Ako ovo usporedimo sa primjerom iz gornjeg poglavlja gdje imamo četiri diska kapaciteta 100 GB dobivamo: 100*(4-1)= 300GB, ili točnije kapacitet RAID5 polja je uvijek jednak kapacitetu (n-1) uređaja. Poprilično više nego kod primjerice RAID10 polja gdje je kapacitet 200 GB. Sigurnost je jednaka kao i kod RAID10 polja, odnosno RAID5 trpi gubitak jednog diska u polju. Ako trebate veću sigurnost, onda se prelazi na RAID6 sustav koji trpi gubitak 2 diska.

Minimalni broj diskova u RAID5 polju je tri, a kod RAID6 polja četiri.

No, RAID5 trpi na performansama kod zapisivanja i to posebice kod velikih višekorisničkih baza podataka, dok su mu performanse čitanja gotovo jednake kao kod RAID0 polja.

Ovi loši rezultati kod zapisivanja na polje ne igraju preveliku ulogu pri uobičajenom korištenju računala, gdje je čitanje češće nego zapisivanje podataka. Možemo RAID5 preporučiti kao /home particiju pri uobičajenom radu s računalom ili pak za datotečni server.

RAID5 se vrlo jednostavno nadograđuje. Dovoljno je umetnuti novi disk, te ga prijaviti u polje.

Rad sa RAID-om u Linuxu

Uvod

Namjena je ovih poglavlja da na jednostavan način upoznaju korisnika sa naredbama za kreiranje, slaganje, rasformiranje, povećanje i ostale radnje sa RAID sustavom.

Prije svega važno je napomenuti da Linux RAID polje naziva /dev/mdx uređajem, gdje je x redni broj polja u sistemu. U koliko se na RAID polju formiraju particije, onda se uređaj naziva /dev/mdxpy, gdje je y redni broj particije.

Također, u nađem primjeru kojeg smo koristili u poglavljima koristili smo 4 diska kapaciteta od 8 GB i jedan kapaciteta 16 GB. Nazivi diskova: /dev/sdc, /dev/sdd, /dev/sde, /dev/sdf, /dev/sdg

Uspješno kreirani /dev/mdx RAID uređaj ponaša se kao uobičajeni disk kojeg se particionira i formatira na bilo koji željeni datotečni sustav i montira na uobičajeni način.

Za sve radove sa RAID-om koristi se mdadm naredba iz terminala. Ne postoji GUI alat za ovu namjenu.

Kreiranje RAID polja

Prilikom kreiranja RAID polja potrebno je navesti ime uređaja polja, nivo (level) polja (raid0, raid1, raid10, raid5...) broj diskova u polju i navesti imena uređaja od kojih će se polje stvoriti.

Stvaramo RAID1 polje /dev/md0 od 2 diska /dev/sdc i /dev/sdd:

# mdadm -v --create /dev/md0 --level=raid1 --raid-devices=2 /dev/sdc /dev/sdd 

Stvaramo RAID5 polje /dev/md0 od 3 diska /dev/sdc, /dev/sdd i /dev/sde:

# mdadm -v --create /dev/md0 --level=raid5 --raid-devices=3 /dev/sdc /dev/sdd /dev/sde

Moguće je pri kreiranju polja navesti i ime rezervnog diska kojim će se polje automatski poslužiti u koliko dođe do kvara na jednom od diskova (primjer sa kreiranjem RAID10 polja s 4 diska + 1 rezervni):

# mdadm -v --create /dev/md0 --level=raid10 --raid-devices=4 /dev/sdc /dev/sdd /dev/sde /dev/sdf --spare-devices=1 /dev/sdg 

Nakon kreiranja RAID polja moramo ga prijaviti u sistem kako bi se isto automatski aktiviralo prilikom podizanja sustava, te eventualno montiralo putem fstab tablice.

# mdadm -Es >> /etc/mdadm.conf

Pregled stanja RAID polja

Ako želimo saznati detalje o aktivnom RAID polju, to postižemo slijedećom naredbom

# mdadm --detail /dev/md0

Naredba daje ovakav rezultat:

/dev/md0:
        Version : 1.2
  Creation Time : Wed Jan 12 12:49:59 2011
     Raid Level : raid10
     Array Size : 16774144 (16.00 GiB 17.18 GB)
  Used Dev Size : 8387072 (8.00 GiB 8.59 GB)
   Raid Devices : 4
  Total Devices : 5
    Persistence : Superblock is persistent

    Update Time : Wed Jan 12 12:51:59 2011
          State : active
 Active Devices : 4
Working Devices : 5
 Failed Devices : 0
  Spare Devices : 1

         Layout : near=2
     Chunk Size : 512K

           Name : Arch-vbox:0  (local to host Arch-vbox)
           UUID : ba5baaa6:c6046fe9:3e1afcd4:e4ff0cee
         Events : 18

    Number   Major   Minor   RaidDevice State
       0       8       33        0      active sync   /dev/sdc1
       1       8       48        1      active sync   /dev/sdd
       2       8       64        2      active sync   /dev/sde
       3       8       80        3      active sync   /dev/sdf

       4       8       96        -      spare   /dev/sdg
<pre>

Degradirano polje (ono koje je izgubilo jedan disk, ali i dalje radi) daje ovakav prikaz:
<pre>
/dev/md0:
        Version : 00.90.03
  Creation Time : Sun Aug 24 14:25:46 2008
     Raid Level : raid1
     Array Size : 78150656 (74.53 GiB 80.03 GB)
  Used Dev Size : 78150656 (74.53 GiB 80.03 GB)
   Raid Devices : 2
  Total Devices : 1
Preferred Minor : 0
    Persistence : Superblock is persistent

    Update Time : Sun Jan 18 19:51:45 2009
          State : clean, degraded
 Active Devices : 1
Working Devices : 1
 Failed Devices : 0
  Spare Devices : 0

           UUID : c5b0fc1c:e38d099c:f6bbbce7:e581d4d0 (local to host desktop-pc)
         Events : 0.3322

    Number   Major   Minor   RaidDevice State
       0       0        0        0      removed
       1       8        0        1      active sync   /dev/sda

Dodavanje sdb3 particije u mda0 RAID polje (ako je polje degradirano, automatski regenerira polje s novim diskom/particijom, u suprotnom novu particiju/disk dodaje kao rezervni uređaj):

mdadm --add /dev/md0 /dev/sdb3

Da bi promjene ostale i nakon restarta potrebno je urediti i /etc/mdadm.conf datoteku - dodati disk/particiju u DEVICES liniju:

# mdadm.conf written out by anaconda
MAILADDR root
DEVICE /dev/sda3 /dev/sdb3
ARRAY /dev/md0 level=raid1 num-devices=2 UUID=xxxx

Reference i daljnje čitanje