mdadm - pripomoček za delo s programsko opremo RAID-matrike v Linuxu. V članku bomo pogledali, kako delati s pripomočkom mdadm (več diskov admin) za ustvarjanje matrike, dodajanje diskov, upravljanje diskov, dodajanje vročih rezervnih in še veliko več koristnih informacij.
Vsebina:
- Namestite pripomoček za upravljanje programske opreme RAID - mdadm
- Ustvarjanje RAID z 2 diska
- Ustvarjanje datotečnega sistema na RAID, montaža
- Oglejte si stanje, preverite integriteto matrike RAID
- Obnovitev RAID ob okvari, zamenjava diska
- Dodajanje in odstranjevanje diskov v nizu RAID v Linuxu
- Dodajanje vroče rezervnega diska v RAID matriko
- Izbriši matriko
- Mdmonitor: Spremljanje stanja RAID in opozoril e-pošte
- Polje RAID je neaktivno
Namestite pripomoček za upravljanje programske opreme RAID - mdadm
Če želite namestiti pripomoček mdadm, zaženite ukazni namestitveni ukaz:
- Za Centos / Red Hat se uporablja yum / dnf:
yum namestite mdadm
- Za Ubuntu / Debian:
apt-get namestite mdadm
Kot rezultat, bo v sistem nameščen pripomoček mdadm in potrebne knjižnice:
Začetek transakcije Namestitev: libreport-datotečni sistem-2.1.11-43.el7.centos.x86_64 1/2 Namestitev: mdadm-4.1-1.el7.x86_64 2/2 Preverjanje: mdadm-4.1-1.el7.x86_64 1/2 Preverjanje: libreport-datotečni sistem-2.1.11-43.el7.centos.x86_64 2/2 Nameščeno: mdadm.x86_64 0: 4.1-1.el7 Namestitev odvisnosti: libreport-filesystem.x86_64 0: 2.1.11-43.el7. centos Popolni!
Ustvarjanje RAID z 2 diska
Na strežniku imam nameščena dva dodatna diska in želim znižati programsko ogledalo (RAID1). Diski so prazni, podatki niso bili zapisani vanje. Za začetek morate izničiti vse superbloke na diskih, ki jih bomo dodali v matriko RAID:
# mdadm --zero-superblock --force / dev / vd b, c
Jaz imam dva prazna diska vdb in vdc.
mdadm: Neprepoznana md komponentna naprava - / dev / vdb mdadm: Neprepoznana komponenta md - naprava / / dev / vdc
Ta seznam pomeni, da v matriko prej ni bil dodan noben pogon..
Za sestavljanje programske opreme RAID1 iz dveh diskov v napravi / dev / md0 uporabite ukaz:
# mdadm - ustvari --verbose / dev / md0 -l 1 -n 2 / dev / vd b, c
Kje "-l 1"Je vrsta matrike, v našem primeru RAID1
A "-n 2"Ali je število diskov, ki so dodani v matriko.
Če želite ustvariti RAID0 v črtanem načinu, da povečate hitrost branja / pisanja podatkov s paralelizacijo ukazov med več fizičnimi diski, uporabite ukaz:# mdadm - ustvari --verbose / dev / md0 --level = 0 --raid-devices = 2 / dev / vdb / dev / vdc
RAID 5 treh ali več pogonov:
# mdadm - ustvari --verbose / dev / md0 --level = 5 --raid-devices = 3 / dev / vdb / dev / vdc / dev / vdd
Po zagonu ukaza morate potrditi dejanja in matrika bo ustvarjena:
Zdaj, ko gledamo podatke o disku, vidimo naš niz:
# lsblk
IME MAJ: MIN RM VELIČINA RO TIP MOUNTPOINT vda 253: 0 0 20G 0 disk ├─vda1 253: 1 0 512M 0 del / škorenj └─vda2 253: 2 0 19,5G 0 del / 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
Ustvarjanje datotečnega sistema na RAID, montaža
Za ustvarjanje datotečnega sistema ext4 v naši matriki RAID1 dveh diskov uporabite ukaz:
# mkfs.ext4 / dev / md0
Ustvarite mapo z varnostnimi kopijami in nanjo namestite napravo RAID:
# mkdir / varnostna kopija
# mount / dev / md0 / varnostna kopija /
# df -h
Uporabljena velikost datotečnega sistema% Na voljo v 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% / škorenj tmpfs 100M 0 100M 0% / run / uporabnik / 0 / dev / md0 20G 45M 19G 1% / varnostno kopiranje
Niz je bil nameščen brez napak. Da ne bi vsakič ročno montirali naprave, bomo naredili spremembe fstab:
# nano / etc / fstab
/ dev / md0 / backup ext4 privzete vrednosti 1 2
Oglejte si stanje, preverite integriteto matrike RAID
Če želite preveriti celovitost podatkov v matriki, uporabite ukaz:
#echo 'check'> / sys / block / md0 / md / sync washing
Po tem morate pogledati izhod datoteke:
#cat / sys / block / md0 / md / mismatch_cnt
Če kot rezultat dobite 0, potem je z vašim poljem vse v redu:
Če želite ustaviti preverjanje veljavnosti, uporabite ukaz:
#echo 'mirovanje'> / sys / block / md0 / md / sync washing
Če želite preveriti stanje vseh RAID nizov, ki so na voljo na strežniku, uporabite ukaz:
# mačka / proc / mdstat
Osebnosti: [raid1] md0: aktivni raid1 vdc [1] vdb [0] 20954112 blokira super 1,2 [2/2] [UU]
V seznamu skupin vidimo podatke o našem predhodno ustvarjenem napadu.
Če želite več informacij o določenem nizu raid, glejte ukaz:
# mdadm -D / dev / md0
Analizirajmo glavne točke seznama skupin:
- Različica - različica metapodatkov;
- Čas ustvarjanja - datum in čas ustvarjanja polja raid;
- Raid Level - raven matrike raida;
- Array Size - prostor na disku za raid matriko;
- Rabljena velikost Dev - uporabljena glasnost za naprave;
- Raid Device - število diskov v raid nizu;
- Skupne naprave - število diskov, dodanih v raid polje;
- Stanje - trenutno stanje (čisto - vse je v redu);
- Aktivne naprave - število aktivnih diskov v raid nizu;
- Working Devises - število delovnih diskov v raid matriki;
- Neuspele naprave - število naprav z okvarami v nizu raidov;
- Rezervne naprave - število rezervnih diskov v raidnem polju;
- Politika skladnosti - parameter, ki določa vrsto sinhronizacije po okvari v nizu raid, rsync - popolna sinhronizacija po obnovitvi raid matrike (na voljo so bitna slika, dnevniki, ppl načini);
- UUID - identifikator matrike raid
Kratke informacije si lahko ogledate s pripomočkom fdisk:
# fdisk -l / dev / md0
Disk / dev / md0: 21,5 GB, 21457010688 bajtov, 41908224 sektorji Enote = sektorji 1 * 512 = 512 bajtov Velikost sektorja (logično / fizično): 512 bajtov / 512 bajtov V / I velikost (minimalno / optimalno): 512 bajtov / 512 bajtov
Obnovitev RAID ob okvari, zamenjava diska
Če niste uspeli ali poškodovali enega od pogonov v matriki RAID, ga lahko zamenjate z drugim. Najprej ugotovimo, ali je disk poškodovan in kateri disk naj spremenimo..
# mačka / proc / mdstat
Osebnosti: [raid1] md0: aktivni raid1 vdb [0] 20954112 blokira super 1.2 [2/1] [U_]
Iz ukaza za seznam vidite, da je aktiven samo en pogon. Govori tudi o težavi [U_]. Ko oba pogona delujeta, bo izhod [UU].
Podrobne informacije o RAID kažejo tudi, da obstajajo težave:
# mdadm -D / dev / md0
/ dev / md0: Različica: 1.2 Čas ustvarjanja: nedelja, 29. oktober 12.39.22 Raven raida: raid1 Velikost matrike: 20954112 (19,98 GiB 21,46 GB) Uporabljena velikost Dev: 20954112 (19,98 GiB 21,46 GB) Raid Devices: 2 Skupaj Naprave: 2 Obstojnost: Superblock je obstojen Čas posodobitve: nedelja, 29. oktober 14:41:13 2019 Stanje: čiste, degradirane Aktivne naprave: 1 Delovne naprave: 1 Napačne naprave: 1
Stanje: čisto, razkrojeno
- ta vrstica označuje, da je disk v raid matriki poškodovan.
V našem primeru moramo zamenjati neuspeli disk / dev / vdc. Če želite obnoviti matriko, morate odstraniti nedejavni disk in dodati novega.
Odstranjevanje neozvočenega diska:
# mdadm / dev / md0 --remove / dev / vdc
V matriko dodajte nov disk:
# mdadm / dev / md0 --add / dev / vdd
Obnovitev diska se bo samodejno začela po dodajanju novega diska:
# mdadm -D / dev / md0
/ dev / md0: Različica: 1.2 Čas ustvarjanja: nedelja, 29. oktober 12.39.22 Raven raida: raid1 Velikost matrike: 20954112 (19,98 GiB 21,46 GB) Uporabljena velikost Dev: 20954112 (19,98 GiB 21,46 GB) Raid Devices: 2 Skupaj Naprave: 2 obstojnost: Superblock je obstojen Čas posodobitve: nedelja, 29. oktober 14:50:20 2019 Stanje: čisto, razkrojeno, obnovljeno Aktivne naprave: 1 Delovne naprave: 2 Neuspele naprave: 0 Rezervne naprave: 1 Politika skladnosti: Ponovno sinhronizirajte Obnovi Stanje: 69% popolno Ime: server.vpn.rucript (lokalno do strežnika gostitelja.vpn.ru) UUID: 9d59b1fb: 7b0a7b6d: 15a75459: 8b1637a2 Dogodki: 42 Število glavnih manjših RaidDevice stanje 0 253 16 0 aktivna sinhronizacija / dev / vdb 2 253 48 1 rezervna obnova / dev / vdd
obnoviti stanje: 69% dokončano
- prikazuje trenutno stanje obnovitve matrike.
rezervna obnova / dev / vdd
- prikazuje, kateri disk je dodan matriki.
Po obnovitvi matrike je seznam diskov videti tako:
Stanje: čiste aktivne naprave: 2 delovni napravi: 2 napačne naprave: 0 rezervne naprave: 0
Dodajanje in odstranjevanje diskov v nizu RAID v Linuxu
Če želite razčleniti predhodno ustvarjen niz, ga morate izklopiti:
# umount / varnostna kopija
In izvedite ukaz:
# mdadm -S / dev / md0
mdadm: ustavljeno / dev / md0
Po razčlenjevanju matrike je ni treba opredeliti kot napravo:
# mdadm -S / dev / md0
mdadm: napaka pri odpiranju / dev / md0: te datoteke ali mape ni
Če želite sestaviti matriko, ki smo jo predhodno ročno razčlenili, zaženite ukaz:
# mdadm - sestavite -scan
Ta ukaz bo skeniral diske z razstavljenega ali strnjenega niza RAID in poskušal zbrati RAID z njih z uporabo metapodatkov.
Če morate delovni disk odstraniti iz matrike in ga zamenjati z drugim, morate najprej delovni disk označiti kot neraden:
# mdadm / dev / md0 --fail / dev / vdc
Nato je disk mogoče izbrisati z ukazom ::
# mdadm / dev / md0 --remove / dev / vdc
Doda se nov disk, kot je to primer z nedelujočim diskom:
# mdadm / dev / md0 --add / dev / vdd
Dodajanje vroče rezervnega diska v RAID matriko
Lahko dodate v matriko vroče rezervne pogon, ki ga je mogoče zamenjati z vročo, če eden od aktivnih pogonov ne uspe. Dodajte brezplačen disk na želeni niz:
# mdadm / dev / md0 --add / dev / vdc
Po preverjanju stanja raid matrike bomo ta disk videli kot rezervnega:
Če želite preveriti, ali "vroča menjava " pogon, označite katerega od pogonov kot nedelujočega in preverite stanje matrike raid:
# mdadm / dev / md0 --fail / dev / vdb
Nato bo pri preverjanju stanja matrike vidno, da se je obnova matrike začela:
Vozite / dev / vdb označeno kot neradni, vroči rezervni disk pa je postal eden izmed aktivnih diskov RAID in postopek obnovitve se je začel.
Če želite dodati dodaten delovni disk v RAID, morate izvesti dva koraka.
V matriko dodajte prazen disk:
# mdadm / dev / md0 --add / dev / vdb
Zdaj bo ta pogon prikazan kot vroče rezervne, da bi delovala, razširite polje raid:
# mdadm -G / dev / md0 -raid-devices = 3
Nato se bo začel postopek obnove matrike:
Po ponovni izdelavi so vsi diski postali aktivni:
Število Glavni manjši RaidDevice stanje 3 253 32 0 aktivna sinhronizacija / dev / vdc 2 253 48 1 aktivna sinhronizacija / dev / vdd 4 253 16 2 aktivna sinhronizacija / dev / vdb
Izbriši matriko
Če želite trajno izbrisati niz raid, uporabite naslednjo shemo:
# umount / varnostna kopija
- odklopite matriko iz imenika
# mdadm -S / dev / md0
- ustavite napravo RAID
Po tem počistimo vse superbloke na diskih, s katerih je bil sestavljen:
# mdadm --zero-superblock / dev / vdb
# mdadm --zero-superblock / dev / vdc
Mdmonitor: Spremljanje stanja RAID in opozoril e-pošte
Storitev lahko uporabite za spremljanje stanja matrike RAID. mdmonitor. Najprej morate ustvariti datoteko /etc/mdadm.conf s konfiguracijo trenutnega niza:
# mdadm -detail -scan> /etc/mdadm.conf
Na koncu datoteke /etc/mdadm.conf dodajte e-poštni naslov skrbnika, ki mu morate poslati opozorila o težavah z RAID:
MAILADDR [email protected]
Prenehala je znova zagnati storitev mdmonitor prek systemctl:
# systemctl znova zaženite mdmonitor
Po tem vas bo sistem po e-pošti obvestil o napakah v mdadm in okvarjenih pogonih.
Polje RAID je neaktivno
V primeru okvare opreme ali izrednega izklopa elektrike lahko niz preide v stanje neaktiven. Vsi pogoni so označeni kot neaktivni, vendar na pogonih ni napak.
# mačka / proc / mdstat
Osebnosti: [linearno] [več poti] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] md0: neaktivni vdc [1] vdb [0] 20954112 blokira super neuporabljene naprave:
V tem primeru morate matriko ustaviti z ukazom:
# mdadm - stop / dev / md0
In ga obnovite:
# mdadm --sestavljamo --scan -force
Če je matrika registrirana v / etc / fstab, jo morate ponovno sestaviti z ukazom:
# mount -a
Uporabnost mdadm poenostavlja delo z raid nizi v Linuxu. V tem članku sem opisal glavne točke dela s tem pripomočkom in se dotaknil tudi najpogostejših vprašanj, ki se pojavljajo pri delu racija-matrike skozi pripomoček mdadm.