Linuxový softvér RAID využívajúci mdadm

mdadm - obslužný program pre prácu so softvérom RAID-polia v systéme Linux. V článku sa zameriame na to, ako pracovať s obslužným programom mdadm (správca viacerých diskov) na vytvorenie poľa, pridávanie diskov, správu diskov, pridávanie náhradných dielcov a oveľa užitočnejších informácií.

obsah:

  • Nainštalujte softvérový softvér RAID Management Utility - mdadm
  • Vytvorenie RAID z 2 diskov
  • Vytvorenie systému súborov na RAID, pripojenie
  • Zobraziť stav, skontrolovať integritu poľa RAID
  • Obnovenie RAID po zlyhaní, výmena disku
  • Pridávanie a odstraňovanie diskov v poli RAID v systéme Linux
  • Pridanie hot-náhradného disku do poľa RAID
  • Odstrániť pole
  • Mdmonitor: Monitorovanie stavu RAID a e-mailové upozornenia
  • Pole RAID neaktívne

Nainštalujte softvérový softvér RAID Management Utility - mdadm

Ak chcete nainštalovať pomocný program mdadm, spustite inštalačný príkaz:

  • Pre Centos / Red Hat sa používa yum / dnf: yum install mdadm
  • Pre Ubuntu / Debian: apt-get install mdadm

Výsledkom bude inštalácia pomôcky mdadm a potrebných knižníc do systému:

Spustená transakcia Inštalácia: libreport-filesystem-2.1.11-43.el7.centos.x86_64 1/2 Inštalácia: mdadm-4.1-1.el7.x86_64 2/2 Overovanie: mdadm-4.1-1.el7.x86_64 1/2 Overovanie: libreport-filesystem-2.1.11-43.el7.centos.x86_64 2/2 Nainštalované: mdadm.x86_64 0: 4.1-1.el7 Nainštalované závislosti: libreport-filesystem.x86_64 0: 2.1.11-43.el7. centos dokončené!

Vytvorenie RAID z 2 diskov

Na serveri mám nainštalované ďalšie dva disky a chcem downgradovať softvérové ​​zrkadlo (RAID1). Disky sú prázdne, údaje na ne neboli zapísané. Ak chcete začať, musíte vynulovať všetky superbloky na diskoch, ktoré pridáme do poľa RAID:

# mdadm --zero-superblock --force / dev / vd b, c

Mám dva prázdne disky vdb a VDC.

mdadm: Nerozpoznané komponentné zariadenie md - / dev / vdb mdadm: Nerozpoznané komponentné zariadenie md - / dev / vdc

Tento zoznam znamená, že žiadna z jednotiek nebola predtým pridaná do poľa..

Zostaviť softvér RAID1 z dvoch diskov v zariadení / dev / md0, použite príkaz:

# mdadm --create - verbose / dev / md0 -l 1 -n 2 / dev / vd b, c

Kde "-l 1„Je to typ poľa, v našom prípade RAID1

"-n 2„Je počet diskov, ktoré sa pridajú do poľa.

Ak potrebujete vytvoriť RAID0 v pruhovom režime na zvýšenie rýchlosti čítania / zápisu údajov paralelizáciou príkazov medzi niekoľkými fyzickými diskami, použite príkaz:

# mdadm --create - verbose / dev / md0 --level = 0 --raid-devices = 2 / dev / vdb / dev / vdc

RAID 5 z troch alebo viacerých jednotiek:

# mdadm --create - verbose / dev / md0 --level = 5 --raid-devices = 3 / dev / vdb / dev / vdc / dev / vdd

Po spustení príkazu musíte potvrdiť akcie a pole sa vytvorí:

Teraz pri prezeraní informácií o disku vidíme naše pole:

# lsblk

NAME MAJ: MIN RM SIZE RO TYP MOUNTPOINT vda 253: 0 0 20G 0 disk ├─vda1 253: 1 0 512M 0 diel / boot davda2 253: 2 0 19,5G 0 diel / vdb 253: 16 0 20G 0 disk └ ─md0 9: 0 0 20G 0 raid1 vdc 253: 32 0 20G 0 disk └─md0 9: 0 0 20G 0 raid1

Vytvorenie systému súborov na RAID, pripojenie

