Introducere

Utilitarul mdadm poate fi folosit pentru a crea și gestiona array-uri de stocare folosind capabilitățile RAID software ale Linux. Administratorii au o mare flexibilitate în coordonarea dispozitivelor de stocare individuale și în crearea de dispozitive de stocare logice care au caracteristici de performanță sau de redundanță mai mari.

În acest ghid, vom trece în revistă o serie de configurații RAID diferite care pot fi configurate folosind un Ubuntu 16.04.

Precondiții

Pentru a finaliza pașii din acest ghid, trebuie să aveți:

  • Un utilizator non-root cu privilegii sudo pe un server Ubuntu 16.04: Pașii din acest ghid vor fi finalizați cu un utilizator sudo. Pentru a afla cum să configurați un cont cu aceste privilegii, urmați ghidul nostru de configurare inițială a serverului Ubuntu 16.04.
  • O înțelegere de bază a terminologiei și conceptelor RAID: Deși acest ghid va aborda în treacăt o parte din terminologia RAID, o înțelegere mai completă este foarte utilă. Pentru a afla mai multe despre RAID și pentru a înțelege mai bine ce nivel RAID vi se potrivește, citiți articolul nostru Introducere în RAID.
  • Mai multe dispozitive de stocare brute disponibile pe serverul dumneavoastră: Vom demonstra cum să configurăm diferite tipuri de array-uri pe server. Ca atare, veți avea nevoie de câteva unități pentru a le configura. Dacă folosiți DigitalOcean, puteți folosi volumele Block Storage pentru a îndeplini acest rol. În funcție de tipul de matrice, veți avea nevoie de cel puțin între două și patru dispozitive de stocare.

Reinițializarea dispozitivelor RAID existente

De-a lungul acestui ghid, vom prezenta pașii pentru a crea o serie de niveluri RAID diferite. Dacă doriți să urmăriți cursul, probabil că veți dori să reutilizați dispozitivele de stocare după fiecare secțiune. La această secțiune se poate face referire pentru a învăța cum să resetați rapid dispozitivele de stocare componente înainte de a testa un nou nivel RAID. Săriți deocamdată peste această secțiune dacă nu ați configurat încă nicio matrice.

Atenție

Acest proces va distruge complet matricea și orice date scrise în ea. Asigurați-vă că operați pe matricea corectă și că ați copiat toate datele pe care trebuie să le păstrați înainte de a distruge matricea.

Căutați array-urile active în fișierul /proc/mdstat tastând:

  • cat /proc/mdstat
Output
Personalities : md0 : active raid0 sdc sdd 209584128 blocks super 1.2 512k chunks unused devices: <none>

Demontați array-ul din sistemul de fișiere:

  • sudo umount /dev/md0

Apoi, opriți și eliminați array-ul tastând:

  • sudo mdadm --stop /dev/md0
  • sudo mdadm --remove /dev/md0

Căutați dispozitivele care au fost folosite pentru a construi matricea cu următoarea comandă:

Nota

Rețineți că numele/dev/sd*se pot schimba de fiecare dată când reporniți! Verificați-le de fiecare dată pentru a vă asigura că operați pe dispozitivele corecte.

  • lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
Output
NAME SIZE FSTYPE TYPE MOUNTPOINTsda 100G disk sdb 100G disk sdc 100G linux_raid_member disk sdd 100G linux_raid_member disk vda 20G disk ├─vda1 20G ext4 part /└─vda15 1M part

După ce ați descoperit dispozitivele folosite pentru a crea o matrice, reduceți la zero superblocul lor pentru a le readuce la normal:

  • sudo mdadm --zero-superblock /dev/sdc
  • sudo mdadm --zero-superblock /dev/sdd

Ar trebui să eliminați orice referință persistentă la matrice. Modificați fișierul /etc/fstab și comentați sau eliminați referința la matricea dvs.:

  • sudo nano /etc/fstab
/etc/fstab
. . .# /dev/md0 /mnt/md0 ext4 defaults,nofail,discard 0 0

De asemenea, comentați sau eliminați definiția matricei din fișierul /etc/mdadm/mdadm.conf:

  • sudo nano /etc/mdadm/mdadm.conf
/etc/mdadm/mdadm.conf
. . .# ARRAY /dev/md0 metadata=1.2 name=mdadmwrite:0 UUID=7261fb9c:976d0d97:30bc63ce:85e76e91

