Dyrkning af en eksisterende RAID-array og fjernelse af mislykkede diske i Raid - Del 7


Hver nybegynder bliver forvirret af ordet array. Array er bare en samling diske. Med andre ord kan vi kalde array som et sæt eller en gruppe. Ligesom et sæt æg, der indeholder 6 tal. På samme måde indeholder RAID Array antal diske, det kan være 2, 4, 6, 8, 12, 16 osv. Håber nu, at du ved, hvad Array er.

Her vil vi se, hvordan man dyrker (udvider) en eksisterende array eller raid-gruppe. Hvis vi f.eks. Bruger to diske i en matrix til at danne et raid 1-sæt, og i en situation, hvis vi har brug for mere plads i den gruppe, kan vi udvide størrelsen på et array ved hjælp af mdadm –grow kommando, bare ved at tilføje en af disken til det eksisterende array. Efter vækst (tilføjelse af disk til et eksisterende array) vil vi se, hvordan man fjerner en af den mislykkede disk fra array.

Antag, at en af disken er lidt svag og har brug for at fjerne denne disk, indtil den mislykkes, lad den blive brugt, men vi er nødt til at tilføje et af reservedrevet og dyrke spejlet, før det fejler, fordi vi skal gemme vores data. Mens den svage disk mislykkes, kan vi fjerne den fra array, dette er det koncept, vi skal se i dette emne.

  1. Vi kan vokse (udvide) størrelsen på ethvert raid-sæt.
  2. Vi kan fjerne den defekte disk efter voksende raid-array med ny disk.
  3. Vi kan vokse raid-array uden nogen nedetid.

  1. For at udvide et RAID-array har vi brug for et eksisterende RAID-sæt (Array).
  2. Vi har brug for ekstra diske for at udvide Array.
  3. Her bruger jeg 1 disk til at udvide det eksisterende array.

Før vi lærer om dyrkning og genopretning af Array, skal vi vide om det grundlæggende i RAID-niveauer og opsætninger. Følg nedenstående links for at vide om disse opsætninger.

  1. Forståelse af grundlæggende RAID-koncepter - Del 1
  2. Oprettelse af en Software Raid 0 i Linux - del 2

Operating System 	:	CentOS 6.5 Final
IP Address	 	:	192.168.0.230
Hostname		:	grow.tecmintlocal.com
2 Existing Disks 	:	1 GB
1 Additional Disk	:	1 GB

Her har min allerede eksisterende RAID 2 antal diske med hver størrelse er 1 GB, og vi tilføjer nu endnu en disk, hvis størrelse er 1 GB til vores eksisterende raid-array.

Dyrkning af en eksisterende RAID Array

1. Før du dyrker en matrix, skal du først liste den eksisterende Raid-array ved hjælp af følgende kommando.

# mdadm --detail /dev/md0

Bemærk: Ovenstående output viser, at jeg allerede har to diske i Raid-array med raid1-niveau. Nu tilføjer vi endnu en disk til et eksisterende array,

2. Lad os nu tilføje den nye disk "sdd" og oprette en partition ved hjælp af 'fdisk' kommando.

# fdisk /dev/sdd

Brug nedenstående instruktioner til at oprette en partition på/dev/sdd-drev.

  1. Tryk på 'n' for at oprette en ny partition.
  2. Vælg derefter 'P' til primær partition.
  3. Vælg derefter '1' for at være den første partition.
  4. Tryk derefter på 'p' for at udskrive den oprettede partition.
  5. Her vælger vi 'fd', da min type er RAID.
  6. Tryk derefter på 'p' for at udskrive den definerede partition.
  7. Brug derefter igen 'p' til at udskrive de ændringer, vi har foretaget.
  8. Brug ‘w’ til at skrive ændringerne.

3. Når ny sdd-partition er oprettet, kan du bekræfte den ved hjælp af kommandoen nedenfor.

# ls -l /dev/ | grep sd

4. Undersøg derefter den nyoprettede disk for ethvert eksisterende raid, før du tilføjer det til arrayet.

# mdadm --examine /dev/sdd1

Bemærk: Ovenstående output viser, at disken ikke har detekteret superblokke, hvilket betyder, at vi kan bevæge os fremad for at tilføje en ny disk til et eksisterende array.

4. Brug følgende kommando for at tilføje den nye partition/dev/sdd1 i eksisterende array md0.

# mdadm --manage /dev/md0 --add /dev/sdd1

5. Når den nye disk er tilføjet, skal du tjekke for den tilføjede disk i vores array ved hjælp af.

# mdadm --detail /dev/md0

Bemærk: I ovenstående output kan du se, at drevet er tilføjet som en reserve. Her har vi allerede 2 diske i arrayet, men hvad vi forventer er 3 enheder i array for at vi har brug for at udvide arrayet.

6. For at udvide arrayet skal vi bruge nedenstående kommando.

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

Nu kan vi se, at den tredje disk (sdd1) er blevet føjet til arrayet, efter at den tredje disk er tilføjet, synkroniseres dataene fra andre to diske.

# mdadm --detail /dev/md0

Bemærk: For store diske vil det tage timer at synkronisere indholdet. Her har jeg brugt 1 GB virtuel disk, så det gøres meget hurtigt inden for få sekunder.

Fjernelse af diske fra matrix

7. Efter at data er synkroniseret til ny disk ‘sdd1’ fra andre to diske, betyder det, at alle tre diske nu har samme indhold.

Som vi sagde tidligere, antager vi, at en af disken er svag og skal fjernes, før den fejler. Så antag nu, at disk 'sdc1' er svag og skal fjernes fra et eksisterende array.

Før vi fjerner en disk, er vi nødt til at markere disken som en mislykket, så kun vi kan fjerne den.

# mdadm --fail /dev/md0 /dev/sdc1
# mdadm --detail /dev/md0

Fra ovenstående output ser vi tydeligt, at disken blev markeret som defekt i bunden. Selv om det er defekt, kan vi se, at raid-enhederne er 3, mislykkedes 1, og tilstanden blev forringet.

Nu skal vi fjerne det defekte drev fra arrayet og dyrke arrayet med 2 enheder, så raid-enhederne indstilles til 2 enheder som før.

# mdadm --remove /dev/md0 /dev/sdc1

8. Når det defekte drev er fjernet, skal vi nu udvide raid-arrayet ved hjælp af 2 diske.

# mdadm --grow --raid-devices=2 /dev/md0
# mdadm --detail /dev/md0

Fra om-output kan du se, at vores array kun har 2 enheder. Hvis du har brug for at udvide arrayet igen, skal du følge de samme trin som beskrevet ovenfor. Hvis du har brug for at tilføje et drev som reserve, skal du markere det som ekstra, så hvis disken mislykkes, bliver den automatisk aktiv og genopbygget.

Konklusion

I artiklen har vi set, hvordan man dyrker et eksisterende raid-sæt, og hvordan man fjerner en defekt disk fra et array efter at have synkroniseret det eksisterende indhold. Alle disse trin kan udføres uden nedetid. Under datasynkronisering bliver systembrugere, filer og applikationer under ingen omstændigheder berørt.

I næste artikel vil jeg vise dig, hvordan du styrer RAID, indtil da holder dig opdateret og glem ikke at tilføje dine kommentarer.