přejít na obsah přejít na navigaci

Linux E X P R E S, Správa linuxového serveru: Softwarový RAID prakticky

Správa linuxového serveru: Softwarový RAID prakticky

debain_notext.png

Co je to RAID, jaké jsou jeho typy a pro který byste se měli rozhodnout, jste se již dozvěděli v minulých dílech. Nyní se na něj podíváme z praktického hlediska. Vytváření nového a modifikace stávajícího pole pro vás bude hračkou.


reklama

O RAIDu teoreticky: Správa linuxového serveru: RAID teoreticky

Průzkum existujícího pole

Informace o všech diskových polích spravovaných Linuxem naleznete v souboru /proc/mdstat. Výpis tohoto souboru může vypadat třeba takto:

debian:~# cat /proc/mdstat
Personalities : [raid1]
md2 : active raid1 sdb2[0] sda2[1]
975763866 blocks super 1.2 [2/2] [UU]
bitmap: 5/466 pages [20KB], 1024KB chunk

md0 : active raid1 sdb1[0] sda1[1]
995904 blocks [2/2] [UU]

unused devices: &ls;none>

V tomto výpisu jsou vidět dvě pole, RAID 1 pole md0 o přibližné velikosti 1GB složené ze zařízení sdb1 a sda1 a RAID 1 pole md2 o přibližné velikosti 1TB složené ze zařízení sdb2 a sda2. Obě dvě pole jsou aktivní se dvěma ze dvou zařízení (viz [2/2]).

Zkusme se podívat na jiný výpis:

debian:~# cat /proc/mdstat
Personalities : [raid1]
md0 : active raid1 hda1[0] hdd1[3](F) hdb1[1]
1172608 blocks [3/2] [UU_]

unused devices: &ls;none>

Zde je patrný problém se zařízením hdd1, které bylo označeno jako poruchové. Proto je u něj písmeno F (f jako faulty). Pole je aktivní, ale pouze se dvěma ze tří zařízení (viz [3/2]). Povšimněte si ve výpisu posloupnosti označující stav jednotlivých zařízení seřazených podle jejich pořadí v poli - [UU_]. Zde značí písmeno U aktivní zařízení v poli a podtržítko značí chybějící aktivní zařízení.

V momentě, kdy chybné zařízení vyřadíme z pole a zařadíme jeho náhradu, začne rekonstrukce pole:

debian:~# cat /proc/mdstat
Personalities : [raid1]
md0 : active raid1 hdd1[3] hda1[0] hdb1[1]
1172608 blocks [3/2] [UU_]
[=====>...............] recovery = 28.0% (328768/1172608) finish=0.7min speed=18264K/sec

unused devices: &ls;none>

Detailnější výpis informací o diskovém poli můžeme získat pomocí nástroje mdadm:

debian:~# mdadm -D /dev/md2
/dev/md2:
Version : 01.02
Creation Time : Mon Nov 9 13:53:36 2009
Raid Level : raid1
Array Size : 975763866 (930.56 GiB 999.18 GB)
Used Dev Size : 1951527732 (1861.12 GiB 1998.36 GB)
Raid Devices : 2
Total Devices : 2
Preferred Minor : 2
Persistence : Superblock is persistent

Intent Bitmap : Internal

Update Time : Sat Jan 9 16:07:04 2010
State : active
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0

Name : 'debian':2
UUID : 2e2fd27c:aa6c8143:b3829f5b:2e325dd8
Events : 12

Number Major Minor RaidDevice State
0 8 18 0 active sync /dev/sdb2
1 8 2 1 active sync /dev/sda2

Pomocí nástroje mdadm můžeme zkoumat i jednotlivá zařízení v poli:

debian:~# mdadm -E /dev/sda2
/dev/sda2:
Magic : a92b4efc
Version : 1.2
Feature Map : 0x1
Array UUID : 2e2fd27c:aa6c8143:b3829f5b:2e325dd8
Name : 'debian':2
Creation Time : Mon Nov 9 13:53:36 2009
Raid Level : raid1
Raid Devices : 2

Avail Dev Size : 1951527733 (930.56 GiB 999.18 GB)
Array Size : 1951527732 (930.56 GiB 999.18 GB)
Used Dev Size : 1951527732 (930.56 GiB 999.18 GB)
Data Offset : 272 sectors
Super Offset : 8 sectors
State : clean
Device UUID : 998eca59:96570811:c1661b8e:93707a76

Internal Bitmap : 8 sectors from superblock
Update Time : Sat Jan 9 16:09:05 2010
Checksum : 3860e005 - correct
Events : 12


Array Slot : 1 (0, 1)
Array State : uU

Vytvoření nového pole

Veškerá správa linuxového softwarového RAIDu se provádí pomocí nástroje mdadm. Pokud byste chtěli vytvořit RAID 5 pole se třemi zařízeními (sda1, sdb1 a sdc1) a jednou náhradou (spare) v podobě zařízení sdd1, můžete použít následující příkaz:

mdadm --create /dev/md0 --level=5 --raid-devices=3 /dev/sda1 /dev/sdb1 /dev/sdc1 --spare-devices=1 /dev/sdd1

Může se stát, že při sestavování pole nebudete mít hned k dispozici všechny disky, v takovém případě můžete místo chybějícího disku použít klíčové slovo missing (chybějící):

mdadm --create /dev/md0 --level=5 --raid-devices=3 /dev/sda1 missing /dev/sdc1 --spare-devices=1 /dev/sdd1

Ačkoliv je možné sestavit pole v degradovaném režimu (s chybějícími redundantními aktivními zařízeními), tento postup se nedoporučuje. Zejména pak, pokud potřebujete na takové pole přesunout data ještě před tím, než doplníte zbývající zařízení.

Modifikace existujícího pole

Zařízení lze z pole odebírat a nová zařízení do pole vkládat. Vložení nového zařízení do pole je velmi jednoduché:

mdadm --manage /dev/md0 --add /dev/sde1

Každé pole má určitý definovaný počet aktivních zařízení (raid devices). Tento počet se nastavuje při vytvoření pole. Pokud je tento počet vyšší než momentální počet aktivních zařízení v poli (tj. nějaké aktivní zařízení v poli chybí, a pole je tudíž degradované), použije se nově přidané zařízení jako aktivní zařízení v poli, tedy jako náhrada za chybějící aktivní zařízení. V takové situaci dojde po zařazení daného zařízení do pole k zahájení jeho rekonstrukce.

Pokud je aktuální počet aktivních zařízení roven počtu aktivních zařízení v poli (žádné aktivní zařízení nechybí, pole tedy není degradované), pak se použije jako náhrada (spare). Náhradní zařízení sice v poli figurují, ale nejsou aktivní (nejsou na nich data). Teprve pokud některé z aktivních zařízení selže, pak bude náhrada automaticky zařazena do pole jako aktivní zařízení a začne jeho rekonstrukce.

Průběh rekonstrukce můžete sledovat třeba příkazem:

watch -n 1 'cat /proc/mdstat'

Odebrání zařízení z pole je trošku složitější. Záleží na tom, jestli je příslušné zařízení aktivní nebo ne. Pokud není aktivní (bylo označeno jako vadné nebo se jedná o náhradní zařízení), pak jej lze odebrat rovnou. Pokud se jedná o aktivní zařízení, je třeba jej nejdříve vyřadit z pole, což lze provést tak, že jej označíte jako vadné:

mdadm --manage /dev/md0 --set-faulty /dev/sde1

A následně je možné jej odebrat:

mdadm --manage /dev/md0 --remove /dev/sde1

Tím bych tento díl ukončil. Příště se podíváme na pokročilejší témata správy diskových polí jako řešení krizových situací, monitorování pole, atd.

Nahoru

Odkazy

(Jako ve škole)
Průměr: 1,00 | Hodnotilo: 8
 

Top články z OpenOffice.cz

Příspěvky

Správa linuxového serveru: Softwarový RAID prakticky
Vojta 14. 01. 2010, 16:55:11
Odpovědět  Odkaz 
Proč jsou ty díly tak krátké a vychází s tak dlouhou periodou? Sotva to začne, už to skončí... :-) A úvodníku ve slově "stáajícího" chybí "v".
Re:Správa linuxového serveru: Softwarový RAID prakticky
Michal Dočekal 15. 01. 2010, 11:34:08
Odpovědět  Odkaz 
Tenhle díl jsem asi "zlomil" méně šťastně, zase druhá půlka tématu bude o něco (málo) delší. Perioda vydávání se teď snad také trošku vylepší.
Správa linuxového serveru: Softwarový RAID prakticky
čenda 29. 11. 2010, 14:15:36
Odpovědět  Odkaz 
Ahoj,
proč jednou píšete F a podruhý do závorky f? Má to nějaký význam nebo je to jen chyba? ...písmeno F (f jako faulty)...

Tohle je to samé, jen je to delší.
...Zde je patrný problém se zařízením hdd1, které bylo označeno jako poruchové. Proto je u něj písmeno F (f jako faulty). Pole je aktivní, ale pouze se dvěma ze tří zařízení (viz [3/2]). Povšimněte si ve výpisu posloupnost...

čenda

Přidat názor

Nejsou podporovány žádné značky, komentáře jsou jen čistě textové. Více o diskuzích a pravidlech najdete v nápovědě.
Diskuzi můžete sledovat pomocí RSS kanálu rss



 
 

Michal Dočekal

GNU/Linuxový nadšenec a zastánce svobodného softwaru. Jeho pracovní náplň zahrnuje správu několika linuxových serverů. Snaží se být aktivním členem linuxové komunity, dlouhodobě vytváří dokumentaci pro začínající uživatele Linuxu.


  • Distribuce: Arch Linux
  • Grafické prostředí: Awesome
  • Hodnocení autora: ****

| blog