Wyszukiwanie w witrynie

Jak skonfigurować i skonfigurować łączenie sieci lub tworzenie zespołów w RHEL/CentOS 7 — część 11


Gdy administrator systemu chce zwiększyć dostępną przepustowość oraz zapewnić redundancję i równoważenie obciążenia podczas przesyłania danych, funkcja jądra znana jako łączenie sieci pozwala wykonać to zadanie w opłacalny sposób.

Przeczytaj więcej o zwiększaniu lub ograniczaniu przepustowości w systemie Linux

Krótko mówiąc, łączenie oznacza agregację dwóch lub więcej fizycznych interfejsów sieciowych (zwanych urządzeniami podrzędnymi) w jeden logiczny interfejs (zwany głównym). Jeśli wystąpi problem z konkretną kartą sieciową (NIC), komunikacja nie będzie znacząco zakłócona, o ile pozostałe karty sieciowe pozostaną aktywne.

Przeczytaj więcej o łączeniu sieciowym w systemach Linux tutaj:

  1. Networking Teaming lub NiC Bondin w RHEL/CentOS 6/5
  2. Łączenie sieciowych kart sieciowych lub tworzenie zespołów w systemach opartych na Debianie
  3. Jak skonfigurować łączenie sieci lub tworzenie zespołów w systemie Ubuntu

Włączanie i konfigurowanie łączenia sieci lub tworzenia zespołów

Domyślnie moduł jądra łączenia nie jest włączony. Dlatego będziemy musieli go załadować i upewnić się, że jest trwały w różnych butach. W przypadku użycia z opcją --first-time, modprobe ostrzeże nas, jeśli załadowanie modułu nie powiedzie się:

modprobe --first-time bonding

Powyższe polecenie załaduje moduł łączenia dla bieżącej sesji. Aby zapewnić trwałość, utwórz plik .conf w /etc/modules-load.d o opisowej nazwie, np. /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

Teraz zrestartuj serwer i po ponownym uruchomieniu upewnij się, że moduł łączący został załadowany automatycznie, jak widać na ryc. 1:

W tym artykule użyjemy 3 interfejsów (enp0s3, enp0s8 i enp0s9) do utworzenia wiązania o wygodnej nazwie bond0.

Aby utworzyć bond0, możemy użyć nmtui, interfejsu tekstowego do kontrolowania NetworkManager. Wywołany bez argumentów z wiersza poleceń, nmtui wyświetla interfejs tekstowy, który pozwala edytować istniejące połączenie, aktywować połączenie lub ustawić nazwę hosta systemu.

Wybierz Edytuj połączenie –> Dodaj –> Połącz, jak pokazano na Rys. 2:

Na ekranie Edytuj połączenie dodaj interfejsy podrzędne (w naszym przypadku enp0s3, enp0s8 i enp0s9) i nadaj im opisową nazwę (profil) (na przykład odpowiednio NIC #1, NIC #2 i NIC #3).

Dodatkowo będziesz musiał ustawić nazwę i urządzenie dla wiązania (odpowiednio TecmintBond i bond0 na rys. 3) oraz adres IP dla bond0, wprowadź adres bramy i adresy IP serwerów DNS.

Pamiętaj, że nie musisz wprowadzać adresu MAC każdego interfejsu, ponieważ nmtui zrobi to za Ciebie. Możesz pozostawić wszystkie pozostałe ustawienia jako domyślne. Więcej szczegółów można znaleźć na rys. 3.

Gdy skończysz, przejdź na dół ekranu i wybierz OK (patrz rys. 4):

I jesteś skończony. Teraz możesz wyjść z interfejsu tekstowego i wrócić do wiersza poleceń, gdzie włączysz nowo utworzony interfejs za pomocą polecenia ip:

ip link set dev bond0 up

Następnie możesz zobaczyć, że bond0 jest UP i ma przypisany 192.168.0.200, jak widać na rys. 5:

ip addr show bond0

Testowanie łączenia sieci lub tworzenia zespołów w systemie Linux

Aby sprawdzić, czy bond0 rzeczywiście działa, możesz albo pingować jego adres IP z innego komputera, albo, co jeszcze lepsze, obserwować tabelę interfejsu jądra w czasie rzeczywistym (cóż, czas odświeżania w sekundach jest podawany przez opcja -n), aby zobaczyć, jak ruch sieciowy jest rozdzielany pomiędzy trzema interfejsami sieciowymi, jak pokazano na rys. 6.

Opcja -d służy do podświetlania zmian, gdy one wystąpią:

watch -d -n1 netstat -i

Należy zauważyć, że istnieje kilka trybów wiązania, każdy z charakterystycznymi cechami. Są one udokumentowane w sekcji 4.5 podręcznika Administracja siecią Red Hat Enterprise Linux 7. W zależności od potrzeb wybierzesz jedno lub drugie.

W naszej obecnej konfiguracji wybraliśmy tryb Round-robin (patrz rys. 3), który zapewnia transmisję pakietów począwszy od pierwszego urządzenia slave w kolejności sekwencyjnej, kończąc na ostatnim urządzeniu slave i zaczynając od znowu pierwszy.

Alternatywa działania okrężnego jest również nazywana trybem 0 i zapewnia równoważenie obciążenia i odporność na błędy. Aby zmienić tryb łączenia, możesz użyć nmtui, jak wyjaśniono wcześniej (patrz także rys. 7):

Jeśli zmienimy to na Aktywna kopia zapasowa, zostaniemy poproszeni o wybranie urządzenia podrzędnego, które będzie jedynym aktywnym interfejsem w danym momencie. Jeśli taka karta ulegnie awarii, jeden z pozostałych niewolników zajmie jej miejsce i stanie się aktywny.

Wybierzmy enp0s3 jako podstawowego slave'a, sprowadźmy bond0 ponownie w dół i w górę, zrestartujmy sieć i wyświetlmy tabelę interfejsu jądra (patrz rys. 8).

Zwróć uwagę, że transfery danych (TX-OK i RX-OK) są teraz realizowane tylko przez enp0s3:

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

Alternatywnie możesz zobaczyć wiązanie tak, jak widzi je jądro (patrz rys. 9):

cat /proc/net/bonding/bond0

Streszczenie

W tym rozdziale omówiliśmy, jak skonfigurować i skonfigurować łączenie w Red Hat Enterprise Linux 7 (działa również na CentOS 7 i Fedora 22+ ) w celu zwiększenia przepustowości wraz z równoważeniem obciążenia i redundancją transferu danych.

Poświęcając czas na odkrywanie innych sposobów tworzenia więzi, opanujesz koncepcje i praktyki związane z tym tematem certyfikacji.

Jeśli masz pytania dotyczące tego artykułu lub sugestie, którymi możesz się podzielić z resztą społeczności, daj nam znać, korzystając z poniższego formularza komentarza.