Δημιουργία RAID 5 (Striping with Distributed Parity) σε Linux - Μέρος 4


Στο RAID 5, τα δεδομένα διαχωρίζονται σε πολλαπλές μονάδες δίσκου με κατανεμημένη ισοτιμία. Η διαγράμμιση με κατανεμημένη ισοτιμία σημαίνει ότι θα χωρίσει τις πληροφορίες ισοτιμίας και τα δεδομένα λωρίδας σε πολλούς δίσκους, οι οποίοι θα έχουν καλό πλεονασμό δεδομένων.

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

Τι είναι η ισοτιμία;

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

Πλεονεκτήματα και μειονεκτήματα του RAID 5

  1. Δίνει καλύτερη απόδοση
  2. Υποστήριξη πλεονασμού και ανοχής σφαλμάτων.
  3. Υποστηρίξτε ζεστές εφεδρικές επιλογές.
  4. Θα χάσει μία χωρητικότητα δίσκου για τη χρήση πληροφοριών ισοτιμίας.
  5. Καμία απώλεια δεδομένων εάν αποτύχει ένας μεμονωμένος δίσκος. Μπορούμε να δημιουργήσουμε ξανά από ισοτιμία μετά την αντικατάσταση του αποτυχημένου δίσκου.
  6. Ταιριάζει σε περιβάλλον προσανατολισμένο στις συναλλαγές καθώς η ανάγνωση θα είναι ταχύτερη.
  7. Λόγω της ισοτιμίας, η εγγραφή θα είναι αργή.
  8. Η ανακατασκευή διαρκεί πολύ.

Απαιτήσεις

Απαιτούνται τουλάχιστον 3 σκληροί δίσκοι για τη δημιουργία του Raid 5, αλλά μπορείτε να προσθέσετε περισσότερους δίσκους, μόνο εάν έχετε έναν αποκλειστικό ελεγκτή raid υλικού με πολλές θύρες. Εδώ, χρησιμοποιούμε λογισμικό RAID και το πακέτο ‘mdadm’ για να δημιουργήσουμε μια επιδρομή.

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

Πριν προχωρήσετε περαιτέρω, σας προτείνω να διαβάσετε τα παρακάτω άρθρα για να κατανοήσετε τα βασικά του RAID στο Linux.

  1. Βασικές έννοιες του RAID στο Linux – Μέρος 1
  2. Δημιουργία RAID 0 (Stripe) σε Linux – Μέρος 2
  3. Ρύθμιση του RAID 1 (Mirroring) σε Linux – Μέρος 3

Η εγκατάσταση του διακομιστή μου
Operating System :	CentOS 6.5 Final
IP Address	 :	192.168.0.227
Hostname	 :	rd5.tecmintlocal.com
Disk 1 [20GB]	 :	/dev/sdb
Disk 2 [20GB]	 :	/dev/sdc
Disk 3 [20GB]	 :	/dev/sdd

Αυτό το άρθρο είναι Μέρος 4 μιας σειράς RAID 9 οδηγιών, εδώ θα ρυθμίσουμε ένα λογισμικό RAID 5 με κατανεμημένη ισοτιμία σε συστήματα ή διακομιστές Linux που χρησιμοποιούν τρεις δίσκους 20 GB με όνομα /dev/sdb, /dev/sdc και /dev/sdd.

Βήμα 1: Εγκατάσταση mdadm και Verify Drives

1. Όπως είπαμε νωρίτερα, χρησιμοποιούμε την τελική έκδοση του CentOS 6.5 για αυτήν τη ρύθμιση raid, αλλά τα ίδια βήματα μπορούν να ακολουθηθούν για τη ρύθμιση RAID σε οποιαδήποτε διανομή που βασίζεται σε Linux.

# lsb_release -a
# ifconfig | grep inet

2. Εάν παρακολουθείτε τη σειρά raid μας, υποθέτουμε ότι έχετε ήδη εγκαταστήσει το πακέτο 'mdadm', εάν όχι, χρησιμοποιήστε την ακόλουθη εντολή σύμφωνα με το Linux σας διανομής για την εγκατάσταση του πακέτου.

# yum install mdadm		[on RedHat systems]
# apt-get install mdadm 	[on Debain systems]

3. Μετά την εγκατάσταση του πακέτου «mdadm», ας παραθέσουμε τους τρεις δίσκους των 20 GB που έχουμε προσθέσει στο σύστημά μας χρησιμοποιώντας την εντολή «fdisk».

# fdisk -l | grep sd

4. Τώρα είναι ώρα να εξετάσετε τις τρεις συνδεδεμένες μονάδες δίσκου για τυχόν υπάρχοντα μπλοκ RAID σε αυτές τις μονάδες δίσκου χρησιμοποιώντας την ακόλουθη εντολή.

