Of je nu ervaring hebt met RAID arrays, en of je nu alle tutorials in deze RAID serie hebt gevolgd of niet, het beheren van software RAID’s in Linux is niet erg ingewikkeld als je eenmaal bekend bent met het mdadm --manage
commando.
In deze tutorial overlopen we de functionaliteit van deze tool zodat je hem bij de hand hebt wanneer je hem nodig hebt.
- RAID Test Scenario
- Inzicht in mdadm Opties en Gebruik
- Het beheren van RAID-apparaten met het hulpprogramma mdadm
- Voorbeeld 1: Een apparaat toevoegen aan de RAID-array
- Voorbeeld 2: Een RAID-apparaat als defect markeren en uit de array verwijderen
- Voorbeeld 3: Een apparaat opnieuw toevoegen dat deel uitmaakte van de array en dat eerder was verwijderd
- Voorbeeld 4: Vervang een Raid-apparaat door een specifieke schijf
- Example 5: Een Raid array markeren als ro of rw
- Samenvatting
RAID Test Scenario
Zoals in het laatste artikel van deze serie, zullen we voor de eenvoud een RAID 1 (mirror) array gebruiken die bestaat uit twee 8 GB schijven (/dev/sdb en /dev/sdc) en een initieel reserve apparaat (/dev/sdd) om te illustreren, maar de hier genoemde commando’s en concepten zijn ook van toepassing op andere soorten setups. Dat gezegd hebbende, voeg deze pagina gerust toe aan de bladwijzers van uw browser, en laten we aan de slag gaan.
Inzicht in mdadm Opties en Gebruik
Gelukkig biedt mdadm een built-in --help
vlag die uitleg en documentatie geeft voor elk van de belangrijkste opties.
Dus, laten we beginnen met te typen:
# mdadm --manage --help
om te zien wat de taken zijn die mdadm --manage
ons zal toestaan uit te voeren en hoe:
Zoals we in de bovenstaande afbeelding kunnen zien, omvat het beheren van een RAID-array het uitvoeren van de volgende taken op een of ander moment:
- (Opnieuw) Een apparaat toevoegen aan de array.
- Een apparaat als defect markeren.
- Een defect apparaat uit de array verwijderen.
- Het defecte apparaat vervangen door een reserve-apparaat.
- Een array starten die gedeeltelijk is opgebouwd.
- Een array stoppen.
- Markeer een array als ro (read-only) of rw (read-write).
Het beheren van RAID-apparaten met het hulpprogramma mdadm
Merk op dat als u de optie --manage
weglaat, mdadm toch de beheermodus aanneemt. Houd dit feit in gedachten om te voorkomen dat u later in de problemen komt.
De gemarkeerde tekst in de vorige afbeelding toont de basis-syntaxis om RAID’s te beheren:
# mdadm --manage RAID options devices
Laten we dit illustreren met een paar voorbeelden.
Voorbeeld 1: Een apparaat toevoegen aan de RAID-array
U voegt meestal een nieuw apparaat toe wanneer u een defect apparaat vervangt, of wanneer u een reserve-onderdeel hebt dat u bij de hand wilt hebben in geval van een defect:
# mdadm --manage /dev/md0 --add /dev/sdd1
Voorbeeld 2: Een RAID-apparaat als defect markeren en uit de array verwijderen
Dit is een verplichte stap voordat het apparaat logisch uit de array wordt verwijderd en later fysiek uit de machine wordt getrokken – in die volgorde (als u een van deze stappen overslaat, kunt u uiteindelijk het apparaat daadwerkelijk beschadigen):
# mdadm --manage /dev/md0 --fail /dev/sdb1
Merk op hoe het in het vorige voorbeeld toegevoegde reserve-apparaat wordt gebruikt om de defecte schijf automatisch te vervangen. Niet alleen dat, maar het herstel en de wederopbouw van raid-gegevens beginnen ook onmiddellijk:
Als het apparaat eenmaal handmatig als defect is aangeduid, kan het veilig uit de array worden verwijderd:
# mdadm --manage /dev/md0 --remove /dev/sdb1
Voorbeeld 3: Een apparaat opnieuw toevoegen dat deel uitmaakte van de array en dat eerder was verwijderd
Tot nu toe hebben we een werkende RAID 1 array die bestaat uit 2 actieve apparaten: /dev/sdc1 en /dev/sdd1. Als we nu proberen om /dev/sdb1 opnieuw toe te voegen aan /dev/md0:
# mdadm --manage /dev/md0 --re-add /dev/sdb1
zullen we tegen een fout aanlopen:
mdadm: --re-add for /dev/sdb1 to /dev/md0 is not possible
omdat de array al uit het maximaal mogelijke aantal drives bestaat. Dus we hebben 2 keuzes: a) voeg /dev/sdb1 toe als een reserve, zoals in Voorbeeld #1, of b) verwijder /dev/sdd1 uit de array en voeg dan /dev/sdb1 opnieuw toe.
We kiezen optie b), en zullen beginnen met de array te stoppen om hem later weer samen te voegen:
# mdadm --stop /dev/md0# mdadm --assemble /dev/md0 /dev/sdb1 /dev/sdc1
Als het bovenstaande commando niet succesvol /dev/sdb1 weer aan de array toevoegt, gebruik dan het commando uit Voorbeeld #1 om het te doen.
Hoewel mdadm het nieuw toegevoegde apparaat aanvankelijk als een reserve zal detecteren, zal het beginnen met het heropbouwen van de gegevens en wanneer het daarmee klaar is, zou het het apparaat moeten herkennen als een actief onderdeel van de RAID:
Voorbeeld 4: Vervang een Raid-apparaat door een specifieke schijf
Het vervangen van een schijf in de array door een reserve schijf is zo eenvoudig als:
# mdadm --manage /dev/md0 --replace /dev/sdb1 --with /dev/sdd1
Hierdoor wordt het apparaat dat volgt op de --with
-schakelaar toegevoegd aan de RAID terwijl de schijf die wordt aangegeven met --replace
wordt gemarkeerd als defect:
Example 5: Een Raid array markeren als ro of rw
Na het aanmaken van de array, moet u er een bestandssysteem bovenop hebben gemaakt en het gemount hebben op een directory om het te kunnen gebruiken. Wat u toen waarschijnlijk nog niet wist, is dat u de RAID kunt markeren als ro, zodat er alleen leesbewerkingen op kunnen worden uitgevoerd, of rw, zodat er ook naar het apparaat kan worden geschreven.
Om het apparaat als ro te markeren, moet het eerst worden ontkoppeld:
# umount /mnt/raid1# mdadm --manage /dev/md0 --readonly# mount /mnt/raid1# touch /mnt/raid1/test1
Om de array zo in te stellen dat er ook schrijfbewerkingen op kunnen worden uitgevoerd, gebruikt u de optie --readwrite
. Merk op dat u het apparaat moet ontkoppelen en stoppen voordat u de vlag rw instelt:
# umount /mnt/raid1# mdadm --manage /dev/md0 --stop# mdadm --assemble /dev/md0 /dev/sdc1 /dev/sdd1# mdadm --manage /dev/md0 --readwrite# touch /mnt/raid1/test2
Samenvatting
In deze serie hebben we uitgelegd hoe u verschillende software RAID-arrays kunt instellen die in bedrijfsomgevingen worden gebruikt. Als u de artikelen en de voorbeelden in deze artikelen hebt gevolgd, bent u voorbereid om de kracht van software RAID’s in Linux te benutten.
Mocht u vragen of suggesties hebben, neem dan gerust contact met ons op via het onderstaande formulier.