În cele din urmă, actualizați din nou fișierul initramfs:

  • sudo update-initramfs -u

În acest moment, ar trebui să fiți gata să reutilizați dispozitivele de stocare în mod individual sau ca și componente ale unei matrice diferite.

Crearea unei matrice RAID 0

Rețeaua RAID 0 funcționează prin împărțirea datelor în bucăți și prin împărțirea lor în benzi pe discurile disponibile. Acest lucru înseamnă că fiecare disc conține o porțiune din date și că mai multe discuri vor fi referite atunci când se recuperează informații.

  • Requizite: minim 2 dispozitive de stocare
  • Beneficiu principal: Performanță
  • Elemente de reținut: Asigurați-vă că aveți copii de rezervă funcționale. O singură defecțiune a unui dispozitiv va distruge toate datele din matrice.

Identificați dispozitivele componente

Pentru a începe, găsiți identificatorii pentru discurile brute pe care le veți folosi:

  • lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
Output
NAME SIZE FSTYPE TYPE MOUNTPOINTsda 100G disksdb 100G diskvda 20G disk ├─vda1 20G ext4 part /└─vda15 1M part

După cum puteți vedea mai sus, avem două discuri fără sistem de fișiere, fiecare cu o dimensiune de 100G. În acest exemplu, aceste dispozitive au primit identificatorii /dev/sda și /dev/sdb pentru această sesiune. Acestea vor fi componentele brute pe care le vom folosi pentru a construi matricea.

Create the Array

Pentru a crea o matrice RAID 0 cu aceste componente, treceți-le în comanda mdadm --create. Va trebui să specificați numele dispozitivului pe care doriți să îl creați (/dev/md0 în cazul nostru), nivelul RAID și numărul de dispozitive:

  • sudo mdadm --create --verbose /dev/md0 --level=0 --raid-devices=2 /dev/sda /dev/sdb

Puteți să vă asigurați că RAID a fost creat cu succes verificând fișierul /proc/mdstat:

  • cat /proc/mdstat
Output
Personalities : md0 : active raid0 sdb sda 209584128 blocks super 1.2 512k chunks unused devices: <none>

După cum puteți vedea în linia evidențiată, dispozitivul /dev/md0 a fost creat în configurația RAID 0 folosind dispozitivele /dev/sda și /dev/sdb.

Crearea și montarea sistemului de fișiere

În continuare, creați un sistem de fișiere pe matrice:

  • sudo mkfs.ext4 -F /dev/md0

Crearea unui punct de montare pentru a atașa noul sistem de fișiere:

  • sudo mkdir -p /mnt/md0

Puteți monta sistemul de fișiere tastând:

  • sudo mount /dev/md0 /mnt/md0

Verificați dacă noul spațiu este disponibil tastând:

  • df -h -x devtmpfs -x tmpfs
Output
Filesystem Size Used Avail Use% Mounted on/dev/vda1 20G 1.1G 18G 6% //dev/md0 197G 60M 187G 1% /mnt/md0

Noul sistem de fișiere este montat și accesibil.

Salvați layout-ul matricei

Pentru a ne asigura că matricea este reasamblată automat la pornire, va trebui să ajustăm fișierul /etc/mdadm/mdadm.conf. Puteți să scanați automat matricea activă și să adăugați fișierul tastând:

  • sudo mdadm --detail --scan | sudo tee -a /etc/mdadm/mdadm.conf

După aceea, puteți actualiza initramfs, sau sistemul de fișiere RAM inițial, astfel încât matricea să fie disponibilă în timpul procesului de pornire timpurie:

  • sudo update-initramfs -u

Adaugați noile opțiuni de montare a sistemului de fișiere la fișierul /etc/fstab pentru montarea automată la pornire:

  • echo '/dev/md0 /mnt/md0 ext4 defaults,nofail,discard 0 0' | sudo tee -a /etc/fstab

După aceea, matricea dumneavoastră RAID 0 ar trebui acum să fie asamblată și montată automat la fiecare pornire.

Crearea unei matrice RAID 1

