Patrzę na kilka możliwych opcji równoważenia obciążenia.
Do tej pory jestem ograniczony do następujących opcji:
Moduł równoważenia obciążenia serwera DNS, równoważenie do klastra serwerów tomcat, z terakotą do replikacji sesji. Plusy - nie musisz kupować nowego zestawu. Wady - DNS lb może ciągle przekierowywać do uszkodzonego serwera.
Sprzętowy moduł równoważenia obciążenia, bezpośrednio do klastra serwerów tomcat. Plusy - może mieć drugie pole do przełączania awaryjnego lb. Wady - wydatek.
Moduł równoważenia obciążenia serwera Apache. Plusy - ankiety lb Apache dla uszkodzonych serwerów. Wady - serwer Apache to pojedynczy punkt awarii, a ponadto trzeba kupić inny serwer.
Czy są jakieś inne opcje, które powinienem rozważyć?
Dzięki.
Aktualizacja: Dziękujemy za wszystkie dotychczasowe odpowiedzi + 1 dookoła. Jeszcze nie akceptuję odpowiedzi, aby napływać kolejne pomysły.
źródło
Odpowiedzi:
nie wybrałbym lb opartego na dns - dokładnie z tego powodu, dla którego wymieniasz.
nginx lub lakier mogą być drugą opcją lb / fail-over, która znajduje się przed aplikacjami i działa jak odwrotny serwer proxy. wymagają więcej uwagi niż sprzęt, ale pozwoli ci zaoszczędzić sporo pieniędzy. pamiętaj o umieszczeniu tych równoważników również w jakimś klastrze [aktywna-pasywna z pulsem załatwi sprawę].
źródło
Jeśli patrzysz na urządzenia równoważące obciążenie, naprawdę nie możesz się pomylić z F5 Big-IP
edytuj: Powodem, dla którego mówię, że wybrałem Big-IP jest to, że jest to miłe urządzenie dla administratorów serwerów, którzy nie mają dużego doświadczenia z urządzeniami sieciowymi. Ma ładny interfejs internetowy z prawie nieograniczonymi opcjami konfiguracji i raportowania. Są to najbardziej niezawodne i najtańsze ze wszystkich opcji równoważenia obciążenia „dla przedsiębiorstw”.
Oto link do badania opcji dostarczania aplikacji w 2007 r .: Wyniki Gartnera
źródło
Sugeruję użycie HAProxy . Jest bardzo szybki. Możesz także uniknąć pojedynczego punktu awarii, używając dwóch równoważników obciążenia z CARP (* BSD) lub UCARP / LVS (Linux)
źródło
Używamy korektorów punktowych Coyote (sprzętowe usługi równoważenia obciążenia) od lat i jesteśmy z nich bardzo zadowoleni. Mogą nie mieć wszystkich funkcji F5, ale nadal mają wiele funkcji i kosztują znacznie mniej. Wydajność i niezawodność były doskonałe.
źródło
Zwykle wybieram sprzętowe LB, ponieważ często potrafią poradzić sobie z dużym ruchem, są często „prostsze”, więc są w stanie hartować lepiej / łatwiej, a czasami mogą również zarządzać innymi problemami bezpieczeństwa, takimi jak ataki SYN-flood na sprzęcie. Korzystam z Foundry, ale jest duży wybór (F5, Cisco itp.) - jednak bardzo szybko :(
źródło
Cisco GSS (Global Site Selector) to serwer DNS, który również sprawdza stan. Będzie to oczywiście droższa opcja niż standardowy serwer DNS. Strona internetowa ze szczegółowymi informacjami tutaj: http://www.cisco.com/en/US/products/hw/contnetw/ps4162/index.html
Jak wspomniano Chopper3, sprzętowe równoważenie obciążenia prawdopodobnie zapewni lepszą wydajność, ale za to zapłacisz.
Funkcje, których możesz szukać to: odciążanie SSL, obsługa vlan, konteksty, klastrowanie, obsługa protokołów routingu oraz wsparcie / interakcja z różnymi aplikacjami (np. Pliki cookie HTML i modyfikacja nagłówka).
źródło
Czy spojrzałeś na ldirectord ?
Działa na systemie Linux, może działać z pulsem na tych samych maszynach, na których jest równoważony z obciążeniem (a tym samym ma wbudowaną nadmiarowość) - lub oczywiście na własnym pudełku przed nimi, jest łatwy w konfiguracji, lekki i bardzo zdolny .
źródło
Przekonałem się, że skrzyżowanie było doskonałym środkiem równoważącym obciążenie. Zajmował się naszym obciążeniem produkcyjnym przez dobre siedem miesięcy, podczas gdy faceci z sieci rozwiązali problem sprzętowy z modułem równoważenia obciążenia Cisco.
źródło
Napisałem oparty na oprogramowaniu moduł równoważenia obciążenia, który nie wymaga osobnego komputera.
Wadą jest to, że nie jest tak naprawdę gotowy do produkcji - ale jeśli chcesz go przetestować w sieci testowej, byłbym zadowolony.
Puszysta gromada jest tutaj
Jest to w zasadzie powierzchownie podobne do NLB Microsoftu (tak myślę) - chociaż nie mam ich źródła i nie wiem dokładnie, jak działa ich.
Oczywiście nie monitorujemy automatycznie warstwy aplikacji, ale możesz napisać coś, co to zrobi i odpowiednio zmieni wagi lub usunie węzły.
EDYCJA: Nie powiedziałeś, jaki system operacyjny, klaster Fluffy jest w tej chwili tylko dla Linuksa.
źródło
keepalived to kolejny linuksowy moduł równoważący obciążenie, który obsługuje kilka algorytmów równoważenia obciążenia (oczywiście) i VRRP w celu tworzenia redundantnych instancji z automatycznym przełączaniem awaryjnym, gdy moduł równoważenia obciążenia ulegnie awarii
źródło
Jeśli pieniądze nie stanowią problemu, uzyskaj sprzętowy moduł równoważenia obciążenia.
Firma, dla której pracuję, używa Apache do zarządzania naszymi serwerami Tomcat, a moduł równoważenia obciążenia znajduje się w tym samym pudełku, co niektóre kocury (kocięta używają portów wewnętrznych). Wkrótce przejdziemy do dedykowanego modułu równoważenia obciążenia. Wkrótce jednak przeprowadzimy się do Nginx, konfiguracja jest dla mnie łatwiejsza, a całość znacznie lżejsza niż Apache. W zależności od architektury sieci radzę również użyć wewnętrznego „pływającego adresu IP” dla modułu równoważenia obciążenia i uruchomić coś w rodzaju pulsu, aby w razie potrzeby zmienić adres IP na inne urządzenie. To dodałoby możliwości przełączania awaryjnego bez martwienia się o problemy z propagacją DNS.
źródło
Skonfigurowałem rozwiązanie z DNSMadeEasy . Mają fajny screencast dotyczący przełączania awaryjnego DNS. Mają rozsądną cenę. W naszym systemie wdrożyliśmy prostą usługę, która „pinguje” różne komponenty w naszym systemie (baza danych, kolejka JMS, połączenie S3) i zwraca OK, z którego DNSMadeEasy może skorzystać. Ilekroć nadejdzie wyjątek, DNSMadeEasy usunie ten serwer z listy serwerów, które odpowiadają podczas wyszukiwania DNS.
źródło
Czy spojrzałeś na Perlbal?
www.danga.com/perlbal/
źródło
Cześć @toolkit, czy kiedykolwiek wdrożyłeś NGinX / Varnish w swojej misji LoadBalancer (LB)? jeśli tak, jakie były twoje wyniki? (jeśli nie masz nic przeciwko dzieleniu się z resztą z nas ;-)
Wystarczy podsumować powyższe (i zamieścić wzmiankę o ZMQ)
Podstawowe równoważenie obciążenia
Bardziej zaawansowany
źródło