Co to jest równowaga obciążenia?
Kubernetes Management Container Management jest niezbędny do sprawnego uruchomienia aplikacji. Balancer obciążenia jest głównym wymogiem osiągnięcia dobrego zarządzania kontenerem i wysokiej skalowalności w Kubernetes. Jak omówiono wcześniej, między klientem-serwer a usługą źródłową znajduje się. Jedynym celem balansu obciążenia jest upewnienie się, że przepływ sieci jest regulowany między różnymi serwerami. W Kubernetes ruch sieciowy jest kierowany z serwera zasobów na wiele usług Kubernetes. Zatem potrzebny jest organ regulacyjny do zarządzania tym przepływem danych między różnymi serwerami i usługami Kubernetes. Balancer obciążenia zapobiega przeciążeniu serwera i poprawia czas odpowiedzi serwera w Kubernetes. To pozwala użytkownikom bardziej efektywnie korzystać z kontenerów.
Dopóki jego pojemność nie zostanie osiągnięta, równoważenie ładunków Kubernetes wysyła połączenia na pierwszy serwer puli. Następujący serwer odbiera nowe połączenia. Ta strategia jest przydatna w sytuacjach, w których maszyny wirtualne są drogie, takie jak ustawienia hostowane.
W Kubernetes plik konfiguracji usługi wygląda na coś w rodzaju:
Widać, że typem jest LoadBalancer na zrzuceniu ekranu, który jest wcześniej dostarczany. Wpisując loadbalancer w obszarze typu pliku konfiguracyjnego serwisowego, równoważenie obciążenia jest włączone. Wyświetlane są również dodatkowe szczegóły, takie jak apiversion, mianem, nazwa i specyfikacja. Balancer obciążenia w tym przypadku, który prowadzi ruch do strąków zaplecza, jest zarządzany i kierowany przez dostawcę usług w chmurze.
Zasada pracy wyważania na obciążenie
Najpierw wyjaśnijmy wspólne nieporozumienie. Kiedy usłyszysz słowo moduł równoważenia obciążenia w Kubernetes, może ono pomylić, ponieważ termin moduł równoważenia obciążenia w Kubernetes jest używany zamiennie do wielu celów. Jednak w tym artykule skupimy się na dwóch rzeczach - związanych z usługami Kubernetes z środowiskami zewnętrznymi i zarządzaniem obciążeniem sieciowym z tymi usługami.
Kapsuły w kubernetes odnoszą się do najmniejszych wdrażanych jednostek zawierających zaplanowane zadania. Grupa kapsułów tworzy pojemnik. Składniki kubernetes są ustrukturyzowane na podstawie funkcji. Wszystkie pojemniki, które mają wykonać podobną funkcję, są zorganizowane w strąki. Podobnie wszystkie powiązane kapsuły są następnie łączone w celu utworzenia usługi. Pamiętajmy, że kapsuły w Kubernetes nie są trwałe. Są wciąż niszczeni i tworzone za każdym razem.
W konsekwencji adresy IP kapsułów wciąż się zmieniają. Po ponownym uruchomieniu POD, Kubernetes automatycznie przypisuje nowe adresy IP do nowo utworzonych PODS. Z drugiej strony, kiedy mówimy o grupie kapsuł, które są znane zbiorowo jako usługi, mają one trwały adres IP. W przeciwieństwie do osoby, nie zmienia się to po ponownym uruchomieniu. To nazywa się klaster IP. Pojemniki w tym konkretnym klastrze mogą uzyskać dostęp tylko do klastra IP. Nie możesz jednak uzyskać dostępu do IP klastra ze środowiska zewnętrznego. Tam jest ważny równowaga obciążenia. Ponieważ nie możesz bezpośrednio uzyskać dostępu do IP klastra spoza klastra, potrzebujesz interwencji. Ta interwencja dotyczy wszystkich żądań spoza klastra i zarządza ruchem sieciowym.
Tworzenie okrągłego obciążenia ROBIN
Istnieje wiele rodzajów równoważenia obciążenia. W tym artykule szczególnie atakujemy jeden rodzaj. Porozmawiamy o rodzaju równoważenia obciążenia, który jest poświęcony równoważeniu przepływu sieci. W Kubernetes ten równoważenie obciążenia zajmuje się odpowiednim rozkładem ruchu sieciowego do usług Kubernetes. Ten rozkład odbywa się zgodnie z zestawem wstępnie zaprogramowanych instrukcji lub algorytmów.
Round Robin Load Balancer to jeden z najprostszych sposobów zarządzania żądaniami wejściowymi wśród pul serwerów. Jest to jedna z strategii korzystania z funkcji Kubernetes, takich jak zarządzanie i skalowalność, w pełni. Kluczem do lepszego i bardziej wydajnego korzystania z usług Kubernetes jest równoważenie ruchu do strąków.
Okrągły algorytm Robina ma na celu skierowanie ruchu do zestawu kapsułów w określonej kolejności. Tutaj należy zauważyć planowane zamówienie. Oznacza to, że konfiguracja leży w twoich rękach.
Krok 1: Załóżmy, że skonfigurowałeś pięć strąków w algorytmie okrągłym. Balancer obciążenia wyśle żądania do każdej kapsuły w określonej sekwencji. Początkowy kapsułek otrzymuje pierwsze żądanie. Drugi kapsułek otrzymuje drugie żądanie.
Krok 2: Podobnie trzecie żądanie jest wysyłane do trzeciego kapsuły i tak dalej. Ale sekwencja się nie zmienia. Jedną ważną rzeczą jest to, że algorytm Round-Robin nigdy nie zajmuje się zmiennymi, takimi jak bieżące obciążenie na serwerze. To oznacza, że jest statyczny. Właśnie dlatego nie jest preferowany w ruchu produkcyjnym.
Głównym powodem, dla którego powinieneś pochylać się w kierunku algorytmu okrągłego-robinowego, jest to, że jego implementacja jest kawałkiem ciasta. Może to jednak zagrozić dokładności ruchu. Wynika to z faktu, że okrągłe wyważone na obciążenie Robin nie mogą zidentyfikować różnych serwerów. Istnieją różne warianty równoważenia obciążenia w celu poprawy dokładności, takich jak obciążony okrągły robin, dynamiczny okrągły robin itp.
Wniosek
Ten artykuł zawiera czytelnikom informacje o fundamentach na temat wyważników i ich działania. Jednym z najważniejszych zadań administratorów Kubernetes jest równoważenie obciążenia. Dodatkowo rozmawialiśmy o strukturze Kubernetes i o tym, jak ważny jest balans z obciążeniem, aby poprawić uruchamianie klastrów Kubernetes. W tym artykule dowiedzieliśmy się o rodzajem równowagi obciążenia, który jest okrągłym modułem równoważenia obciążenia Robin.