Tipul de matrice RAID 1 este implementat prin oglindirea datelor pe toate discurile disponibile. Fiecare disc dintr-o matrice RAID 1 primește o copie completă a datelor, asigurând redundanță în cazul defectării unui dispozitiv.

  • Cerințe: minim 2 dispozitive de stocare
  • Beneficiu principal: Redundanță
  • Elemente de reținut: Deoarece sunt menținute două copii ale datelor, doar jumătate din spațiul pe disc va fi utilizabil

Identificați dispozitivele componente

Pentru a începe, găsiți identificatorii pentru discurile brute pe care le veți utiliza:

  • lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
Output
NAME SIZE FSTYPE TYPE MOUNTPOINTsda 100G disksdb 100G diskvda 20G disk ├─vda1 20G ext4 part /└─vda15 1M part

După cum puteți vedea mai sus, avem două discuri fără sistem de fișiere, fiecare cu o dimensiune de 100G. În acest exemplu, aceste dispozitive au primit identificatorii /dev/sda și /dev/sdb pentru această sesiune. Acestea vor fi componentele brute pe care le vom folosi pentru a construi matricea.

Create the Array

Pentru a crea o matrice RAID 1 cu aceste componente, treceți-le în comanda mdadm --create. Va trebui să specificați numele dispozitivului pe care doriți să îl creați (/dev/md0 în cazul nostru), nivelul RAID și numărul de dispozitive:

  • sudo mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sda /dev/sdb

Dacă dispozitivele componente pe care le folosiți nu sunt partiții cu steagul boot activat, veți primi probabil următorul avertisment. Este sigur să tastați y pentru a continua:

Output
mdadm: Note: this array has metadata at the start and may not be suitable as a boot device. If you plan to store '/boot' on this device please ensure that your boot-loader understands md/v1.x metadata, or use --metadata=0.90mdadm: size set to 104792064KContinue creating array? y

Scopul mdadm va începe să oglindească unitățile. Acest lucru poate dura ceva timp pentru a se finaliza, dar matricea poate fi utilizată în acest timp. Puteți monitoriza progresul oglindirii prin verificarea fișierului /proc/mdstat:

  • cat /proc/mdstat
Output
Personalities : md0 : active raid1 sdb sda 104792064 blocks super 1.2 resync = 20.2% (21233216/104792064) finish=6.9min speed=199507K/secunused devices: <none>

După cum puteți vedea în prima linie evidențiată, dispozitivul /dev/md0 a fost creat în configurația RAID 1 folosind dispozitivele /dev/sda și /dev/sdb. A doua linie evidențiată arată progresul în ceea ce privește oglindirea. Puteți continua ghidul în timp ce acest proces se finalizează.

Crearea și montarea sistemului de fișiere

În continuare, creați un sistem de fișiere pe matrice:

  • sudo mkfs.ext4 -F /dev/md0

Crearea unui punct de montare pentru a atașa noul sistem de fișiere:

  • sudo mkdir -p /mnt/md0

Puteți monta sistemul de fișiere tastând:

  • sudo mount /dev/md0 /mnt/md0

Verificați dacă noul spațiu este disponibil tastând:

  • df -h -x devtmpfs -x tmpfs
Output
Filesystem Size Used Avail Use% Mounted on/dev/vda1 20G 1.1G 18G 6% //dev/md0 99G 60M 94G 1% /mnt/md0

Noul sistem de fișiere este montat și accesibil.

Salvați layout-ul matricei

Pentru a ne asigura că matricea este reasamblată automat la pornire, va trebui să ajustăm fișierul /etc/mdadm/mdadm.conf. Puteți să scanați automat matricea activă și să adăugați fișierul tastând:

  • sudo mdadm --detail --scan | sudo tee -a /etc/mdadm/mdadm.conf

După aceea, puteți actualiza initramfs, sau sistemul de fișiere RAM inițial, astfel încât matricea să fie disponibilă în timpul procesului de pornire timpurie:

  • sudo update-initramfs -u

Adaugați noile opțiuni de montare a sistemului de fișiere la fișierul /etc/fstab pentru montarea automată la pornire:

  • echo '/dev/md0 /mnt/md0 ext4 defaults,nofail,discard 0 0' | sudo tee -a /etc/fstab

Dar matricea RAID 1 ar trebui acum să fie asamblată și montată automat la fiecare pornire.

Crearea unei matrice RAID 5

