17Jul

Jak skonfigurować agregację łączy sieciowych( 802.3ad) w systemie Ubuntu

Czy musisz pompować duże ilości danych jednocześnie do wielu klientów, używając tylko jednego adresu IP?Korzystając z "agregacji łączy", możemy połączyć kilka oddzielnych kart sieciowych w jeden gigantyczny NIC.

Omówienie

Agregacja łączy została zaprojektowana tak, aby umożliwić zwiększenie dostępnej przepustowości i elastyczności sieci, bez całkowitej zmiany infrastruktury( z kosztem, który wiązałby się z takim posunięciem).

Poza tym, jako administratorzy systemu, zwykle mamy niewielki wpływ na działanie aplikacji działających na naszych serwerach. Jeśli więc nadejdzie taki czas, że musimy zwiększyć dostępną przepustowość sieci do aplikacji, możemy mieć do czynienia z całkowitym przeprojektowaniem systemu. Prawdopodobnie wiesz, że zmiana interakcji klient-serwer, finansowanie ukierunkowanych żądań funkcji od dostawcy aplikacji lub aktualizacja do nowej generacji sprzętu sieciowego, wymaga dużo pracy lub wymaga budżetu lub obu. Na sekundę przed rozwikłaniem czasu i $$ $, pomyśl, że efektem zastosowania technologii "Link agregacja" jest to, że ponieważ odbywa się to na poziomie infrastruktury( OS, karty sieciowe i przełączniki), aplikacja może pozostać całkowicie niepomnado zmiany, gdy nagle uzyskuje się łączną przepustowość wielu połączeń sieciowych.

Co więcej, w dzisiejszych czasach technologia ta jest standardową częścią większości urządzeń sieciowych, po prostu trzeba być "geekiem", aby z niej korzystać.Tak więc "pamiętajcie o ogniach piekła, które was wykuło!" I pokażcie wszystkim, z czego jesteśmy stworzeni, ściskając każdą uncję wydajności dostępnej z obecnej infrastruktury.

Image by renjith krishnan

Wymagania wstępne

  • Ten przewodnik został napisany przy użyciu Ubuntu server9.10 x64, dlatego zakłada się, że masz również system oparty na Debianie.
  • Twój system ma więcej niż jedną kartę sieciową.
  • Zobaczysz, że używam VIM jako programu redaktora, tylko dlatego, że jestem do tego przyzwyczajony. .. możesz użyć dowolnego edytora, który chcesz.

Linuxowa strona rzeczy

Będziemy używać pakietu "ifenslave"( interface zniewolenie), który jest w stanie wziąć karty sieciowe systemu iw ciemność je związać.Należy zauważyć, że podczas pracy w systemie Windows ten typ konfiguracji jest wykonywany na poziomie sterownika karty NIC, a więc jest ograniczony tylko do interfejsów dostępnych na tej karcie, dzięki pakietowi ifenslave można wziąć dowolną kartę sieciową w systemie i związać ją( zakładając, że są one tej samej kategorii prędkości, tj. 1000 Mb / s).

W tym przewodniku będziemy konfigurować łącze do używania standardu 802.3ad zarówno na przełączniku( przy użyciu LACP), jak i na serwerze. Warto zauważyć, że pakiet "ifenslave" włącza tryby agregacji, które nie wymagająwspółpraca przełącznika. Jednak nie używałem ich jeszcze osobiście, więc nie mogę ręczyć za nich. Pamiętaj o tym na wypadek, gdy nie możesz połączyć się z infrastrukturą sieciową lub jeśli twoja karta sieciowa nie obsługuje sterowników "Ethtool".

Instalowanie pakietu ifenslave

Ta procedura została utworzona na systemie Ubuntu 9.10, który miał wyjątkowy błąd w pakiecie "ifenslave", który nie wywołuje związanego interfejsu podczas uruchamiania( udokumentowane tutaj).Jeśli zainstalujesz ifenslave w wersji 10.10, automatycznie otrzymasz wersję z poprawką.Jednak dla tych, którzy nie korzystają z najnowszych i najlepszych, będziesz musiał ręcznie zainstalować nowszą wersję pakietu ifenslave.

* Dziękuję Alexander Usyskin za pomoc w rozwiązaniu tego problemu.

Aby normalnie zainstalować pakiet( dla użytkowników 10.10 i wyższych):

sudo aptitude install ifenslave

Aby ręcznie zainstalować nowszą wersję, pobierz wersję, która pasuje do twojego systemu operacyjnego( x86 lub x64), umieść ją w katalogu tmp i zainstalujprzy użyciu polecenia dpkg .

Dla 32-bitowego systemu operacyjnego:

sudo dpkg -i /tmp/ ifenslave-2.6_1.1.0-15ubuntu1_i386.deb

Dla 64-bitowego systemu operacyjnego:

sudo dpkg -i /tmp/ ifenslave-2.6_1.1.0-15ubuntu1_amd64.deb

Konfigurujpołączony interfejs

Teraz po zainstalowaniu pakietu ifenslave możemy skonfigurować połączony interfejs. W tym celu edytuj plik konfiguracyjny :

