Mamy aplikację SaaS, która musi być wysoce dostępna. Mamy już drogi, dobrze utrzymany klaster przełączania awaryjnego Hyper-V, ale dzisiaj centrum danych, w którym hostujemy ten klaster, miało pięciogodzinną przerwę w zasilaniu, która całkowicie nas przerwała. Zastanawiamy się teraz, czy lepszym rozwiązaniem byłoby użycie serwerów w dwóch oddzielnych centrach danych. Zakładając, że otrzymujemy całą replikację plików zaplecza i replikację danych działającą między tymi dwiema lokacjami, zastanawiamy się, jak obsłużyć routing frontonu - nic dziwnego, jak podchodzimy do problemu, zawsze kończymy z funkcją równoważenia obciążenia pojedynczy punkt awarii.
Pytanie brzmi: jak możemy ustawić równoważenie obciążenia między dwoma witrynami hostingowymi, aby moduł równoważenia obciążenia nie był pojedynczym punktem awarii? Czy istnieje sposób użycia dwóch oddzielnych modułów równoważących obciążenie, po jednym w każdej witrynie? Czy powinniśmy zastanawiać się nad systemem DNS typu round-robin?
Musisz wyrównać obciążenie modułów równoważących obciążenie.
Możesz to zrobić za pomocą round-robin DNS, ale takie podejście ma wiele problemów. Nie możesz kontrolować klientów, którzy przechowują wpisy w pamięci podręcznej dłużej niż chcesz i nie możesz zmusić ruchu do przejścia do określonej lokalizacji.
Możesz to również zrobić za pomocą usługi Global Server Load Balancing (GSLB). Jest to bardziej zaawansowany sposób na wykorzystanie DNS, aby zapewnić widoczność wielu centrów danych z Internetu. Krótko mówiąc, konfigurujesz mechanizm podziału ruchu na plasterki i używasz DNS do wybrania plasterka. Używamy skrótu usługi rozpoznawania nazw DNS skonfigurowanego do wyszukiwania klienta. Inni ludzie używają geografii, aby dotrzeć do „najbliższego” centrum danych. Musisz dodać jakiś mechanizm, aby szybko usunąć adres IP z GSLB w przypadku awarii jednego punktu awarii dla tego centrum danych lub klastra.
http://www.eukhost.com/web-hosting/kb/global-server-load-balancing/
Wreszcie, niektórzy naprawdę zaawansowani ludzie rozwiązują ten problem za pomocą Anycast DNS. To znów próbuje wykorzystać „najbliższe” podejście do centrum danych. Anycasting twojej usługi oznacza, że będziesz musiał wyeliminować wszelkie „stanowości”. To może okazać się trudne.
źródło
Wiele lat później… ale dla tych, którzy wciąż szukają, wydają się być najbardziej przystępnymi / prostymi rozwiązaniami dla przełączania awaryjnego DNS:
źródło