Tipul de matrice RAID 5 este implementat prin benzi de date pe toate dispozitivele disponibile. O componentă a fiecărei benzi este un bloc de paritate calculat. Dacă un dispozitiv cedează, blocul de paritate și blocurile rămase pot fi utilizate pentru a calcula datele lipsă. Dispozitivul care primește blocul de paritate este rotit astfel încât fiecare dispozitiv să aibă o cantitate echilibrată de informații de paritate.

  • Cerințe: minim 3 dispozitive de stocare
  • Beneficiu principal: Redundanță cu o capacitate utilizabilă mai mare.
  • Elemente de reținut: În timp ce informațiile de paritate sunt distribuite, capacitatea unui disc va fi utilizată pentru paritate. RAID 5 poate suferi de performanțe foarte slabe atunci când se află într-o stare degradată.

Identificați dispozitivele componente

Pentru a începe, găsiți identificatorii pentru discurile brute pe care le veți folosi:

  • lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
Output
NAME SIZE FSTYPE TYPE MOUNTPOINTsda 100G disksdb 100G disksdc 100G diskvda 20G disk ├─vda1 20G ext4 part /└─vda15 1M part

După cum puteți vedea mai sus, avem trei discuri fără sistem de fișiere, fiecare cu o dimensiune de 100G. În acest exemplu, aceste dispozitive au primit identificatorii /dev/sda, /dev/sdb și /dev/sdc pentru această sesiune. Acestea vor fi componentele brute pe care le vom folosi pentru a construi matricea.

Create the Array

Pentru a crea o matrice RAID 5 cu aceste componente, treceți-le în comanda mdadm --create. Va trebui să specificați numele dispozitivului pe care doriți să îl creați (/dev/md0 în cazul nostru), nivelul RAID și numărul de dispozitive:

  • sudo mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 /dev/sda /dev/sdb /dev/sdc

Unitatea mdadm va începe să configureze matricea (de fapt, utilizează procesul de recuperare pentru a construi matricea din motive de performanță). Acest lucru poate dura ceva timp pentru a se finaliza, dar matricea poate fi utilizată în acest timp. Puteți monitoriza progresul mirroring-ului prin verificarea fișierului /proc/mdstat:

  • cat /proc/mdstat
Output
Personalities : md0 : active raid5 sdc sdb sda 209584128 blocks super 1.2 level 5, 512k chunk, algorithm 2 recovery = 15.6% (16362536/104792064) finish=7.3min speed=200808K/secunused devices: <none>

După cum puteți vedea în prima linie evidențiată, dispozitivul /dev/md0 a fost creat în configurația RAID 5 folosind dispozitivele /dev/sda, /dev/sdb și /dev/sdc. A doua linie evidențiată arată progresul construcției. Puteți continua ghidul în timp ce acest proces se finalizează.

Crearea și montarea sistemului de fișiere

În continuare, creați un sistem de fișiere pe matrice:

  • sudo mkfs.ext4 -F /dev/md0

Crearea unui punct de montare pentru a atașa noul sistem de fișiere:

  • sudo mkdir -p /mnt/md0

Puteți monta sistemul de fișiere tastând:

  • sudo mount /dev/md0 /mnt/md0

Verificați dacă noul spațiu este disponibil tastând:

  • df -h -x devtmpfs -x tmpfs
Output
Filesystem Size Used Avail Use% Mounted on/dev/vda1 20G 1.1G 18G 6% //dev/md0 197G 60M 187G 1% /mnt/md0

Noul sistem de fișiere este montat și accesibil.

Salvați configurația matricei

Pentru a ne asigura că matricea este reasamblată automat la pornire, va trebui să ajustăm fișierul /etc/mdadm/mdadm.conf.

Înainte de a ajusta configurația, verificați din nou pentru a vă asigura că matricea a terminat de asamblat. Din cauza modului în care mdadm construiește matricele RAID 5, dacă matricea este încă în curs de asamblare, numărul de rezerve din matrice va fi raportat în mod inexact:

  • cat /proc/mdstat
Output
Personalities : md0 : active raid5 sdc sdb sda 209584128 blocks super 1.2 level 5, 512k chunk, algorithm 2 unused devices: <none>

Lovitura de mai sus arată că reconstrucția este completă. Acum, putem să scanăm automat matricea activă și să adăugăm fișierul tastând:

  • sudo mdadm --detail --scan | sudo tee -a /etc/mdadm/mdadm.conf