sudo vim /etc/network/ interfejsy

Skomentuj wszystkie interfejsy, które będą częścią wiązania i dodaj:

auto bond0 iface bond0 inet dhcp bond-slaves all bond-mode 4 bond-miimon 100 bond-primary eth1 eth2 eth3 eth4 eth0

Powyższe przykłady ustawieńwiązanie do: użyj trybu 4( 802.3ad), uzyskaj adres IP z DHCP i użyj wszystkich kart sieciowych na serwerze dla połączenia( serwer, o którym mowa, miał 4 interfejsy z karty sieciowej o poczwórnej karcie i pokładowej karty sieciowej).

Infrastruktura

Jak wspomniano w przeglądzie, używamy "trybu 4"( 802.3ad) w tym przewodniku, więc musimy ustawić przełącznik na odbierającym końcu, aby użyć agregacji na portach, do których podłączamy serwer.

Teraz oczywiście nie mogę przejrzeć każdej możliwej konfiguracji urządzenia, więc podam dwa przykłady i mam nadzieję, że da ci to wystarczająco dużo, aby szukać informacji na temat dokumentacji dostawcy lub Google dla twojego urządzenia.

Juniper J-web

W tym segmencie wyjaśniono, jak skonfigurować interfejsy( porty) na urządzeniu Juniper, aby użyć "agregacji łączy"( LACP) za pomocą interfejsu GUI zarządzania J-web.

Uwaga: Użyłem EX3200 do zrzutu ekranu i instrukcji szczegółowo opisanych poniżej, jednak J-web jest dość podobny dla innych urządzeń Juniper, które używają JUNOS .

Odłączanie interfejsu

Ten krok jest konieczny, ponieważ natychmiast po uruchomieniu, każdy interfejs urządzenia Juniper jest powiązany z domyślnym Vlan zwanym "unit0".Podczas gdy Juniper posiada dokumentację dotyczącą konfigurowania agregacji linków, znalazłem ten pierwszy i podstawowy krok, którego brakowało. Bez wykonania tego kroku pozostałe kroki opisane w dokumentacji po prostu nie zadziałają, a będziesz drapał się w głowę, czego brakuje.

Dziękujemy pracownikowi wsparcia Juniper za dostarczenie tego rozwiązania GUI( ostatecznie).

  1. Na głównym ekranie J-web kliknij Konfiguruj.
  2. Następnie kliknij "Narzędzia CLI".
  3. Wybierz "Wskaż i kliknij CLI".
  4. Następnie kliknij "edytuj" w pobliżu nagłówka "Interfejsy".
  5. Wybierz interfejs, który ma być częścią agregacji, a następnie kliknij "Edytuj" obok niego.

  6. W sekcji "Jednostka" usuń powiązanie, jak pokazano na rysunku.
  7. Kliknij OK.
  8. Powtórz dla wszystkich interfejsów, które mają być częścią agregacji.
  9. Po zakończeniu użyj "Zatwierdź", aby zastosować zmiany.

Grupowanie interfejsów w agregacje

Po zdekodowaniu interfejsów możemy tworzyć łącza agregacyjne, grupując je.

  1. Na głównym ekranie J-web kliknij "Interfejsy".
  2. Następnie kliknij "Link Aggregation".
  3. Wybierz "Dodaj".
  4. Gdy pojawi się wyskakujące okienko, wybierz "aktywne".
  5. Kliknij "Dodaj".
  6. W oknie wyskakującym wybierz interfejsy, które będą częścią łącza( przytrzymaj klawisz Ctrl dla wielu).
  7. Kliknij "OK", aż znikną wszystkie okna konfiguracji.
  8. Zrobione.

Przełączniki sieciowe HP zarządzane ProCurve

Bezpłatne instrukcje firmy Juniper, tutaj są instrukcje dla urządzeń zarządzanych przez HP ProCurve.

HP 1800G

  1. Kliknij na "Trunks".
  2. Kliknij "Ustawienia LACP"
  3. Zaznacz pole wyboru dla portów, które mają być agregowane, w tym przykładzie użyłem portów 3 i 4.

  4. Kliknij przycisk Zastosuj u dołu strony.
  5. Zrobione.

HP 1810G

  1. Kliknij "Trunks".
  2. Kliknij "Konfiguracja magistrali".
  3. Zaznacz pole wyboru "Utwórz".
  4. Nadaj łączu nazwę.
  5. Kliknij "Zastosuj".
  6. Kliknij "Członkostwo Trunk".
  7. Wybierz "Identyfikator bagażu" z rozwijanej listy, w naszym przykładzie używamy "Trunk2".
  8. Kliknij na porty, które chcesz dołączyć do agregacji, w naszym przykładzie użyliśmy portów 11 i12.
  9. Kliknij "Zastosuj".
  10. Dokonaj zmian na stałe, przechodząc do "konserwacji".
  11. Następnie przejdź do podmenu "Save configurations".
  12. Kliknij przycisk "Zapisz konfigurację".
  13. Zrobione.

Pokaż to białe światło, z którego robisz