madadm - obslužný program pro práci se softwarem RAID-pole v systému Linux. V článku se podíváme na to, jak pracovat s obslužným programem madadm (správce více disků) k vytvoření pole, přidání disků, správa disků, přidání náhradních dílů a mnohem užitečnějších informací.
Obsah:
- Nainstalujte software RAID Management Utility - mdadm
- Vytvoření RAID ze 2 disků
- Vytvoření systému souborů na RAID, připojení
- Zobrazit stav, zkontrolovat integritu pole RAID
- Obnova RAID při selhání, výměna disku
- Přidání a odebrání disků v poli RAID v systému Linux
- Přidání hot-náhradního disku do pole RAID
- Odstranit pole
- Mdmonitor: Sledování stavu RAID a upozornění e-mailem
- Pole RAID neaktivní
Nainstalujte software RAID Management Utility - mdadm
Chcete-li nainstalovat obslužný program mdadm, spusťte instalační příkaz:
- Pro Centos / Red Hat se používá yum / dnf:
yum install mdadm
- Pro Ubuntu / Debian:
apt-get install mdadm
Ve výsledku bude na systém nainstalován obslužný program mdadm a potřebné knihovny:
Probíhající transakce Instalace: libreport-filesystem-2.1.11-43.el7.centos.x86_64 1/2 Instalace: mdadm-4.1-1.el7.x86_64 2/2 Ověření: mdadm-4.1-1.el7.x86_64 1/2 Ověření: libreport-filesystem-2.1.11-43.el7.centos.x86_64 2/2 Installed: mdadm.x86_64 0: 4.1-1.el7 Nainstalovaná závislost: libreport-filesystem.x86_64 0: 2.1.11-43.el7. centos Complete!
Vytvoření RAID ze 2 disků
Na serveru mám nainstalované dva další disky a chci downgrade softwarového zrcadla (RAID1). Disky jsou prázdné, data na ně nebyla zapsána. Chcete-li začít, musíte vynulovat všechny superbloky na discích, které přidáme do pole RAID:
# mdadm --zero-superblock --force / dev / vd b, c
Mám dva dva prázdné disky vdb a vdc.
mdadm: Nerozpoznané zařízení md - / dev / vdb mdadm: Nerozpoznané zařízení md - / dev / vdc
Tento seznam znamená, že žádný z jednotek nebyl dříve přidán do pole..
Sestavení softwaru RAID1 ze dvou disků v zařízení / dev / md0 použijte příkaz:
# mdadm --create --verbose / dev / md0 -l 1 -n 2 / dev / vd b, c
Kde "-l 1"Je typ pole, v našem případě RAID1
"-n 2„Je počet disků přidaných do pole.
Pokud potřebujete vytvořit RAID0 v pruhovém režimu pro zvýšení rychlosti čtení / zápisu dat paralelizací příkazů mezi několika fyzickými disky, použijte příkaz:# mdadm --create --verbose / dev / md0 --level = 0 --raid-devices = 2 / dev / vdb / dev / vdc
RAID 5 ze tří nebo více jednotek:
# mdadm --create --verbose / dev / md0 --level = 5 --raid-devices = 3 / dev / vdb / dev / vdc / dev / vdd
Po spuštění příkazu je třeba akce potvrdit a pole se vytvoří:
Nyní při prohlížení informací o disku vidíme naše pole:
# lsblk
JMÉNO MAJ: MIN RM SIZE RO TYP MOUNTPOINT vda 253: 0 0 20G 0 disk ├─vda1 253: 1 0 512M 0 část / boot └─vda2 253: 2 0 19,5G 0 část / 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
Vytvoření systému souborů na RAID, připojení
Vytvoření systému souborů ext4 na našem poli RAID1 dvou disků použijte příkaz:
# mkfs.ext4 / dev / md0
Vytvořte záložní adresář a připojte k němu zařízení RAID:
# mkdir / backup
# mount / dev / md0 / backup /
# df -h
Použitý souborový systém Využití% Nasazeno 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% / spouštěcí tmpfs 100M 0 100M 0% / běh / uživatel / 0 / dev / md0 20G 45M 19G 1% / záloha
Pole bylo připojeno bez chyb. Abychom zařízení nepřipojili pokaždé ručně, provedeme změny fstab:
# nano / etc / fstab
Výchozí nastavení / dev / md0 / backup ext4 1 2
Zobrazit stav, zkontrolovat integritu pole RAID
Chcete-li zkontrolovat integritu dat v poli, použijte příkaz:
#echo 'check'> / sys / block / md0 / md / sync_action
Poté musíte vidět výstup souboru:
#cat / sys / block / md0 / md / mismatch_cnt
Pokud jako výsledek dostanete 0, pak je vše v pořádku s vaším polem:
Chcete-li zastavit ověřování, použijte příkaz:
#echo 'nečinný'> / sys / block / md0 / md / sync_action
Chcete-li zkontrolovat stav všech polí RAID dostupných na serveru, použijte příkaz:
# cat / proc / mdstat
Osobnosti: [raid1] md0: aktivní raid1 vdc [1] vdb [0] 20954112 blokuje super 1,2 [2/2] [UU]
V seznamu týmů vidíme informace o našem dříve vytvořeném náletu.
Další informace o konkrétním poli nájezdu naleznete v příkazu:
# mdadm -D / dev / md0
Pojďme analyzovat hlavní body seznamu týmů:
- Verze - verze metadat;
- Čas vytvoření - datum a čas vytvoření raidového pole;
- Úroveň nájezdu - úroveň pole nájezdu;
- Velikost pole - místo na disku pro nájezdové pole;
- Used Dev Size - použitý objem pro zařízení;
- Raid Device - počet disků v raidovém poli;
- Total Devices - počet disků přidaných do raidového pole;
- Stav - aktuální stav (čistý - vše je v pořádku);
- Aktivní zařízení - počet aktivních disků v raidovém poli;
- Working Devises - počet pracovních disků v raidovém poli;
- Failed Devices - počet zařízení s poruchami v raidovém poli;
- Náhradní zařízení - počet náhradních disků v raidovém poli;
- Zásada konzistence - parametr určující typ synchronizace po selhání v raidovém poli, rsync - úplná synchronizace po obnovení pole nájezdu (k dispozici jsou bitmapa, deník, režimy ppl);
- UUID - identifikátor pole nájezdu
Stručné informace lze zobrazit pomocí obslužného programu fdisk:
# fdisk -l / dev / md0
Disk / dev / md0: 21,5 GB, 21457010688 bajtů, 41908224 sektorů Jednotky = sektory 1 * 512 = 512 bajtů Velikost sektoru (logická / fyzická): 512 bajtů / 512 bajtů I / O velikost (minimální / optimální): 512 bajtů / 512 bytů
Obnova RAID při selhání, výměna disku
Pokud došlo k selhání nebo poškození jedné z jednotek v poli RAID, můžete ji nahradit jinou. Nejprve určme, zda je disk poškozen a který disk bychom měli změnit..
# cat / proc / mdstat
Osobnosti: [raid1] md0: aktivní raid1 vdb [0] 20954112 blokuje super 1,2 [2/1] [U_]
Z příkazu výpis uvidíte, že je aktivní pouze jedna jednotka. Také mluví o problému [U_]. Když fungují oba disky, výstup bude [UU].
Podrobné informace o poli RAID také ukazují, že existují problémy:
# mdadm -D / dev / md0
/ dev / md0: Verze: 1.2 Čas vytvoření: Út 29. října 12:39:22 PM Úroveň nájezdu: raid1 Velikost pole: 20954112 (19,98 GiB 21,46 GB) Použitá velikost Dev: 20954112 (19,98 GiB 21,46 GB) Raid Devices: 2 Celkem Zařízení: 2 Perzistence: Superblock je trvalý Čas aktualizace: Út 29. října 14:41:13 2019 Stav: čistý, degradovaný Aktivní zařízení: 1 Pracovní zařízení: 1 Neúspěšná zařízení: 1
Stav: čistý, degradovaný
- tento řádek označuje, že disk v poli nájezdu je poškozen.
V našem případě je třeba vyměnit poškozený disk / dev / vdc. Chcete-li obnovit pole, musíte odebrat nečinný disk a přidat nový.
Odebrání nezdravého disku:
# mdadm / dev / md0 - odstranit / dev / vdc
Přidejte nový disk do pole:
# mdadm / dev / md0 - add / dev / vdd
Obnovení disku se spustí automaticky po přidání nového disku:
# mdadm -D / dev / md0
/ dev / md0: Verze: 1.2 Čas vytvoření: Út 29. října 12:39:22 PM Úroveň nájezdu: raid1 Velikost pole: 20954112 (19,98 GiB 21,46 GB) Použitá velikost Dev: 20954112 (19,98 GiB 21,46 GB) Raid Devices: 2 Celkem Zařízení: 2 Perzistence: Superblock je trvalý Čas aktualizace: Út 29. října 14:50:20 2019 Stav: čistý, degradovaný, obnovující Aktivní zařízení: 1 Pracovní zařízení: 2 Selhala zařízení: 0 Náhradní zařízení: 1 Zásada konzistence: resync Stav obnovy: 69% kompletní Název: server.vpn.rucript (místní k hostiteli server.vpn.ru) UUID: 9d59b1fb: 7b0a7b6d: 15a75459: 8b1637a2 Události: 42 Počet Major Minor RaidDevice State 0 253 16 0 aktivní synchronizace / dev / vdb 2 253 48 1 náhradní přestavba / dev / vdd
přestavět Stav: 69% dokončeno
- ukazuje aktuální stav obnovy pole.
náhradní přestavba / dev / vdd
- ukazuje, který disk je přidán do pole.
Po obnovení pole vypadá seznam disků takto:
Stav: čistý Aktivní zařízení: 2 Pracovní zařízení: 2 Selhala zařízení: 0 Náhradní zařízení: 0
Přidání a odebrání disků v poli RAID v systému Linux
Chcete-li analyzovat dříve vytvořené pole, musíte jej odpojit:
# umount / backup
A spusťte příkaz:
# mdadm -S / dev / md0
mdadm: zastaveno / dev / md0
Po analýze pole by nemělo být definováno jako zařízení:
# mdadm -S / dev / md0
mdadm: chyba při otevírání / dev / md0: Žádný takový soubor nebo adresář neexistuje
Chcete-li sestavit pole, které jsme dříve analyzovali ručně, spusťte příkaz:
# mdadm --assemble -scan
Tento příkaz prohledá disky z rozloženého nebo sbaleného pole RAID a pokusí se z nich shromáždit RAID pomocí metadat.
Pokud potřebujete vyjmout pracovní disk z pole a nahradit jej jiným, musíte nejprve označit pracovní disk jako nefunkční:
# mdadm / dev / md0 - fail / dev / vdc
Potom lze disk smazat příkazem ::
# mdadm / dev / md0 - odstranit / dev / vdc
Přidá se nový disk, stejně jako u nepracovního disku:
# mdadm / dev / md0 - add / dev / vdd
Přidání hot-náhradního disku do pole RAID
Můžete přidat do pole hot náhradní hot-swapable drive, pokud některý z aktivních disků selže. Přidejte disk zdarma do požadovaného pole:
# mdadm / dev / md0 - add / dev / vdc
Po kontrole stavu raidového pole uvidíme tento disk jako náhradní:
Zkontrolovat, zda "hot swap “ disk, označte některý z disků jako nefunkční a zkontrolujte stav raidového pole:
# mdadm / dev / md0 - fail / dev / vdb
Poté, při kontrole stavu pole, bude patrné, že byla zahájena přestavba pole:
Řídit / dev / vdb označen jako nefunkční a náhradní disk se stal jedním z aktivních disků RAID a začal proces obnovy.
Chcete-li přidat další pracovní disk do RAID, musíte provést dva kroky.
Přidejte do pole prázdný disk:
# mdadm / dev / md0 - add / dev / vdb
Nyní se tato jednotka zobrazí jako hot náhradní, aby to fungovalo, rozbalte pole nájezdů:
# mdadm -G / dev / md0 -raid-devices = 3
Poté bude zahájen proces obnovy pole:
Po přestavbě byly všechny disky aktivní:
Počet Major Minor RaidDevice State 3 253 32 0 aktivní synchronizace / dev / vdc 2 253 48 1 aktivní synchronizace / dev / vdd 4 253 16 2 aktivní synchronizace / dev / vdb
Odstranit pole
Pokud chcete trvale smazat raidové pole, použijte následující schéma:
# umount / backup
- odpojit pole z adresáře
# mdadm -S / dev / md0
- zastavte RAID zařízení
Poté odstraníme všechny superbloky na discích, ze kterých bylo sestaveno:
# mdadm - nula-superblock / dev / vdb
# mdadm - nula-superblock / dev / vdc
Mdmonitor: Sledování stavu RAID a upozornění e-mailem
Službu můžete použít ke sledování stavu pole RAID. mdmonitor. Nejprve musíte vytvořit soubor /etc/mdadm.conf s konfigurací aktuálního pole:
# mdadm -detail -scan> /etc/mdadm.conf
Na konec souboru /etc/mdadm.conf přidejte e-mailovou adresu administrátora, kterému musíte zasílat upozornění na problémy RAID:
MAILADDR [email protected]
Zastavilo se restartování služby mdmonitor pomocí systemctl:
# systemctl restart mdmonitor
Poté vás systém e-mailem upozorní na chyby v mdadm a vadných jednotkách.
Pole RAID neaktivní
V případě selhání zařízení nebo nouzového vypnutí se může pole přepnout do stavu neaktivní. Všechny jednotky jsou označeny jako neaktivní, ale na jednotkách nejsou žádné chyby.
# cat / proc / mdstat
Osobnosti: [lineární] [multipath] [raid0] [raid1] [raid6] [raid4] [raid10] md0: neaktivní vdc [1] vdb [0] 20954112 blokuje super nepoužívaná zařízení:
V tomto případě musíte pole zastavit příkazem:
# mdadm --stop / dev / md0
A znovu ho postavit:
# mdadm --assemble --scan -force
Pokud je pole registrováno v / etc / fstab, musíte jej znovu připojit příkazem:
# mount -a
Nástroj madadm zjednodušuje práci s poli RAID v systému Linux. V tomto článku jsem popsal hlavní body práce s tímto nástrojem a také se dotkl nejčastějších otázek, které vyvstávají při práci s ním nájezd-pole pomocí utility madadm.