După aceea, puteți actualiza initramfs, sau sistemul de fișiere RAM inițial, astfel încât matricea să fie disponibilă în timpul procesului de pornire timpurie:

  • sudo update-initramfs -u

Adaugați noile opțiuni de montare a sistemului de fișiere la fișierul /etc/fstab pentru montarea automată la pornire:

  • echo '/dev/md0 /mnt/md0 ext4 defaults,nofail,discard 0 0' | sudo tee -a /etc/fstab

După aceea, matricea RAID 5 ar trebui acum să fie asamblată și montată automat la fiecare pornire.

Crearea unei matrice RAID 6

Tipul de matrice RAID 6 este implementat prin benzi de date pe toate dispozitivele disponibile. Două componente ale fiecărei benzi sunt blocuri de paritate calculate. Dacă unul sau două dispozitive se defectează, blocurile de paritate și blocurile rămase pot fi utilizate pentru a calcula datele lipsă. Dispozitivele care primesc blocurile de paritate sunt rotite astfel încât fiecare dispozitiv să aibă o cantitate echilibrată de informații de paritate. Acest lucru este similar cu o matrice RAID 5, dar permite defectarea a două unități.

  • Requizite: minim 4 dispozitive de stocare
  • Beneficiu principal: Redundanță dublă cu o capacitate utilizabilă mai mare.
  • Elemente de reținut: În timp ce informațiile de paritate sunt distribuite, capacitatea a două discuri va fi utilizată pentru paritate. RAID 6 poate suferi de performanțe foarte slabe atunci când se află într-o stare degradată.

Identificați dispozitivele componente

Pentru a începe, găsiți identificatorii pentru discurile brute pe care le veți folosi:

  • lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
Output
NAME SIZE FSTYPE TYPE MOUNTPOINTsda 100G disksdb 100G disksdc 100G disksdd 100G diskvda 20G disk ├─vda1 20G ext4 part /└─vda15 1M part

După cum puteți vedea mai sus, avem patru discuri fără sistem de fișiere, fiecare cu o dimensiune de 100G. În acest exemplu, aceste dispozitive au primit identificatorii /dev/sda, /dev/sdb, /dev/sdc și /dev/sdd pentru această sesiune. Acestea vor fi componentele brute pe care le vom folosi pentru a construi matricea.

Create the Array

Pentru a crea o matrice RAID 6 cu aceste componente, treceți-le în comanda mdadm --create. Va trebui să specificați numele dispozitivului pe care doriți să îl creați (/dev/md0 în cazul nostru), nivelul RAID și numărul de dispozitive:

  • sudo mdadm --create --verbose /dev/md0 --level=6 --raid-devices=4 /dev/sda /dev/sdb /dev/sdc /dev/sdd

Unitatea mdadm va începe să configureze matricea (de fapt, utilizează procesul de recuperare pentru a construi matricea din motive de performanță). Acest lucru poate dura ceva timp pentru a se finaliza, dar matricea poate fi utilizată în acest timp. Puteți monitoriza progresul mirroring-ului prin verificarea fișierului /proc/mdstat:

  • cat /proc/mdstat
Output
Personalities : md0 : active raid6 sdd sdc sdb sda 209584128 blocks super 1.2 level 6, 512k chunk, algorithm 2 resync = 0.6% (668572/104792064) finish=10.3min speed=167143K/secunused devices: <none>

După cum puteți vedea în prima linie evidențiată, dispozitivul /dev/md0 a fost creat în configurația RAID 6 folosind dispozitivele /dev/sda, /dev/sdb, /dev/sdc și /dev/sdd. A doua linie evidențiată arată progresul construcției. Puteți continua ghidul în timp ce acest proces se finalizează.

Crearea și montarea sistemului de fișiere

În continuare, creați un sistem de fișiere pe matrice:

  • sudo mkfs.ext4 -F /dev/md0

Crearea unui punct de montare pentru a atașa noul sistem de fișiere:

  • sudo mkdir -p /mnt/md0

Puteți monta sistemul de fișiere tastând:

  • sudo mount /dev/md0 /mnt/md0

Verificați dacă noul spațiu este disponibil tastând:

  • df -h -x devtmpfs -x tmpfs
Output
Filesystem Size Used Avail Use% Mounted on/dev/vda1 20G 1.1G 18G 6% //dev/md0 197G 60M 187G 1% /mnt/md0