# mdadm -E /dev/sd[b-d]
# mdadm --examine /dev/sdb /dev/sdc /dev/sdd

Σημείωση: Από την παραπάνω εικόνα φαίνεται ότι δεν έχει εντοπιστεί ακόμη υπερ-μπλοκ. Έτσι, δεν υπάρχει ορισμένο RAID και στις τρεις μονάδες δίσκου. Ας αρχίσουμε να δημιουργούμε ένα τώρα.

Βήμα 2: Διαμέριση των δίσκων για RAID

5. Πρώτα και κύρια, πρέπει να χωρίσουμε τους δίσκους (/dev/sdb, /dev/sdc και / dev/sdd) πριν από την προσθήκη σε ένα RAID, Ας ορίσουμε λοιπόν το διαμέρισμα χρησιμοποιώντας την εντολή 'fdisk', πριν το προωθήσουμε στα επόμενα βήματα.

# fdisk /dev/sdb
# fdisk /dev/sdc
# fdisk /dev/sdd
Δημιουργία κατάτμησης /dev/sdb

Ακολουθήστε τις παρακάτω οδηγίες για να δημιουργήσετε ένα διαμέρισμα στη μονάδα δίσκου /dev/sdb.

  1. Πατήστε n για να δημιουργήσετε ένα νέο διαμέρισμα.
  2. Στη συνέχεια επιλέξτε P για το Κύριο διαμέρισμα. Εδώ επιλέγουμε Κύριο επειδή δεν έχουν οριστεί ακόμη διαμερίσματα.
  3. Στη συνέχεια επιλέξτε 1 για να είναι το πρώτο διαμέρισμα. Από προεπιλογή, θα είναι 1.
  4. Εδώ για το μέγεθος του κυλίνδρου, δεν χρειάζεται να επιλέξουμε το καθορισμένο μέγεθος, επειδή χρειαζόμαστε ολόκληρο το διαμέρισμα για RAID, επομένως απλώς πατήστε Enter δύο φορές για να επιλέξετε το προεπιλεγμένο πλήρες μέγεθος.
  5. Στη συνέχεια, πατήστε p για να εκτυπώσετε το διαμέρισμα που δημιουργήθηκε.
  6. Αλλάξτε τον τύπο. Εάν χρειάζεται να γνωρίζουμε όλους τους διαθέσιμους τύπους, πατήστε ‘L’.
  7. Εδώ, επιλέγουμε fd, καθώς ο τύπος μου είναι RAID.
  8. Στη συνέχεια πατήστε 'p' για να εκτυπώσετε το καθορισμένο διαμέρισμα.
  9. Στη συνέχεια χρησιμοποιήστε ξανά το 'p' για να εκτυπώσετε τις αλλαγές που έχουμε κάνει.
  10. Χρησιμοποιήστε το w για να γράψετε τις αλλαγές.

Σημείωση: Πρέπει να ακολουθήσουμε τα βήματα που αναφέρονται παραπάνω για να δημιουργήσουμε διαμερίσματα για μονάδες sdc & sdd επίσης .

Δημιουργία κατάτμησης /dev/sdc

Τώρα διαχωρίστε τις μονάδες δίσκου sdc και sdd ακολουθώντας τα βήματα που δίνονται στο στιγμιότυπο οθόνης ή μπορείτε να ακολουθήσετε τα παραπάνω βήματα.

# fdisk /dev/sdc
Δημιουργία κατάτμησης /dev/sdd
# fdisk /dev/sdd

6. Αφού δημιουργήσετε κατατμήσεις, ελέγξτε για αλλαγές και στις τρεις μονάδες δίσκου sdb, sdc και sdd.

# mdadm --examine /dev/sdb /dev/sdc /dev/sdd

or

# mdadm -E /dev/sd[b-d]

Σημείωση: Στην παραπάνω εικόνα. απεικονίστε τον τύπο είναι fd, δηλαδή για RAID.

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

Βήμα 3: Δημιουργία συσκευής md md0

8. Τώρα δημιουργήστε μια συσκευή Raid 'md0' (δηλαδή /dev/md0) και συμπεριλάβετε το επίπεδο raid σε όλα τα διαμερίσματα που δημιουργήθηκαν πρόσφατα (sdb1, sdc1 και sdd1) χρησιμοποιώντας την παρακάτω εντολή.

# mdadm --create /dev/md0 --level=5 --raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1

or

# mdadm -C /dev/md0 -l=5 -n=3 /dev/sd[b-d]1

9. Αφού δημιουργήσετε τη συσκευή raid, ελέγξτε και επαληθεύστε το RAID, τις συσκευές που περιλαμβάνονται και το επίπεδο RAID από την έξοδο mdstat.

# cat /proc/mdstat

