Korzystanie z usługi DNS do płynnego przełączania usług sieciowych
Categories:
Załóżmy, że domena usługi to example.domain, a oryginalny adres IP serwera to A. Ze względu na migrację serwera lub zmianę adresu IP, nowy adres IP serwera to B. Aby zapewnić niewidoczne dla użytkownika przejście, możemy wykorzystać usługę DNS do płynnego przełączania usług sieciowych.
- Oryginalny stan usługi:
example.domainrozwiązuje się do adresu IPA - Stan przejściowy:
example.domainrozwiązuje się do adresów IPAiB - Nowy stan usługi:
example.domainrozwiązuje się do adresu IPB, usunięcie adresu IPA
Uwaga: Gdy użytkownik otrzyma dwa adresy rozwiązań, klient wybierze jeden z adresów do połączenia, a w przypadku niepowodzenia połączenia spróbuje innych adresów, co zapewnia dostępność usługi.
Ze względu na to, że rozwiązywanie DNS ma pamięć podręczną, aby zapewnić płynne przełączanie, należy utrzymać stan przejściowy przez pewien czas, aby upewnić się, że wszystkie pamięci podręczne wygasną.
W moim przypadku muszę przeprowadzić migrację usługi dns, więc w stanie przejściowym mogę ustawić “przepisanie DNS”, aby przyspieszyć proces migracji.
Reguła przepisania usługi A:

Reguła przepisania usługi B:

Rozszerzony oryginalny proces migracji:
- Oryginalny stan usługi:
example.domainrozwiązuje się do adresu IPA - Stan przejściowy:
example.domainjest przepisywane doAiBw usłudzedns A, a w usłudzedns Bjest przepisywane doB - Nowy stan usługi:
example.domainrozwiązuje się do adresu IPB, usunięcie adresu IPA
Gdy użytkownik nadal korzysta z usługi dns A, może uzyskać dwa adresy, z połową prawdopodobieństwa wybierze usługę dns A.
Druga połowa prawdopodobieństwa przełączy się na usługę dns B. Gdy usługa dns B ulegnie awarii, przełączy się z powrotem na dns A. Gdy usługa dns B nie ulegnie awarii, uzyska tylko jeden adres, więc użytkownik pozostanie w usłudze dns B.
W ten sposób możemy stopniowo zmniejszać zużycie zasobów usługi dns A zamiast bezpośrednio ją zatrzymywać, realizując bardziej płynną migrację.