Strona korzysta z plików cookies w celu realizacji usług i zgodnie z Polityką Plików Cookies.



14.07.2021

Platforma AQUILA

IBM zaprezentował platformę opartą na sztucznej inteligencji służącą do kompleksowej, w...
14.07.2021

Przenoszenie Javy do chmury

JBoss Enterprise
14.07.2021

Nowe okna

Windows 11
14.07.2021

Monitoring sieci

nVision 12.5
14.07.2021

Automatyczna ochrona

Nowości w FortiEDR
14.07.2021

Seria monitorów...

Firma Newline prezentuje serię monitorów interaktywnych MIRA.
14.07.2021

Modularne routery IoT

Cisco Catalyst
14.07.2021

Nowy poziom pracy

Radeon PRO W6000
14.07.2021

SI w monitoringu

Kamery i-PRO S-Series

HAProxy w praktyce

Data publikacji: 19-06-2015 Autor: Grzegorz Adamowicz

W poprzednim numerze „IT Professional” przedstawiliśmy możliwości HAProxy – narzędzia pozwalającego na równoważenie obciążenia serwerów i zapewnienie wysokiej dostępności serwisów WWW. W tym artykule pokażemy, jak stosować oprogramowanie do równoważenia ruchu na przykładzie popularnego silnika blogowego WordPress.

Doświadczenie uczy, że jeśli strona google.pl nie ładuje się w przeglądarce, to możemy mieć niemal stuprocentową pewność, że wystąpiły lokalne problemy z dostępem do sieci. Skąd przekonanie, że problem nie leży po stronie dostawcy usług? Ze znajomości architektury rozwiązań Google’a, która gwarantuje wysoką dostępność serwisów tej firmy. Uzyskanie takiej niezawodności wymaga jednak dużych nakładów pracy i planowania, a przede wszystkim użycia właściwych narzędzi. Choć Google używa zaawansowanych metod, na nasze potrzeby wystarczą rozwiązania dostępne w sieci. Jednym z nich jest właśnie aplikacja HAProxy.

Dla przypomnienia: równoważenie ruchu polega na utrzymywaniu jednego serwisu (na przykład strony internetowej) z użyciem wielu serwerów. Program, który zarządza równoważeniem obciążenia serwerów, nasłuchuje na portach, poprzez które klienci zewnętrzni łączą się z serwisami internetowymi i przekazuje zapytania do serwerów, na których działa docelowa aplikacja. Dzięki temu aplikacja równoważąca może zdecydować, do którego serwera przekazać dane połączenie. Takie działanie pozwala także na wewnętrzną separację różnych funkcji aplikacji, co z kolei zwiększa bezpieczeństwo wewnętrznej infrastruktury.

Oprócz serwisów WWW balansuje się również serwery FTP, NNTP, DNS oraz dostęp do baz danych. Oczywiście musimy również zadbać o to, by serwer lub urządzenie, które zawiaduje równoważeniem, nie stało się tzw. pojedynczym punktem podatności na awarię (SPOF, Single Point of Failure), co może doprowadzić do problemów związanych z dostępnością danej usługi.

> Algorytmy równoważenia

Ponieważ każda aplikacja może mieć inne potrzeby odnośnie do balansowania ruchu, powstało kilka algorytmów, których możemy użyć. Najprostszym i w niektórych zastosowaniach wystarczającym, jest round robin, który polega na przekierowywaniu klientów po kolei do każdego serwera. Pozostałe popularne algorytmy to: priorytetowy (priority), ważony (weighted balance), nadmiarowy (overflow), typu „najmniej używany” (least used) i najmniejszych opóźnień (lowest latency). Ponadto rozróżniamy równoważenie ruchu w warstwie czwartej (transportowej) i siódmej (aplikacji) modelu OSI sieci. Wymienione algorytmy skupiają się na warstwie czwartej, co w praktyce oznacza, że jeśli przyjdzie zapytanie od klienta o stronę pod adresem www.example.org/kontakt, aplikacja przekaże to zapytanie do serwera, który obsługuje www.example.org na porcie 80 (WWW).

Równoważenie ruchu w warstwie siódmej w praktyce polega na tym, że aplikacja balansująca decyduje o tym, do którego serwera przekazać zapytanie na podstawie jego zawartości. Pozwala to również na utrzymywanie różnych aplikacji, używających tej samej domeny i portu.

Pełna treść artykułu jest dostępna w papierowym wydaniu pisma.

.

Transmisje online zapewnia: StreamOnline

All rights reserved © 2019 Presscom / Miesięcznik "IT Professional"