Noul sistem de fișiere este montat și accesibil.

Salvați layout-ul matricei

Pentru a ne asigura că matricea este reasamblată automat la pornire, va trebui să ajustăm fișierul /etc/mdadm/mdadm.conf. Putem să scanăm automat matricea activă și să adăugăm fișierul tastând:

  • sudo mdadm --detail --scan | sudo tee -a /etc/mdadm/mdadm.conf

După aceea, puteți actualiza initramfs, sau sistemul de fișiere RAM inițial, astfel încât matricea să fie disponibilă în timpul procesului de pornire timpurie:

  • sudo update-initramfs -u

Adaugați noile opțiuni de montare a sistemului de fișiere la fișierul /etc/fstab pentru montarea automată la pornire:

  • echo '/dev/md0 /mnt/md0 ext4 defaults,nofail,discard 0 0' | sudo tee -a /etc/fstab

După aceea, matricea dumneavoastră RAID 6 ar trebui acum să fie asamblată și montată automat la fiecare pornire.

Crearea unei matrice RAID 10 complexe

Tipul de matrice RAID 10 este implementat în mod tradițional prin crearea unei matrice RAID 0 în benzi compusă din seturi de matrice RAID 1. Acest tip de matrice imbricate oferă atât redundanță, cât și performanțe ridicate, în detrimentul unor cantități mari de spațiu pe disc. Utilitarul mdadm dispune de propriul tip RAID 10 care oferă același tip de beneficii cu o flexibilitate sporită. Acesta nu este creat prin anidarea matricelor, dar are multe dintre aceleași caracteristici și garanții. Vom folosi aici tipul mdadm RAID 10.

  • Cerințe: minim 3 dispozitive de stocare
  • Beneficiu principal: Performanță și redundanță
  • Aceste lucruri de reținut: Cantitatea de reducere a capacității pentru matrice este definită de numărul de copii de date pe care alegeți să le păstrați. Numărul de copii care sunt stocate cu mdadm stilul RAID 10 este configurabil.

În mod implicit, două copii ale fiecărui bloc de date vor fi stocate în ceea ce se numește dispunerea „aproape”. Layout-urile posibile care dictează modul în care este stocat fiecare bloc de date sunt:

  • near: Aranjamentul implicit. Copiile fiecărui bloc de date sunt scrise consecutiv atunci când se face striping, ceea ce înseamnă că copiile blocurilor de date vor fi scrise în jurul aceleiași părți a mai multor discuri.
  • departe: Prima și următoarele copii sunt scrise în părți diferite dispozitivele de stocare din matrice. De exemplu, prima bucată poate fi scrisă aproape de începutul unui disc, în timp ce a doua bucată va fi scrisă la jumătatea drumului pe un alt disc. Acest lucru poate oferi unele creșteri ale performanțelor de citire pentru discurile rotative tradiționale în detrimentul performanțelor de scriere.
  • offset: Fiecare bandă este copiată, decalată cu o unitate. Acest lucru înseamnă că copiile sunt decalate una față de cealaltă, dar totuși apropiate pe disc. Acest lucru ajută la minimizarea căutării excesive în timpul unor sarcini de lucru.

Puteți afla mai multe despre aceste dispuneri verificând secțiunea „RAID10” din această pagină man:

  • man 4 md

Puteți găsi, de asemenea, această pagină man online aici.

Identificați dispozitivele componente

Pentru a începe, găsiți identificatorii pentru discurile brute pe care le veți folosi:

  • lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
Output
NAME SIZE FSTYPE TYPE MOUNTPOINTsda 100G disksdb 100G disksdc 100G disksdd 100G diskvda 20G disk ├─vda1 20G ext4 part /└─vda15 1M part

După cum puteți vedea mai sus, avem patru discuri fără sistem de fișiere, fiecare cu o dimensiune de 100G. În acest exemplu, aceste dispozitive au primit identificatorii /dev/sda, /dev/sdb, /dev/sdc și /dev/sdd pentru această sesiune. Acestea vor fi componentele brute pe care le vom folosi pentru a construi matricea.

Create the Array

Pentru a crea o matrice RAID 10 cu aceste componente, treceți-le în comanda mdadm --create. Va trebui să specificați numele dispozitivului pe care doriți să îl creați (/dev/md0 în cazul nostru), nivelul RAID și numărul de dispozitive.