Vytvorenie systému súborov ext4 na našom poli RAID1 dvoch diskov použite príkaz:

# mkfs.ext4 / dev / md0

Vytvorte záložný adresár a pripojte k nemu zariadenie RAID:

# mkdir / backup
# mount / dev / md0 / backup /

# df -h

Použitá veľkosť súborového systému Využitie% Namontované na devtmpfs 485M 0 485M 0% / dev tmpfs 496M 0 496M 0% / dev / shm tmpfs 496M 44M 452M 9% / run tmpfs 496M 0 496M 0% / sys / fs / cgroup / dev / vda2 20G 1,4G 19G 7% / / dev / vda1 488M 100M 353M 23% / boot tmpfs 100M 0 100M 0% / beh / užívateľ / 0 / dev / md0 20G 45M 19G 1% / záloha 

Pole bolo namontované bez chýb. Aby sme zariadenie nepripojili zakaždým ručne, vykonáme zmeny fstab:

# nano / etc / fstab

Predvolené hodnoty / dev / md0 / backup ext4 1 2

Zobraziť stav, skontrolovať integritu poľa RAID

Na kontrolu integrity údajov v poli použite príkaz:

#echo 'check'> / sys / block / md0 / md / sync_action

Potom musíte vidieť výstup súboru:

#cat / sys / block / md0 / md / mismatch_cnt

Ak ako výsledok dostanete 0, potom je všetko v poriadku s vaším radom:

Ak chcete zastaviť overovanie, použite príkaz:

#echo 'nečinný'> / sys / block / md0 / md / sync_action

Na kontrolu stavu všetkých polí RAID dostupných na serveri použite príkaz:

# cat / proc / mdstat

Osobnosti: [raid1] md0: aktívny raid1 vdc [1] vdb [0] 20954112 blokuje super 1,2 [2/2] [UU]

V zozname tímov vidíme informácie o našom predchádzajúcom útoku.

Viac informácií o konkrétnom poli nájazdu nájdete v príkaze:

# mdadm -D / dev / md0

Poďme analyzovať hlavné body zoznamu tímov:

  • Verzia - verzia metadát;
  • Čas vytvorenia - dátum a čas vytvorenia poľa nájazdu;
  • Úroveň nájazdu - úroveň poľa nájazdu;
  • Array Size - diskový priestor pre nájazdové pole;
  • Used Dev Size - použitý objem pre zariadenia;
  • Raid Device - počet diskov v raidovom poli;
  • Total Devices - počet diskov pridaných do raidového poľa;
  • Stav - súčasný stav (čistý - všetko je v poriadku);
  • Aktívne zariadenia - počet aktívnych diskov v poli RAID;
  • Working Devises - počet pracovných diskov v raidovom poli;
  • Zlyhané zariadenia - počet zariadení s poruchami v poli útokov;
  • Náhradné zariadenia - počet náhradných diskov v poli nájazdu;
  • Zásada konzistencie - parameter určujúci typ synchronizácie po zlyhaní v poli nájazdu, rsync - úplná synchronizácia po obnove raidového poľa (bitmapa, žurnál, ppl módy sú dostupné);
  • UUID - identifikátor poľa nájazdu

Stručné informácie je možné zobraziť pomocou obslužného programu fdisk:

# fdisk -l / dev / md0

Disk / dev / md0: 21,5 GB, 21457010688 bajtov, 41908224 sektorov Jednotky = sektory 1 * 512 = 512 bajtov Veľkosť sektora (logická / fyzická): 512 bajtov / 512 bajtov I / O veľkosť (minimálna / optimálna): 512 bajtov / 512 bajtov

Obnovenie RAID po zlyhaní, výmena disku

Ak ste zlyhali alebo poškodili jednu z jednotiek v poli RAID, môžete ju vymeniť za inú. Najprv určme, či je disk poškodený a ktorý disk by sme mali zmeniť..

# cat / proc / mdstat

Osobnosti: [raid1] md0: aktívny raid1 vdb [0] 20954112 blokuje super 1,2 [2/1] [U_] 

Z príkazu na výpis vidíte, že je aktívna iba jedna jednotka. Tiež hovorí o probléme [u_]. Keď pracujú oba disky, výstup bude [UU].

Podrobné informácie o poli RAID tiež ukazujú, že existujú problémy:

# mdadm -D / dev / md0

/ dev / md0: Verzia: 1.2 Čas vytvorenia: Ut 29. okt 12:39:22 PM Úroveň nájazdu: raid1 Veľkosť poľa: 20954112 (19,98 GiB 21,46 GB) Použitá veľkosť Dev: 20954112 (19,98 GiB 21,46 GB) Raid Devices: 2 Spolu Zariadenia: 2 Perzistencia: Superblock je perzistentný Čas aktualizácie: Ut 29. októbra 14:41:13 2019 Stav: čistý, degradovaný Aktívne zariadenia: 1 Pracovné zariadenia: 1 Zlyhané zariadenia: 1 

Stav: čistý, degradovaný - tento riadok naznačuje, že disk v poli nájazdu je poškodený.

V našom prípade musíme vymenený disk vymeniť / dev / vdc. Ak chcete pole obnoviť, musíte odstrániť nečinný disk a pridať nový.

Odstránenie nezdravého disku:

# mdadm / dev / md0 --odstrániť / dev / vdc

Pridajte nový disk do poľa:

# mdadm / dev / md0 - add / dev / vdd

Obnovenie disku sa spustí automaticky po pridaní nového disku:

# mdadm -D / dev / md0

/ dev / md0: Verzia: 1.2 Čas vytvorenia: Ut 29. okt 12:39:22 PM Úroveň nájazdu: raid1 Veľkosť poľa: 20954112 (19,98 GiB 21,46 GB) Použitá veľkosť Dev: 20954112 (19,98 GiB 21,46 GB) Raid Devices: 2 Spolu Zariadenia: 2 Pretrvávanie: Superblock je trvalý Čas aktualizácie: Ut 29. októbra 14:50:20 2019 Stav: čistý, degradovaný, obnovujúci Aktívne zariadenia: 1 pracovné zariadenia: 2 zlyhané zariadenia: 0 náhradné zariadenia: 1 zásada konzistencie: resync Stav opätovného zostavenia: 69% kompletný Názov: server.vpn.rucript (lokálny k hostiteľovi server.vpn.ru) UUID: 9d59b1fb: 7b0a7b6d: 15a75459: 8b1637a2 Udalosti: 42 Počet Major Minor RaidDevice State 0 253 16 0 aktívna synchronizácia / dev / vdb 2 253 48 1 náhradná prestavba / dev / vdd 

prestavať Stav: 69% dokončené - zobrazuje aktuálny stav obnovy poľa.

náhradné prestavby / dev / vdd - ukazuje, ktorý disk je pridaný do poľa.

Po obnovení poľa bude zoznam diskov vyzerať takto:

Stav: čistý Aktívne zariadenia: 2 Pracovné zariadenia: 2 Zlyhané zariadenia: 0 Náhradné zariadenia: 0 

Pridávanie a odstraňovanie diskov v poli RAID v systéme Linux

Ak chcete analyzovať predtým vytvorené pole, musíte ho odpojiť:

# umount / backup

A vykonajte príkaz:

# mdadm -S / dev / md0

mdadm: zastavený / dev / md0

Po analýze poľa by sa toto pole nemalo definovať ako zariadenie:

# mdadm -S / dev / md0

mdadm: chyba pri otváraní / dev / md0: Žiadny taký súbor alebo adresár neexistuje

Ak chcete zostaviť pole, ktoré sme predtým manuálne analyzovali, spustite príkaz:

# mdadm --assemble -scan

Tento príkaz prehľadá disky z rozloženého alebo zbaleného poľa RAID a pokúsi sa z nich zhromaždiť RAID pomocou metadát..

Ak potrebujete odstrániť pracovný disk z poľa a nahradiť ho iným, musíte najprv označiť pracovný disk ako nefungujúci:

# mdadm / dev / md0 - fail / dev / vdc

Potom môžete disk vymazať príkazom ::

# mdadm / dev / md0 --odstrániť / dev / vdc

Pridá sa nový disk, ako je to v prípade nefunkčného disku:

# mdadm / dev / md0 - add / dev / vdd

Pridanie hot-náhradného disku do poľa RAID

Môžete pridať do poľa horúca náhrada jednotka vymeniteľná za chodu, ak zlyhá niektorá z aktívnych jednotiek. Pridajte zadarmo disk do požadovaného poľa:

