Usiłuję zdecydować między zastosowaniem rozwiązania równoważenia obciążenia warstwy 4 dla mojego centrum danych lub rozwiązaniem warstwy 7. Niestety (dla mojego rozsądku) mój przypadek użycia jest na tyle prosty, że oba rozwiązania działałyby dobrze, unikając większości słabości i nie wykorzystując w rzeczywistości mocnych stron. Niezależnie od tego, z jakiego rozwiązania się skorzystamy, musi ono mieć wysoką dostępność i wysoką przepustowość. Ale planujemy go używać tylko do równoważenia obciążenia klastra serwerów internetowych, z których żaden nie ma żadnych wymagań dotyczących „lepkiego” zarządzania sesjami (cookie lub IP), złożonych reguł przepisywania - lub, w tym przypadku, jakichkolwiek reguł przepisywania w wszystko.
Elementy równoważące obciążenie zostaną podłączone do dwóch przełączników, oba z niezależnym połączeniem do warstwy agregacji centrum danych i połączone ze sobą za pomocą drzewa Rapid Spanning Tree i dowolnego zastrzeżonego protokołu używanego przez przełączniki do wirtualizacji. Równoważniki obciążenia będą również połączone ze sobą za pomocą kabla krosowego. Wszystkie serwery w klastrze są podłączone do obu przełączników. Wszystko, co muszą zrobić moduły równoważące obciążenie, to skierować na nich ruch.
Ponieważ jest to tylko HTTP, mogę użyć rozwiązania równoważenia obciążenia warstwy 7, takiego jak HAProxy lub nginx. Ale mógłbym również użyć projektu LVS z ldirectord lub keepalived lub cokolwiek innego.
Próbowałem rozbić zalety i wady, jak je widzę, ale to kończy się na praniu. Co byś polecił i dlaczego? Czy coś brakuje?