Πώς να ρυθμίσετε και να ρυθμίσετε τη σύνδεση ή τη ομαδοποίηση δικτύου στο RHEL/CentOS 7 - Μέρος 11


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

Διαβάστε περισσότερα σχετικά με τον τρόπο αύξησης ή περιορισμού εύρους ζώνης στο Linux

Με απλά λόγια, το bonding σημαίνει τη συγκέντρωση δύο ή περισσότερων φυσικών διεπαφών δικτύου (που ονομάζονται slaves) σε μια ενιαία, λογική (που ονομάζεται master). Εάν μια συγκεκριμένη NIC (Κάρτα Διασύνδεσης Δικτύου) αντιμετωπίσει πρόβλημα, οι επικοινωνίες δεν επηρεάζονται σημαντικά όσο η άλλη (ες) παραμένουν ενεργές.

Διαβάστε περισσότερα για τη σύνδεση δικτύου σε συστήματα Linux εδώ:

  1. Network Teaming ή NiC Bondin σε RHEL/CentOS 6/5
  2. Δίκτυο NIC Bonding ή Teaming σε συστήματα που βασίζονται στο Debian
  3. Τρόπος ρύθμισης παραμέτρων Network Bonding ή Teaming στο Ubuntu

Ενεργοποίηση και ρύθμιση παραμέτρων σύνδεσης ή ομαδοποίησης δικτύου

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

modprobe --first-time bonding

Η παραπάνω εντολή θα φορτώσει τη μονάδα σύνδεσης για την τρέχουσα περίοδο λειτουργίας. Για να διασφαλίσετε την επιμονή, δημιουργήστε ένα αρχείο .conf μέσα στο /etc/modules-load.d με ένα περιγραφικό όνομα, όπως /etc/modules-load .d/bonding.conf:

echo "# Load the bonding kernel module at boot" > /etc/modules-load.d/bonding.conf
echo "bonding" >> /etc/modules-load.d/bonding.conf

Τώρα επανεκκινήστε τον διακομιστή σας και μόλις γίνει επανεκκίνηση, βεβαιωθείτε ότι η μονάδα bonding έχει φορτωθεί αυτόματα, όπως φαίνεται στην Εικ. 1:

Σε αυτό το άρθρο θα χρησιμοποιήσουμε 3 διεπαφές (enp0s3, enp0s8 και enp0s9) για να δημιουργήσουμε έναν δεσμό, που ονομάζεται βολικά bond0.

Για να δημιουργήσουμε το bond0, μπορούμε είτε να χρησιμοποιήσουμε το nmtui, τη διεπαφή κειμένου για τον έλεγχο του NetworkManager. Όταν καλείται χωρίς ορίσματα από τη γραμμή εντολών, το nmtui εμφανίζει μια διεπαφή κειμένου που σας επιτρέπει να επεξεργαστείτε μια υπάρχουσα σύνδεση, να ενεργοποιήσετε μια σύνδεση ή να ορίσετε το όνομα κεντρικού υπολογιστή συστήματος.

Επιλέξτε Επεξεργασία σύνδεσης –> Προσθήκη –> Δέσμευση όπως φαίνεται στο Εικ. 2:

Στην οθόνη Επεξεργασία σύνδεσης, προσθέστε τις εξαρτημένες διεπαφές (enp0s3, enp0s8 και enp0s9 στην περίπτωσή μας) και δώστε τους ένα περιγραφικό όνομα (Προφίλ) (για παράδειγμα, NIC #1, NIC #2 και NIC #3, αντίστοιχα).

Επιπλέον, θα χρειαστεί να ορίσετε ένα όνομα και μια συσκευή για τον δεσμό (TecmintBond και bond0 στην Εικ. 3, αντίστοιχα) και μια διεύθυνση IP για το bond0, εισαγάγετε μια διεύθυνση πύλης και τις IP των διακομιστών DNS.

Σημειώστε ότι δεν χρειάζεται να εισαγάγετε τη διεύθυνση MAC κάθε διεπαφής, καθώς το nmtui θα το κάνει για εσάς. Μπορείτε να αφήσετε όλες τις άλλες ρυθμίσεις ως προεπιλεγμένες. Δείτε το Σχ. 3 για περισσότερες λεπτομέρειες.

Όταν τελειώσετε, μεταβείτε στο κάτω μέρος της οθόνης και επιλέξτε OK (δείτε Εικ. 4):

Και τελειώσατε. Τώρα μπορείτε να βγείτε από τη διεπαφή κειμένου και να επιστρέψετε στη γραμμή εντολών, όπου θα ενεργοποιήσετε τη διεπαφή που δημιουργήθηκε πρόσφατα χρησιμοποιώντας την εντολή ip:

ip link set dev bond0 up

Μετά από αυτό, μπορείτε να δείτε ότι το bond0 είναι UP και του έχει εκχωρηθεί 192.168.0.200, όπως φαίνεται στην Εικ. 5:

ip addr show bond0

Δοκιμή σύνδεσης δικτύου ή ομαδοποίησης σε Linux

Για να επαληθεύσετε ότι το bond0 λειτουργεί πραγματικά, μπορείτε είτε να κάνετε ping στη διεύθυνση IP του από άλλο μηχάνημα ή, ακόμα καλύτερα, να παρακολουθήσετε τον πίνακα διεπαφής του πυρήνα σε πραγματικό χρόνο (καλά, ο χρόνος ανανέωσης σε δευτερόλεπτα δίνεται από το επιλογή -n) για να δείτε πώς κατανέμεται η κυκλοφορία δικτύου μεταξύ των τριών διεπαφών δικτύου, όπως φαίνεται στην Εικ. 6.

Η επιλογή -d χρησιμοποιείται για την επισήμανση των αλλαγών όταν συμβαίνουν:

watch -d -n1 netstat -i

Είναι σημαντικό να σημειωθεί ότι υπάρχουν αρκετοί τρόποι συγκόλλησης, ο καθένας με τα ιδιαίτερα χαρακτηριστικά του. Τεκμηριώνονται στην ενότητα 4.5 του οδηγού διαχείρισης δικτύου Red Hat Enterprise Linux 7. Ανάλογα με τις ανάγκες σας, θα επιλέξετε το ένα ή το άλλο.

Στην τρέχουσα εγκατάσταση, επιλέξαμε τη λειτουργία Round-robin (βλ. Εικ. 3), η οποία διασφαλίζει ότι τα πακέτα μεταδίδονται ξεκινώντας από την πρώτη υποτελή με διαδοχική σειρά, τελειώνοντας με την τελευταία υποτελή και ξεκινώντας από την πρώτος πάλι.

Η εναλλακτική λύση Round-robin ονομάζεται επίσης mode 0 και παρέχει εξισορρόπηση φορτίου και ανοχή σφαλμάτων. Για να αλλάξετε τη λειτουργία συγκόλλησης, μπορείτε να χρησιμοποιήσετε το nmtui όπως εξηγήθηκε προηγουμένως (δείτε επίσης Εικ. 7):

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

Ας επιλέξουμε το enp0s3 για να είναι ο κύριος υποτελής, φέρουμε το bond0 κάτω και πάνω ξανά, επανεκκινούμε το δίκτυο και εμφανίζουμε τον πίνακα διεπαφής πυρήνα (βλ. Εικ. 8).

Σημειώστε πώς οι μεταφορές δεδομένων (TX-OK και RX-OK) γίνονται πλέον μόνο μέσω enp0s3:

ip link set dev bond0 down
ip link set dev bond0 up
systemctl restart network

Εναλλακτικά, μπορείτε να δείτε τον δεσμό όπως τον βλέπει ο πυρήνας (βλ. Εικ. 9):

cat /proc/net/bonding/bond0

Περίληψη

Σε αυτό το κεφάλαιο συζητήσαμε πώς να ρυθμίσετε και να ρυθμίσετε τη σύνδεση στο Red Hat Enterprise Linux 7 (λειτουργεί επίσης σε CentOS 7 και Fedora 22+ ) προκειμένου να αυξηθεί το εύρος ζώνης μαζί με την εξισορρόπηση φορτίου και τον πλεονασμό για τις μεταφορές δεδομένων.

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

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