Puteți configura două copii folosind aspectul apropiat, fără a specifica un aspect și numărul de copii:

  • sudo mdadm --create --verbose /dev/md0 --level=10 --raid-devices=4 /dev/sda /dev/sdb /dev/sdc /dev/sdd

Dacă doriți să folosiți un aspect diferit sau să modificați numărul de copii, va trebui să folosiți opțiunea --layout=, care ia un aspect și un identificator de copie. Layout-urile sunt n pentru aproape, f pentru departe și o pentru decalaj. Numărul de copii de stocat este adăugat după aceea.

De exemplu, pentru a crea o matrice care are 3 copii în dispunerea offset, comanda ar arăta astfel:

  • sudo mdadm --create --verbose /dev/md0 --level=10 --layout=o3 --raid-devices=4 /dev/sda /dev/sdb /dev/sdc /dev/sdd

Unitatea mdadm va începe să configureze matricea (de fapt, utilizează procesul de recuperare pentru a construi matricea din motive de performanță). Acest lucru poate dura ceva timp pentru a se finaliza, dar matricea poate fi utilizată în acest timp. Puteți monitoriza progresul mirroring-ului prin verificarea fișierului /proc/mdstat:

  • cat /proc/mdstat
Output
Personalities : md0 : active raid10 sdd sdc sdb sda 209584128 blocks super 1.2 512K chunks 2 near-copies resync = 18.1% (37959424/209584128) finish=13.8min speed=206120K/secunused devices: <none>

După cum puteți vedea în prima linie evidențiată, dispozitivul /dev/md0 a fost creat în configurația RAID 10 folosind dispozitivele /dev/sda, /dev/sdb, /dev/sdc și /dev/sdd. A doua zonă evidențiată arată aspectul care a fost utilizat pentru acest exemplu (2 copii în configurația apropiată). A treia zonă evidențiată arată progresul construcției. Puteți continua ghidul în timp ce acest proces se finalizează.

Crearea și montarea sistemului de fișiere

În continuare, creați un sistem de fișiere pe matrice:

  • sudo mkfs.ext4 -F /dev/md0

Crearea unui punct de montare pentru a atașa noul sistem de fișiere:

  • sudo mkdir -p /mnt/md0

Puteți monta sistemul de fișiere tastând:

  • sudo mount /dev/md0 /mnt/md0

Verificați dacă noul spațiu este disponibil tastând:

  • df -h -x devtmpfs -x tmpfs
Output
Filesystem Size Used Avail Use% Mounted on/dev/vda1 20G 1.1G 18G 6% //dev/md0 197G 60M 187G 1% /mnt/md0

Noul sistem de fișiere este montat și accesibil.

Salvați layout-ul matricei

Pentru a ne asigura că matricea este reasamblată automat la pornire, va trebui să ajustăm fișierul /etc/mdadm/mdadm.conf. Putem să scanăm automat matricea activă și să adăugăm fișierul tastând:

  • sudo mdadm --detail --scan | sudo tee -a /etc/mdadm/mdadm.conf

După aceea, puteți actualiza initramfs, sau sistemul de fișiere RAM inițial, astfel încât matricea să fie disponibilă în timpul procesului de pornire timpurie:

  • sudo update-initramfs -u

Adaugați noile opțiuni de montare a sistemului de fișiere la fișierul /etc/fstab pentru montarea automată la pornire:

  • echo '/dev/md0 /mnt/md0 ext4 defaults,nofail,discard 0 0' | sudo tee -a /etc/fstab

Dar matricea RAID 10 ar trebui acum să fie asamblată și montată automat la fiecare pornire.

Concluzie

În acest ghid, am demonstrat cum să creăm diferite tipuri de array-uri folosind utilitarul RAID software mdadm al Linux. Array-urile RAID oferă unele îmbunătățiri convingătoare de redundanță și performanță față de utilizarea individuală a mai multor discuri.

După ce ați stabilit tipul de array necesar pentru mediul dumneavoastră și ați creat dispozitivul, va trebui să învățați cum să efectuați gestionarea zilnică cu mdadm. Ghidul nostru despre cum să gestionați matricele RAID cu mdadm pe Ubuntu 16.04 vă poate ajuta să începeți.

.

Lasă un răspuns

Adresa ta de email nu va fi publicată.