Strona główna
» Jak
»
Konfigurowanie niezawodnego przełączania awaryjnego sieci Ethernet z łączeniem SLES 15
Konfigurowanie niezawodnego przełączania awaryjnego sieci Ethernet z łączeniem SLES 15
Jeśli host SUSE Linux Enterprise Server 15 ma dwie karty Ethernet, ale traci dostęp do sieci w przypadku awarii jednego kabla, skonfiguruj interfejs bond0 w YaST, dodaj obie karty i wybierz opcję active-backup za pomocą miimon=100. Umieść konfigurację IP serwera na porcie bond, a nie na żadnym z portów fizycznych. Zapewnia to redundancję łącza bez konieczności stosowania przełącznika obsługującego protokół LACP.
Poniższe kroki wykorzystują usługę sieciową Wicked, która jest zazwyczaj używana w przypadku obciążeń serwera SLES. Zmiana interfejsu obsługującego sesję SSH może spowodować rozłączenie, dlatego należy przeprowadzić zmianę z konsoli lokalnej, zdalnej konsoli zarządzania lub w zatwierdzonym oknie konserwacji ze ścieżką odzyskiwania.
Sprawdź adaptery i wybierz właściwy tryb łączenia
Dwie dostępne karty sieciowe nie tworzą automatycznie pary awaryjnej. Bez połączenia każdy interfejs jest zarządzany oddzielnie, a aplikacja korzystająca z jednej trasy może utracić łączność w przypadku awarii łącza. Połączenie w systemie Linux przedstawia kilka portów fizycznych jako jeden interfejs logiczny.
Przed wprowadzeniem zmian należy zidentyfikować rzeczywiste nazwy interfejsów, zapisać bieżące adresy IPv4/IPv6 hosta, bramę, sieć VLAN i ustawienia DNS oraz sprawdzić, czy oba porty przełącznika docierają do docelowej sieci:
ip -br link
ip -br addr
ip route
systemctl status network
Na przykładowych ekranach dwa interfejsy fizyczne to enp1s0i enp2s0. Nazwy te mają charakter poglądowy; Twój serwer może mieć inne nazwy. Przykładowy adres 192.0.2.20/24to adres wyłącznie dokumentacyjny, a nie wartość do wdrożenia w sieci.
Trybu Active-Backup (tryb 1) należy używać , gdy celem jest zachowanie usługi w przypadku awarii portu lub kabla. Jeden port transmituje, a drugi pozostaje dostępny do przełączenia awaryjnego. 802.3ad (LACP, tryb 4) należy wybrać tylko wtedy, gdy przełącznik sieciowy jest jawnie skonfigurowany dla odpowiedniej grupy agregacji LACP, z kompatybilnymi ustawieniami prędkości i dupleksu. LACP może dystrybuować różne przepływy ruchu między łączami, ale nie gwarantuje dwukrotnego zwiększenia prędkości jednego połączenia. SUSE ostrzega przed rozciąganiem zwykłych połączeń między wieloma przełącznikami, chyba że producent przełącznika obsługuje taką konfigurację. Zobacz procedury i ograniczenia dotyczące połączeń sieciowych SUSE .
Skonfiguruj bond0 w YaST
1. Otwórz Ustawienia sieciowe i zidentyfikuj dostępne porty
Uruchom sudo yast2lub otwórz YaST lokalnie, a następnie przejdź do System > Ustawienia sieciowe . Na karcie Przegląd zidentyfikuj oba interfejsy Ethernet, które zamierzasz połączyć. Jeśli jeden z interfejsów obsługuje obecnie adres zarządzania serwera, przed zmianą jego konfiguracji zorganizuj dostęp do konsoli. Nie wybieraj interfejsu bezprzewodowego ani interfejsu już dedykowanego dla innego mostu bez wcześniejszego zaplanowania tej topologii.
Przegląd Ustawień sieciowych identyfikuje enp1s0 i enp2s0 przed utworzeniem połączonego urządzenia.
2. Utwórz interfejs łączący
Kliknij Dodaj , zmień Typ urządzenia na Powiązanie i kliknij Dalej . YaST otworzy konfigurację karty sieciowej dla nowego połączenia logicznego. Nie próbuj, aby oba adaptery fizyczne niezależnie posiadały ten sam adres statyczny.
W widoku Dodaj nową kartę sieciową opcja Bonding jest wybrana jako nowy typ urządzenia.
3. Przypisz ustawienia IP obligacji
Na karcie Adres wybierz opcję Adres dynamiczny , jeśli Twoja infrastruktura zapewnia odpowiednią dzierżawę DHCP lub Statycznie Przypisany Adres IP dla serwera o stałym adresie. W przypadku wdrożenia statycznego przenieś poprzedni adres zarządzania i podsieć do węzła i upewnij się, że stary interfejs fizyczny nie zachowuje zduplikowanego adresu IP. Potwierdź bramę domyślną na karcie Routing oraz DNS w polu Nazwa hosta/DNS , jeśli jest to właściwe; nie zakładaj, że adresowanie statyczne wypełnia je automatycznie.
Karta Adres zawiera przykładowy statyczny adres IP i maskę podsieci przypisane do węzła, nie zaś do jego członków.
4. Wybierz oba porty, kontynuuj monitorowanie łącza i zastosuj
Otwórz porty Bond i sprawdź dwa docelowe adaptery. W opcjach sterownika Bond wybierz active-backupopcję prostej redundancji i zachowaj miimon=100. Stan łącza członkowskiego jest sprawdzany co 100 milisekund; nie gwarantuje to wykrycia wszystkich awarii w nadrzędnym serwerze. Wybierz Dalej , zaakceptuj wszelkie monity o dostosowanie starej konfiguracji interfejsu indywidualnego, wybierając Kontynuuj , i kliknij OK, aby zatwierdzić nowe połączenie. Możesz na krótko utracić dostęp, gdy adres IP zostanie przeniesiony na bond0.
Wybrano oba porty Ethernet z aktywnym łączeniem zapasowym i 100-milisekundowym interwałem monitorowania MII.
Te widoki ekranu skupiają się na elementach sterujących opisanych w instrukcjach łączenia YaST w systemie SUSE SLES 15 SP7 ; dokładny układ lub sformułowania mogą się różnić w zależności od zainstalowanej wersji YaST oraz graficznego lub tekstowego interfejsu.
Użyj plików ifcfg, jeśli YaST jest niedostępny
Konfiguracja ręczna to rozwiązanie awaryjne dla administratorów, którzy nie mogą korzystać z YaST. SUSE dokumentuje /etc/sysconfig/network/ifcfg-*format hostów zarządzanych przez Wicked. Przed kontynuacją wykonaj kopię zapasową oryginalnych plików sieciowych poza /etc/sysconfig/networkkatalogiem Live i zachowaj dostęp do konsoli:
sudo mkdir -p /root/network-bond-backup
sudo cp -a /etc/sysconfig/network/ifcfg-enp1s0 /root/network-bond-backup/
sudo cp -a /etc/sysconfig/network/ifcfg-enp2s0 /root/network-bond-backup/
Jeśli brakuje pliku źródłowego o określonej nazwie, sprawdź katalog i utwórz kopię zapasową pliku zamiast zakładać jego nazwę. W tym przykładowym pliku ze statycznym adresem IP utwórz plik /etc/sysconfig/network/ifcfg-bond0o następującej zawartości, zastępując nazwy interfejsów i adresy rzeczywistymi wartościami:
Plik każdego członka ifcfgnie może już mieć własnej konfiguracji IP. Na przykład, w obu plikach ifcfg-enp1s0i umieść tylko te wiersze ifcfg-enp2s0:
BOOTPROTO='none'
STARTMODE='hotplug'
Zachowaj wszelką niezbędną konfigurację tras i resolverów w całym systemie, zgodną z nowym połączeniem. Sprawdź konfigurację i uruchom interfejs logiczny za pomocą Wicked:
sudo wicked show-config
sudo wicked ifup all bond0
Użyj tego sudo wicked ifreload bond0polecenia po późniejszych edycjach działającego połączenia. Nie należy go używać systemctldo uruchamiania ani zatrzymywania pojedynczego urządzenia połączonego; SUSE określa wickedto zadanie. Obsługiwane parametry pliku można znaleźć w podręczniku SUSE dotyczącym konfiguracji połączenia oraz na stronie instalacji lokalnej man 5 ifcfg-bonding.
Rozwiązywanie problemów z obligacją, która nie działa
Bond istnieje, ale nie ma adresu IP: Sprawdź, czy adres został przypisany do bond0, a nie do członka, i potwierdź ustawienia serwera DHCP lub adresu statycznego. Brak bramy lub nieprawidłowa sieć VLAN może uniemożliwić dostęp do serwera, nawet gdy oba porty zgłaszają nośną. Sprawdź ip routerzeczywistą konfigurację portów przełącznika przed ponownym uruchomieniem sieci.
Łącze zgłasza awarię elementu: Sprawdź kabel, stan portu przełącznika, wybór interfejsu i komunikaty sterownika. Upewnij się, że nazwy elementów są BONDING_SLAVE0zgodne BONDING_SLAVE1. ip -br linkMonitorowanie łącza wykrywa istotne zmiany interfejsu/nośnika, ale nie wszystkie możliwe awarie poza bezpośrednio podłączonym przełącznikiem.
Po przełączeniu na 802.3ad występuje awaria ruchu: Najpierw sprawdź ustawienia grupy LACP i portu przełącznika. Ustawienie połączenia na LACP, podczas gdy porty przełącznika pozostają zwykłymi, niezależnymi portami, oznacza niezgodność konfiguracji. Jeśli celem jest po prostu przełączenie awaryjne, należy powrócić do trybu aktywnego zapasowego, zamiast niepotrzebnie wprowadzać agregację przełączników.
Sprawdź konfigurację i przetestuj działanie funkcji failover
Sprawdź aktywne połączenie, jego interfejsy członkowskie i routing:
sudo wicked ifstatus --verbose bond0
ip -br addr show bond0
ip route
cat /proc/net/bonding/bond0
Połączenie powinno mieć przypisany adres IP, jego łącze powinno być aktywne, a plik stanu jądra powinien zawierać listę obu interfejsów członkowskich. W trybie aktywnej kopii zapasowej sprawdź pole „ Aktualnie aktywny moduł podrzędny” oraz status MII każdego z członków . Dokładny wynik zależy od sterownika i konfiguracji; dokumentacja dotycząca łączenia jądra Linux opisuje ten interfejs stanu.
Na koniec należy potwierdzić łączność z rzeczywistą bramą domyślną i klientami usługi, którzy muszą dotrzeć do hosta. Podczas zatwierdzonego okna konserwacji należy na krótko rozłączyć lub wyłączyć tylko aktualnie aktywne łącze, monitorując jednocześnie stan połączenia i przeprowadzając ciągły test łączności; urządzenie będące w stanie gotowości powinno przejąć kontrolę, a łączność powinna zostać przywrócona. Następnie należy przywrócić połączenie i upewnić się, że oba urządzenia są sprawne. Jeśli sieć nadal jest niedostępna, należy skorzystać z dostępu do konsoli, aby przywrócić kopie zapasowe konfiguracji urządzeń, zamiast wprowadzać dodatkowe zmiany w trybie „ślepym” przez SSH.