# mdadm / dev / md0 - add / dev / vdc

Po skontrolovaní stavu raidového poľa uvidíme tento disk ako rezervný:

Skontrolujte, či “hot swap “ disk, označte niektorý z diskov ako nefunkčný a skontrolujte stav raidového poľa:

# mdadm / dev / md0 - fail / dev / vdb

Potom pri kontrole stavu poľa sa zistí, že sa začala prestavba poľa:

disk / dev / vdb označený ako nefungujúci a náhradný disk sa stal jedným z aktívnych diskov RAID a začal proces obnovy.

Ak chcete pridať ďalší pracovný disk do poľa RAID, musíte vykonať dva kroky.

Pridajte do poľa prázdny disk:

# mdadm / dev / md0 - add / dev / vdb

Táto jednotka sa teraz zobrazí ako horúca náhrada, aby to fungovalo, rozbaľte raidové pole:

# mdadm -G / dev / md0 -raid-devices = 3

Potom sa začne proces obnovy poľa:

Po prestavbe boli všetky disky aktívne:

Počet Major Minor RaidDevice State 3 253 32 0 aktívna synchronizácia / dev / vdc 2 253 48 1 aktívna synchronizácia / dev / vdd 4 253 16 2 aktívna synchronizácia / dev / vdb 

Odstrániť pole

Ak chcete natrvalo odstrániť pole nájazdu, použite nasledujúcu schému:

# umount / backup - odpojte pole z adresára

# mdadm -S / dev / md0 - zastavte zariadenie RAID

Potom odstránime všetky superbloky na diskoch, z ktorých bol zostavený:

# mdadm --zero-superblock / dev / vdb
# mdadm --zero-superblock / dev / vdc

Mdmonitor: Monitorovanie stavu RAID a e-mailové upozornenia

Službu môžete použiť na monitorovanie stavu poľa RAID. mdmonitor. Najprv musíte vytvoriť súbor /etc/mdadm.conf s konfiguráciou aktuálneho poľa:

# mdadm -detail -scan> /etc/mdadm.conf

Konfiguračný súbor mdadm.conf sa nevytvorí automaticky. Musí sa vytvoriť a aktualizovať ručne..

Na koniec súboru /etc/mdadm.conf pridajte e-mailovú adresu administrátora, ktorému musíte posielať upozornenia o problémoch RAID:

MAILADDR [email protected]

Zastavilo sa reštartovanie služby mdmonitor pomocou systemctl:

# systemctl reštart mdmonitor

Potom vás systém e-mailom upozorní na chyby v mdadm a chybných diskoch.

Pole RAID neaktívne

V prípade poruchy zariadenia alebo núdzového vypnutia sa pole môže prepnúť do stavu neaktívne. Všetky jednotky sú označené ako neaktívne, ale na jednotkách nie sú žiadne chyby.

# cat / proc / mdstat

Osobnosti: [lineárny] [multipath] [raid0] [raid1] [raid6] [raid4] [raid10] md0: neaktívny vdc [1] vdb [0] 20954112 blokuje super nepoužívané zariadenia:  

V takom prípade musíte pole zastaviť príkazom:

# mdadm --stop / dev / md0

A znova ho postaviť:

# mdadm --assemble --scan -force

Ak je pole registrované v / etc / fstab, musíte ho znova pripojiť príkazom:

# mount -a

Existujú spôsoby, ako vytvoriť softvérové ​​pole RAID na už nainštalovanom OS. V takom prípade budete musieť manuálne skopírovať tabuľky všetkých oddielov na nový disk a manuálne presunúť obsah systémového disku do RAID z jedného disku, vyčistiť prvý disk a pridať ho k RAID, potom opraviť initramfs a spustiť GRUB. Preto je stále lepšie, keď vyberiete režim, pri nasadení servera nainštalujte CentOS na softvérové ​​pole RAID.

užitočnosť mdadm zjednodušuje prácu so súbormi RAID v systéme Linux. V tomto článku som opísal hlavné body práce s týmto programom a tiež som sa dotkol najčastejších otázok, ktoré sa vyskytnú pri práci s týmto programom nájazd-polia prostredníctvom pomôcky mdadm.