Εάν θέλετε να παρακολουθήσετε την τρέχουσα διαδικασία κατασκευής, μπορείτε να χρησιμοποιήσετε την εντολή 'watch', απλώς περάστε από το 'cat /proc/mdstat' με την εντολή watch που θα ανανεώνετε την οθόνη κάθε 1 δευτερόλεπτο.

# watch -n1 cat /proc/mdstat

10. Μετά τη δημιουργία της επιδρομής, Επαληθεύστε τις συσκευές επιδρομής χρησιμοποιώντας την ακόλουθη εντολή.

# mdadm -E /dev/sd[b-d]1

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

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

# mdadm --detail /dev/md0

Βήμα 4: Δημιουργία συστήματος αρχείων για md0

12. Δημιουργήστε ένα σύστημα αρχείων για τη συσκευή ‘md0’ χρησιμοποιώντας το ext4 πριν από την προσάρτηση.

# mkfs.ext4 /dev/md0

13. Τώρα δημιουργήστε έναν κατάλογο κάτω από το '/mnt' και, στη συνέχεια, προσαρτήστε το δημιουργημένο σύστημα αρχείων στο /mnt/raid5 και ελέγξτε τα αρχεία στο σημείο προσάρτησης, θα δείτε τον κατάλογο χαμένο+βρέθηκε.

# mkdir /mnt/raid5
# mount /dev/md0 /mnt/raid5/
# ls -l /mnt/raid5/

14. Δημιουργήστε λίγα αρχεία στο σημείο προσάρτησης /mnt/raid5 και προσθέστε κάποιο κείμενο σε οποιοδήποτε από τα αρχεία για να επαληθεύσετε το περιεχόμενο.

# touch /mnt/raid5/raid5_tecmint_{1..5}
# ls -l /mnt/raid5/
# echo "tecmint raid setups" > /mnt/raid5/raid5_tecmint_1
# cat /mnt/raid5/raid5_tecmint_1
# cat /proc/mdstat

15. Πρέπει να προσθέσουμε μια καταχώριση στο fstab, διαφορετικά δεν θα εμφανιστεί το σημείο προσάρτησης μετά την επανεκκίνηση του συστήματος. Για να προσθέσουμε μια καταχώρηση, θα πρέπει να επεξεργαστούμε το αρχείο fstab και να προσθέσουμε την ακόλουθη γραμμή όπως φαίνεται παρακάτω. Το σημείο τοποθέτησης θα διαφέρει ανάλογα με το περιβάλλον σας.

# vim /etc/fstab

/dev/md0                /mnt/raid5              ext4    defaults        0 0

16. Στη συνέχεια, εκτελέστε την εντολή mount -av για να ελέγξετε εάν υπάρχουν σφάλματα στην καταχώριση fstab.

# mount -av

Βήμα 5: Αποθήκευση διαμόρφωσης Raid 5

17. Όπως αναφέρθηκε προηγουμένως στην ενότητα απαιτήσεων, από προεπιλογή το RAID δεν έχει αρχείο διαμόρφωσης. Πρέπει να το αποθηκεύσουμε χειροκίνητα. Εάν δεν ακολουθηθεί αυτό το βήμα, η συσκευή RAID δεν θα είναι σε md0, θα είναι σε κάποιον άλλο τυχαίο αριθμό.

Επομένως, πρέπει να αποθηκεύσουμε τη διαμόρφωση πριν από την επανεκκίνηση του συστήματος. Εάν η διαμόρφωση αποθηκευτεί, θα φορτωθεί στον πυρήνα κατά την επανεκκίνηση του συστήματος και το RAID θα φορτωθεί επίσης.

# mdadm --detail --scan --verbose >> /etc/mdadm.conf

Σημείωση: Η αποθήκευση της διαμόρφωσης θα διατηρήσει το επίπεδο RAID σταθερό στη συσκευή md0.

Βήμα 6: Προσθήκη ανταλλακτικών μονάδων δίσκου

18. Ποια είναι η χρήση της προσθήκης μιας εφεδρικής μονάδας; είναι πολύ χρήσιμο εάν έχουμε μια εφεδρική μονάδα δίσκου, εάν οποιοσδήποτε από τους δίσκους αποτύχει στη συστοιχία μας, αυτή η εφεδρική μονάδα θα ενεργοποιηθεί και θα ξαναχτίσει τη διαδικασία και θα συγχρονίσει τα δεδομένα από άλλους δίσκους, ώστε να μπορούμε να δούμε έναν πλεονασμό εδώ.

Για περισσότερες οδηγίες σχετικά με τον τρόπο προσθήκης εφεδρικής μονάδας και ελέγχου της ανοχής σφαλμάτων Raid 5, διαβάστε τα #Βήμα 6 και #Βήμα 7 στο παρακάτω άρθρο.

  1. Προσθήκη Spare Drive στο Raid 5 Setup

συμπέρασμα

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