Πώς να διαχειριστείτε το λογισμικό RAID στο Linux με το εργαλείο "Mdadm" - Μέρος 9


Ανεξάρτητα από την προηγούμενη εμπειρία σας με συστοιχίες RAID και αν ακολουθήσατε όλα τα σεμινάρια αυτής της σειράς RAID ή όχι, η διαχείριση λογισμικού RAID στο Linux δεν είναι πολύ περίπλοκη εργασία μόλις εξοικειωθείτε με το mdadm --manage εντολή.

Σε αυτό το σεμινάριο θα εξετάσουμε τη λειτουργικότητα που παρέχει αυτό το εργαλείο, ώστε να μπορείτε να το έχετε εύχρηστο όταν το χρειάζεστε.

Σενάριο δοκιμής RAID

Όπως και στο τελευταίο άρθρο αυτής της σειράς, θα χρησιμοποιήσουμε για απλότητα μια συστοιχία RAID 1 (mirror) που αποτελείται από δύο δίσκους 8 GB (/dev/sdb και /dev/sdc) και μια αρχική εφεδρική συσκευή (/dev/sdd) για επεξήγηση, αλλά οι εντολές και οι έννοιες που αναφέρονται εδώ ισχύουν για άλλους τύπους ρυθμίσεις επίσης. Τούτου λεχθέντος, μη διστάσετε να προχωρήσετε και να προσθέσετε αυτήν τη σελίδα στους σελιδοδείκτες του προγράμματος περιήγησής σας και ας ξεκινήσουμε.

Κατανόηση των επιλογών και της χρήσης του mdadm

Ευτυχώς, το mdadm παρέχει μια σημαία ενσωματωμένη --help που παρέχει επεξηγήσεις και τεκμηρίωση για κάθε μία από τις κύριες επιλογές.

Έτσι, ας ξεκινήσουμε πληκτρολογώντας:


mdadm --manage --help

για να δείτε ποιες είναι οι εργασίες που θα μας επιτρέψει να εκτελέσουμε το mdadm --manage και πώς:

Όπως μπορούμε να δούμε στην παραπάνω εικόνα, η διαχείριση μιας συστοιχίας RAID περιλαμβάνει την εκτέλεση των ακόλουθων εργασιών τη μια ή την άλλη στιγμή:

  1. (Επανα)Προσθήκη συσκευής στη συστοιχία.
  2. Επισημάνετε μια συσκευή ως ελαττωματική.
  3. Αφαίρεση μιας ελαττωματικής συσκευής από τη συστοιχία.
  4. Αντικατάσταση της ελαττωματικής συσκευής με μια εφεδρική.
  5. Ξεκινήστε έναν πίνακα που είναι μερικώς κατασκευασμένος.
  6. Διακοπή μιας συστοιχίας.
  7. Επισημάνετε έναν πίνακα ως ro (μόνο για ανάγνωση) ή rw (ανάγνωση-εγγραφή).

Διαχείριση συσκευών RAID με το εργαλείο mdadm

Σημειώστε ότι εάν παραλείψετε την επιλογή --manage, το mdadm αναλαμβάνει τη λειτουργία διαχείρισης ούτως ή άλλως. Λάβετε υπόψη αυτό το γεγονός για να αποφύγετε να αντιμετωπίσετε προβλήματα πιο κάτω.

Το επισημασμένο κείμενο στην προηγούμενη εικόνα δείχνει τη βασική σύνταξη για τη διαχείριση των RAID:


mdadm --manage RAID options devices

Ας το εξηγήσουμε με μερικά παραδείγματα.

Παράδειγμα 1: Προσθήκη συσκευής στη συστοιχία RAID

Συνήθως θα προσθέσετε μια νέα συσκευή όταν αντικαθιστάτε μια ελαττωματική ή όταν έχετε ένα ανταλλακτικό που θέλετε να έχετε στη διάθεσή σας σε περίπτωση βλάβης:


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

Παράδειγμα 2: Επισήμανση μιας συσκευής RAID ως ελαττωματικής και αφαίρεση της από τη συστοιχία

Αυτό είναι ένα υποχρεωτικό βήμα πριν αφαιρέσετε λογικά τη συσκευή από τη συστοιχία και αργότερα αφαιρέσετε φυσικά τη συσκευή από το μηχάνημα - με αυτή τη σειρά (αν παραλείψετε ένα από αυτά τα βήματα, μπορεί να καταλήξετε να προκαλέσετε πραγματική ζημιά στη συσκευή):


mdadm --manage /dev/md0 --fail /dev/sdb1

Σημειώστε πώς χρησιμοποιείται η εφεδρική συσκευή που προστέθηκε στο προηγούμενο παράδειγμα για την αυτόματη αντικατάσταση του αποτυχημένου δίσκου. Όχι μόνο αυτό, αλλά και η ανάκτηση και η αναδόμηση των δεδομένων raid ξεκινά αμέσως:

Όταν η συσκευή έχει υποδειχθεί ως αποτυχημένη χειροκίνητα, μπορεί να αφαιρεθεί με ασφάλεια από τη συστοιχία:


mdadm --manage /dev/md0 --remove /dev/sdb1
Παράδειγμα 3: Επαναπροσθήκη μιας συσκευής που ήταν μέρος της συστοιχίας που είχε αφαιρεθεί προηγουμένως

Μέχρι αυτό το σημείο, έχουμε έναν λειτουργικό πίνακα RAID 1 που αποτελείται από 2 ενεργές συσκευές: /dev/sdc1 και /dev/sdd1. Αν προσπαθήσουμε να προσθέσουμε ξανά το /dev/sdb1 στο /dev/md0 αυτή τη στιγμή:


mdadm --manage /dev/md0 --re-add /dev/sdb1

θα συναντήσουμε ένα σφάλμα:


mdadm: --re-add for /dev/sdb1 to /dev/md0 is not possible

επειδή η συστοιχία αποτελείται ήδη από τον μέγιστο δυνατό αριθμό μονάδων δίσκου. Έχουμε λοιπόν 2 επιλογές: α) να προσθέσουμε το /dev/sdb1 ως εφεδρικό, όπως φαίνεται στο Παράδειγμα #1, ή β) να αφαιρέσουμε το /dev/sdd1 από τον πίνακα και στη συνέχεια προσθέστε ξανά το /dev/sdb1.

Επιλέγουμε την επιλογή β) και θα ξεκινήσουμε σταματώντας τον πίνακα για να τον επανασυναρμολογήσουμε αργότερα:


mdadm --stop /dev/md0
mdadm --assemble /dev/md0 /dev/sdb1 /dev/sdc1

Εάν η παραπάνω εντολή δεν προσθέσει με επιτυχία το /dev/sdb1 πίσω στον πίνακα, χρησιμοποιήστε την εντολή από το Παράδειγμα #1 για να το κάνετε.

Παρόλο που το mdadm θα εντοπίσει αρχικά τη συσκευή που προστέθηκε πρόσφατα ως εφεδρική, θα αρχίσει να αναδημιουργεί τα δεδομένα και όταν ολοκληρωθεί, θα πρέπει να αναγνωρίσει ότι η συσκευή είναι ενεργό μέρος του RAID:

Παράδειγμα 4: Αντικαταστήστε μια συσκευή Raid με έναν συγκεκριμένο δίσκο

Η αντικατάσταση ενός δίσκου στη συστοιχία με έναν εφεδρικό είναι τόσο εύκολη όσο:


mdadm --manage /dev/md0 --replace /dev/sdb1 --with /dev/sdd1

Αυτό έχει ως αποτέλεσμα η συσκευή να ακολουθεί το διακόπτη --with που προστίθεται στο RAID, ενώ ο δίσκος που υποδεικνύεται μέσω του --replace επισημαίνεται ως ελαττωματικός:

Παράδειγμα 5: Επισήμανση ενός πίνακα Raid ως ro ή rw

Αφού δημιουργήσετε τον πίνακα, πρέπει να έχετε δημιουργήσει ένα σύστημα αρχείων πάνω του και να το έχετε προσαρτήσει σε έναν κατάλογο για να το χρησιμοποιήσετε. Αυτό που πιθανώς δεν γνωρίζατε τότε είναι ότι μπορείτε να επισημάνετε το RAID ως ro, επιτρέποντας έτσι να εκτελούνται μόνο λειτουργίες ανάγνωσης σε αυτό, ή rw, προκειμένου να γράψετε και στη συσκευή.

Για να επισημάνετε τη συσκευή ως ro, πρέπει πρώτα να την αποπροσαρτήσετε:


umount /mnt/raid1
mdadm --manage /dev/md0 --readonly
mount /mnt/raid1
touch /mnt/raid1/test1

Για να διαμορφώσετε τον πίνακα ώστε να επιτρέπει και λειτουργίες εγγραφής, χρησιμοποιήστε την επιλογή --readwrite. Λάβετε υπόψη ότι θα χρειαστεί να αποσυνδέσετε τη συσκευή και να τη σταματήσετε πριν ορίσετε τη σημαία rw:


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

Περίληψη

Σε όλη αυτή τη σειρά έχουμε εξηγήσει πώς να ρυθμίσετε μια ποικιλία συστοιχιών λογισμικού RAID που χρησιμοποιούνται σε εταιρικά περιβάλλοντα. Εάν παρακολουθήσατε τα άρθρα και τα παραδείγματα που παρέχονται σε αυτά τα άρθρα, είστε έτοιμοι να αξιοποιήσετε τη δύναμη των RAID λογισμικού στο Linux.

Σε περίπτωση που έχετε ερωτήσεις ή προτάσεις, μη διστάσετε να επικοινωνήσετε μαζί μας χρησιμοποιώντας την παρακάτω φόρμα.