load balancing
DESCRIPTION
Instytut Informatyki, Automatyki i Robotyki. Load balancing. Uproszczony schemat struktury równoważącej obciążenia serwerowe. Techniki realizowane w warstwie 4. - PowerPoint PPT PresentationTRANSCRIPT
Load balancing
Instytut Informatyki, Automatyki i Robotyki
22
Uproszczony schemat struktury równoważącej obciążenia serwerowe
33
Techniki realizowane w warstwie 4• Równoważenie polegające na
rozpraszaniu pakietów sieciowych adresowanych na wirtualny adres IP miedzy serwery posiadające zdolność do realizacji żądań odpowiadających usłudze
• Rozwiązanie programowe• Duża wydajność• Mała elastyczność funkcji• Ilość jednoczesnych połączeń zależna od
dostępnej pamięci
44
Rozpraszanie ruchu w warstwie 4• Algorytm karuzelowy (ang. round robin, rr)
– najprostszy algorytm rozpraszający ruch;– ruch rozdzielany jest cyklicznie między wszystkie serwery
replikowane.
• Algorytm karuzelowy z wagami (ang. weight round robin, wrr) – modyfikacja algorytmu karuzelowego; – każdy serwer replikowany otrzymuje wagę, która
uwzględniona jest przy rozpraszaniu ruchu;– serwery z największą wagą otrzymują najwięcej ruchu; – najlepiej wykorzystać można, gdy serwery replikowane
nie posiadają takich samych zasobów.
55
Rozpraszanie ruchu w warstwie 4• Metoda najmniejszej liczby połączeń (ang.
least connected, lc) – rozprasza ruch uwzględniając liczbę połączeń z danym
serwerem replikowanym;– Wybrany zostaje serwer, który ma najmniej
ustanowionych połączeń.
• Metoda najmniejszej liczby połączeń z wagami (ang. weight least connected, wlc) – modyfikacja algorytmu najmniejszej liczby
połączeń; – Ruch rozpraszany zostaje na podstawie informacji o
liczbie połączeń z danym serwerem replikowanym oraz jego wadze.
66
Rozpraszanie ruchu w warstwie 4• Metoda najmniejszej liczby połączeń
wykorzystująca informację o docelowym przeznaczeniu pakietu (ang. locality-based least-connection, lblc). – utworzenie w pamięci tablicy, w której zapisywany jest
docelowy adres IP pakietu oraz informacje o przyporządkowanym mu serwerze;
– cały ruch adresowany na konkretny adres IP kierowany jest do jednego serwera;
– w momencie, kiedy jest on przeładowany lub reguła nie istnieje w pamięci, przyporządkowanie odbywa się według zasad metody najmniejszej liczby połączeń (lc), jednocześnie w pamięci tworzona zostaje nowa reguła przyporządkowania;
– algorytm przekazuje pakiety adresowane na dany adres IP serwerowi, który go obsługuje.
77
Rozpraszanie ruchu w warstwie 4• Metoda najmniejszej liczby połączeń
wykorzystująca informację o docelowym przeznaczeniu pakietu z replikacją (ang. Locality-Based Least-Connection with Replication, lblcr). – Metoda ta działa tak samo jak metoda lblc z tą różnicą, iż
przyporządkowanie uwzględnia nie jeden serwer a grupę serwerów.
• Metoda uwzględniająca docelowy adres IP (ang. destination hashing, dh). – W pamięci tworzona jest statyczna tablica mieszająca
(ang. hash table) przyporządkowująca docelowy adres IP do konkretnego serwera replikowanego.
88
Rozpraszanie ruchu w warstwie 4
• Metoda uwzględniająca źródłowy adres IP (ang. source hashing, sh). – W pamięci tworzona jest statyczna tablica mieszająca (ang.
hash table) przyporządkowująca źródłowy adres IP do konkretnego serwera replikowanego.
• Metoda najkrótszego spodziewanego opóźnienia (ang. shortest expected delay, sed) – wybór serwera, dla którego szacowane opóźnienie będzie
najmniejsze.
• Metoda braku oczekiwania (ang. never queue)– przyporządkowanie serwera w stanie bezczynności. – w przypadku, gdy wszystkie serwery są w użyciu, metoda ta
zachowuje się jak metoda najkrótszego spodziewanego opóźnienia (sed).
99
Czego nam potrzeba?
Informacje dostępne dla mechanizmów równoważenia na poziomie 4:
•Adres źródłowy IP•Źródłowy port•Docelowy adres IP•Docelowy port
1010
Równoważnie obciążenia z translacją adresów sieciowych
1111
Równoważnie obciążenia z bezpośrednią odpowiedzią serwera
1212
Równoważnie obciążenia wykorzystujące protokoły tunelowania
1313
Techniki realizowane w warstwie 7.• Działanie w trybie buforowania wstecznego
(ang. reverse proxy)• Ukrycie rozpraszania ruchu przed
użytkownikami• Zależność od liczby połączeń oraz specyfiki
przesyłanego ruchu• Funkcja wspomagania bezpiecznego
połączenia (SSL)• Funkcja filtrowania zapytań –
zapamiętywanie powtarzalnych
1414
Techniki realizowane w warstwie 7.
1515
Metody wyboru serwera aplikacyjnego• Rozdzielanie przy pomocy algorytmu
szeregowania - podstawowa metoda rozpraszania ruchu między serwery aplikacyjne.
• Analiza składnikowa adresu URL. Analizie poddana zostaje ścieżka adresu URL w zapytaniu od klienta.
1616
Metody wyboru serwera aplikacyjnego
• Stan podtrzymania. Rozwiązanie to realizowane jest przy pomocy ciasteczek (ang. cookies).
1717
LB v4 vs v7
• Layer 4 Load Balancer:– skalowalny– niezawodny– wysoka dostępność– równoważenie obciążeń
• Layer 7 Load Balancer– nieskalowalny – niska jakość (wymaga mocnego sprzętu) – złożony kod programowy– wymaga kodu klienta dla każdego protokołu + procedura
bezpieczeństwa– pojedynczy punkt awarii– serwery farmy nie mogą ulegać awarii, zatem:– nie zalecany dla systemów wysokiej dostępności– obciążenie rozproszone jednak nie-zrównoważone
1818
Łączenie rozwiązań