RAID je metóda, akou sa nastavuje viacero pevných diskov tak, aby sa správali ako jeden, pričom sa redukuje pravdepodobnosť katastrofickej straty dát pri zlyhaní disku. RAID je implementovaný buď ako softvérový (keď operačný systém vie o oboch diskoch a aktívne oba spravuje) alebo hardvérový (keď špeciálny radič vytvorí dojem, že v systéme je iba jeden disk a jednotlivé disky spravuje bez toho, aby o tom vedel operačný systém).
Softvérový RAID zahrnutý v aktuálnych verziách Linuxu (a Ubuntu) je založený na ovládači 'mdadm' a pracuje veľmi dobre, lepšie ako niektoré takzvané 'hardverové' RAID radiče. Táto časť vás prevedie inštaláciou vydania Ubuntu Server s použitím dvoch diskových oddielov RAID1 na dvoch fyzických diskoch, jedného oddielu pre / a druhého pre swap.
Budeme nasledovať inštalačné kroky, až kým sa nedostanete ku kroku Rozdelenie diskov. Potom:
Vďaka nastaveniu oblastí teraz môžme nastaviť diskové pole:
| Ak chcete použiť RAID5, potrebujete najmenej tri disky. Použitie RAID0 alebo RAID1, vyžaduje iba dva disky. |
Teraz by sme mali vidieť zoznam diskov a RAID zariadení. Ďalším krokom je formátovanie a nastavenie ich bodu pripojenia. Zariadenie RAID budeme považovať za bežný lokálny disk, ktorý môžeme rovnako naformátovať a pripojiť.
Ak nastavíme, že koreňová oblasť má byť v poli RAID, inštalátor sa nás opýta, či chceme systém zavádzať v degradovanom stave. Podrobnosti sa nachádzajú v časti “Degradované pole RAID”.
Inštalačný proces bude potom normálne pokračovať.
Počas dlhej prevádzky počítača môže nastať porucha disku. Ak je takýto disk súčasťou softvérového poľa RAID, operačný systém prepne pole do tzv. degradovaného stavu.
Ak pole prejde do degradovaného stavu kvôli možnosti poškodenia dát, Ubuntu Server sa po 30 sekundách reštartuje do tzv. initramfs režimu. Keď je initramfs zavedený, objaví sa na pätnásť sekúnd výzva umožňujúca opustiť tento režim a zaviesť systém alebo sa pokúsiť o ručnú opravu. Naštartovanie do initramfs môže ale aj nemusí byť želaným správaním, najmä ak ide o vzdialený počítač. Zavedenie systému do degradovaného poľa môže byť nastavené rôznymi spôsobmi:
sudo dpkg-reconfigure mdadm /etc/initramfs-tools/conf.d/mdadm.
Tento súbor má tú výhodu, že pomocou neho dokážeme predkonfigurovať
správanie systému a môžeme ho ručne upravovať:
BOOT_DEGRADED=true
| Nastavenie v súbore môže byť prevážené parametrom jadra Kernel. |
Po zavedení systému môžeme pole buď opraviť, ako sa hovorí v časti “Údržba poľa RAID”, alebo skopírovať dôležité dáta na iný počítač kvôli neopraviteľnému zlyhaniu hardvéru.
Nástroj mdadm sa dá použitý na zobrazenie stavu poľa, pridanie diskov do poľa, odobranie diskov, atď:
sudo mdadm -D /dev/md0
/dev/md0.
Cestu /dev/md0
nahradíme prislúchajúcou cestou zariadenia RAID.
sudo mdadm -E /dev/sda1
/dev/sda1.
sudo mdadm --remove /dev/md0 /dev/sda1
/dev/md0
a /dev/sda1
zmeníme na prislúchjúce cesty k zariadeniu RAID a disku.
sudo mdadm --add /dev/md0 /dev/sda1
Niekedy disk prejde do chybného stavu, aj keď nie je fyzicky poškodený. Takýto disk zvyčajne stačí z poľa odstrániť a znova ho pridať. Pole sa potom znova zosynchronizuje. Ak sa disk nezosynchronizuje s poľom, znamená to, že je asi chybný.
Súbor /proc/mdstat tiež obsahuje užitočné
informácie o systémových zariadeniach RAID:
cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] md0 : active raid1 sda1[0] sdb1[1] 10016384 blocks [2/2] [UU] unused devices: <none>
Nasledujúci príkaz je výborný na sledovanie stavu synchronizácie diskov:
watch -n1 cat /proc/mdstat
Ak chceme sledovanie pomocou nástroja watch prerušiť, stlačíme Ctrl+c.
Ak bolo potrebné vymeniť disk kvôli chybe, po výmene a zosynchronizovaní disku je ešte potrebné nainštalovať grub. Ak chceme grub nainštalovať na nový disk, zadáme príkaz:
sudo grub-install /dev/md0
Cestu /dev/md0 nahradíme prislúchajúcou cestou
k poľu RAID.
Problematika diskových polí RAID je vďaka množstvu spôsobov, akým môžu byť nastavené, veľmi rozsiahla. Viac informácií sa nachádza v anglickom jazyku na nasledujúcich stránkach:
Správca logických zväzkov (LVM) umožňuje správcom vytvoriť logické zväzky z jedného alebo viacerých fyzických diskov. LVM zväzky môžeme vytvoriť na štandardných oddieloch vytvorených na fyzických diskoch, ale aj na oddieloch diskového poľa RAID. Zväzky môžu byť aj rozšírené, čo systémom poskytuje väčšiu flexibilitu, keď potrebujeme niečo zmeniť.
Vedľajším efektom sily a flexibility LVM je jeho väčšia komplikovanosť. Pred tým, ako sa pustíme do inštalácie LVM, bude lepšie, ak sa oboznámime s niektorými termínmi.
Použitie LVM si ukážeme na na príklade, v ktorom pripojíme
priečinok /srv
k zväzku LVM. Počas počiatočnej inštalácie použijeme iba jeden fyzický
zväzok (PV), ktorý bude časťou skupiny zväzkov (VG). Ďalší PV pridáme
po skončení inštalácie, aby sme demonštrovali, ako sa dá VG rozšíriť.
Pri inštalácii systému máte k dispozícii niekoľko možností, ktoré nastavia LVM. Možnosť "Sprievodca – použiť celý disk a nastaviť LVM", ktorá Vám umožní použiť časti voľného priestoru pre LVM, "Sprievodca – použiť celý disk a nastaviť šifrované LVM", alebo Manuálne nastaviť oddiely a nastaviť LVM. Ak chceme nastaviť systém tak, aby súčasne používal LVM aj štandardné diskové oddiely, musíme vybrať manuálny spôsob.
Existuje niekoľko užitočných nástrojov, ktoré zobrazujú informácie o LVM:
Teraz, keď sme úspešne použili srv
ako LVM zväzok, pridáme druhý disk, vytvoríme fyzický zväzok (PV),
pridáne ho do skupiny zväzkov (VG), rozšírime logický zväzok srv
a nakoniec rozšírime súborový systém. V tomto príklade teda
predpokladáme, že sme do systému už pripojili druhý disk. Tento pevný
disk bude mať označenie /dev/sdb. UPOZORNENIE: pred tým, ako
začnete skúšať tieto príkazy, presvedčte sa, či už náhodou nemáte /dev/sdb
priradené k inému disku. Ak tieto príkazy vykonáte nad diskom, ktorý
nie je prázdny, môžete stratiť všetky dáta. V našom príklade použijeme
celý disk ako fyzický zväzok (Vy však môžete urobiť na disku najskôr
oddiely a potom ich použiť ako samamostatné fyzické zväzky)
sudo pvcreate /dev/sdb
sudo vgextend vg01 /dev/sdb sudo lvextend /dev/vg01/srv -l +511
sudo umount /srv sudo e2fsck -f /dev/vg01/srv
sudo resize2fs /dev/vg01/srv
mount /dev/vg01/srv /srv && df -h /srv