Szukam rozwiązania do równoważenia obciążenia i strategii przełączania awaryjnego, głównie dla dużych aplikacji internetowych. Mamy wiele usług do zrównoważenia, takich jak web, MySQL i wiele innych usług opartych na HTTP lub TCP. Ale nie jestem pewien, jakie są ich zalety i wady i które powinienem wybrać.
Najważniejszą rzeczą, która odróżnia oba rozwiązania (LVS, HAproxy), jest to, że jedno działa na warstwie 4 (LVS), a drugie na warstwie 7 (HAproxy). Zauważ, że odniesienia do warstw pochodzą z modelu sieciowego OSI.
Jeśli to zrozumiesz, będziesz mógł użyć jednego we właściwym miejscu. Na przykład: jeśli musisz balansować wyłącznie na podstawie liczby połączeń (powiedzmy), moduł równoważenia obciążenia warstwy 4 powinien wystarczyć; z drugiej strony, jeśli chcesz wyrównać obciążenie w oparciu o czas odpowiedzi HTTP, potrzebujesz wyższej warstwy LB.
Wadami używania wyższego poziomu LB jest potrzebny zasób (dla tej samej ilości, powiedzmy, ruchu). Plusy są oczywiste - pomyśl „inspekcja na poziomie pakietu”, „routing protokołu” itp. - rzeczy o wiele bardziej skomplikowane niż proste „routing pakietów”.
Ostatnią kwestią, o której chcę wspomnieć, jest to, że HAproxy to przestrzeń użytkownika (myśl „znacznie łatwiej dostosować / dostosować”, ale wolniej (wydajność)), podczas gdy LVS jest w przestrzeni jądra (myśl „szybko jak diabli”, ale sztywny jak jądro) ). Nie zapomnij również o „aktualizacji LVS może oznaczać zmianę jądra - ergo, restart” ...
Podsumowując, użyj odpowiedniego narzędzia do właściwej pracy.
Uwielbiam sposób, w jaki ludzie nadal używają warstw OSI, mimo że nigdy nie zostały zaimplementowane w rzeczywistości.
kubańczyk
9
Powinieneś użyć obu: HAProxy to świetny moduł równoważenia obciążenia, a LVS to rozwiązanie do przełączania awaryjnego i unikania pojedynczego punktu awarii.
+1, z wyjątkiem tego, że HAProxy służy głównie do użycia HTTP, ponieważ w przeciwnym razie ukrywa źródłowy adres IP żądania, co może stanowić problem (na przykład dla SMTP RBL)
Antoine Benkemoun
3
Używam HAProxy dla czystych serwerów tcp i działa bardzo dobrze. Ukryte źródło Ip stanowi problem dla całego modułu równoważenia obciążenia.
lg.
2
Uważam, że ukryte źródło IP jest jednym z powodów, dla których moduły równoważące obciążenia nie są często używane w usługach SMTP.
Stefan Lasiewski
3
lvs i ha proxy robią to samo. Wolę LVS, naprawdę szybszy, ponieważ działa na jądrze.
Diego Woitasen
1
@AntoineBenkemoun można użyć trybu przezroczystego HAProxy, aby wyświetlić adres IP klienta.
Powinieneś użyć obu: HAProxy to świetny moduł równoważenia obciążenia, a LVS to rozwiązanie do przełączania awaryjnego i unikania pojedynczego punktu awarii.
źródło