Monitorowanie z Sześciu Lokalizacji Geograficznych jednocześnie i jeśli Nawet Jeden Zawiedzie, Wiem Dokładnie Gdzie jest Problem

Poranek rozpoczął się od zgłoszenia od klienta z Singapuru informującego, że strona internetowa nie działa. Pulpit nawigacyjny monitorowania, który działał z jednego serwera we Frankfurcie, pokazywał wszystko na zielono. Wszystkie sprawdzenia przechodzą. Czasy odpowiedzi normalne. Strona była dostępna. Tyle że nie była dostępna, przynajmniej nie dla kogoś kierowanego przez określone ścieżki sieci azjatyckiej. Problem okazał się być regionalną problemem routowania na dostawcy nadrzędnym, który wpłynął na ruch z Azji Południowo-Wschodniej, pozostawiając dostęp z Europy i Ameryki Północnej całkowicie niezmieniony. System monitorowania, wiernie sprawdzający z jednego punktu widzenia w Niemczech, nie miał możliwości wykrycia problemu, którego nie widział z miejsca, w którym się znajdował.

Ten incydent i kilka podobnych, które nastąpiły w ciągu następnego roku, wykazały fundamentalne ograniczenie monitorowania z jednej lokalizacji, które wydaje się oczywiste z perspektywy czasu, ale jest zaskakująco łatwo przeoczyć. Internet nie jest jednolitą siecią, w której wszystkie ścieżki prowadzą do tego samego miejsca przez tę samą infrastrukturę. Jest to sieć połączonych systemów autonomicznych, umów peering, węzłów krawędziowych CDN i resolwerów DNS, które tworzą różne doświadczenia dla użytkowników w różnych regionach geograficznych. Strona internetowa może być doskonale dostępna z Europy, podczas gdy jednocześnie nie można jej osiągnąć z części Azji, w pełni funkcjonalna z Ameryki Północnej, podczas gdy doświadcza utraty pakietów z Ameryki Południowej, i szybka z jednego miasta, podczas gdy wolna z innego miasta w tym samym kraju.

Rozwiązanie, które wdrażane jest na uptime.yeb.to, to jednoczesne monitorowanie z sześciu lokalizacji geograficznych rozsianych na wielu kontynentach. Każde sprawdzenie jest uruchamiane ze wszystkich sześciu lokalizacji w tym samym oknie czasowym, a wyniki są porównywane w celu ustalenia, czy problem jest globalny czy regionalny. Gdy wszystkie sześć lokalizacji zgłasza awarię, strona jest naprawdę niedostępna wszędzie. Gdy jedna lub dwie lokalizacje zgłaszają awarię, podczas gdy inne pokazują sukces, problem jest regionalny, a lokalizacje, w których nastąpiła awaria, natychmiast zawężają, gdzie Problem znajduje się. Ta triangulacja geograficzna przekształca monitorowanie z binarnego sygnału „dostępne lub niedostępne" w subtelną mapę dostępności, która odzwierciedla sposób, w jaki internet rzeczywiście funkcjonuje.

Dlaczego Monitorowanie z Jednej Lokalizacji Tworzy Niebezpieczne Martwe Punkty

Większość usług monitorowania czasu dostępności, w tym wiele znanych, domyślnie sprawdza z jednej lokalizacji lub pozwala użytkownikom wybrać jeden podstawowy region monitorowania. To podejście doskonale sprawdza się w przypadku wykrywania całkowitych awarii, w których oryginalny serwer jest wyłączony i nikt nigdzie nie może uzyskać dostępu do witryny. W przypadku tych katastrofalnych niepowodzeń, jedną sondę wystarczy, ponieważ problem jest uniwersalny. Ale całkowita awaria serwera to tylko jedna kategoria awarii, i coraz bardziej nie jest to nawet najczęstsza. Nowoczesna infrastruktura sieci web, z jej warstwami CDN, modułów równoważące obciążenie, tryb failover DNS i buforowanie krawędziowe, sprawiła, że całkowite awarie są rzadkie, podczas gdy częściowe, regionalne i sporadyczne awarie stają się częstsze.

Problemy związane z CDN są najczęstszym źródłem rozbieżności regionalnych. Sieci dostarczania treści działają, buforując treść na serwerach krawędziowych rozmieszczonych na całym świecie, a każdy serwer krawędziowy służy odwiedzającym, którzy znajdują się geograficznie najbliżej. Gdy węzeł krawędziowy CDN w określonym regionie doświadcza problemów, niezależnie od tego, czy jest to awaria sprzętu, błędna konfiguracja czy przeciążenie pojemności, odwiedzający kierowani do tego węzła krawędziowego doświadczają obniżonej wydajności lub całkowitej niedostępności, podczas gdy odwiedzający kierowani do zdrowych węzłów krawędziowych nie widzą żadnego problemu. Monitor z jednej lokalizacji, który przypadkiem jest kierowany do zdrowego węzła krawędziowego, będzie raportować wszystko jako normalne, podczas gdy cały region liczby odwiedzających jest dotknięty.

Problemy z propagacją DNS tworzą kolejną klasę awarii regionalnych. Gdy rekordy DNS są aktualizowane, zmiany rozprzestrzeniają się przez globalną infrastrukturę DNS z różnymi prędkościami w zależności od wartości TTL, zachowania buforowania resolwera i określonej ścieżki rozdzielczości, którą następuje każdy region. Podczas okna propagacji, niektóre regiony mogą rozwiązać domenę na stary adres IP, podczas gdy inne rozwiązują go na nowy. Jeśli stary IP nie obsługuje już ruchu, regiony nadal wskazujące go doświadczają awarii, którą regiony już wskazane na nowy IP nigdy nie zobaczą. Konfiguracja monitorowania multi-region to wykrywa natychmiast, ponieważ niektóre sondy będą się nie powieść, podczas gdy inne się powiodą, tworząc wzór charakterystyczny dla problemów propagacji DNS i wyraźny od problemów na poziomie serwera.

Sześć Sond i Co Każdy Wzór Awarii Ujawnia

Moc sześciu jednoczesnych sond polega nie tylko na wykrywaniu awarii, ale na ich diagnozowaniu. Różne wzory awarii odpowiadają różnym kategoriom problemów, i doświadczony operator może często zidentyfikować przyczynę gruntową z samego wzoru monitorowania, zanim nawet otworzy okno terminala. Gdy wszystkie sześć sond ulegnie awarii jednocześnie z błędami timeout połączenia, oryginalny serwer lub jego sieć prawdopodobnie nie są dostępne, sugerując awarię serwera, awarię dostawcy hostingu lub problem na poziomie sieci w centrum danych. Gdy wszystkie sześć sond nie powiedzie się z odpowiedziami błędów HTTP, takimi jak 502 lub 503, serwer jest osiągalny, ale aplikacja jest zepsuta, sugerując błąd wdrażania, awarię bazy danych lub awarię na poziomie aplikacji.

Gdy jedna lub dwie sondy ulegną awarii, podczas gdy inne się powodzą, wzór opowiada historię regionalną. Jeśli sondy, które się nie powiodły, znajdują się zarówno w Azji, podczas gdy sondy europejskie i północnoamerykańskie się powiodły, problem jest prawie na pewno w ścieżce sieci między Azją a serwerem oryginalnym, niezależnie od tego, czy na krawędzi CDN, dostawcy tranzytu, czy regionalnym resolwerze DNS. Jeśli sonda, która się nie powiodła, znajduje się w tym samym regionie co serwer oryginalny, podczas gdy sondy odległe się powiodły, problem może być na lokalnym poziomie sieci dostawcy hostingu, z zdalnymi sondami obsługiwanymi z pamięci podręcznej CDN, która maskuje awarię pochodzenia. Każdy wzór zawęża pole diagnostyczne i przyspiesza czas do rozwiązania.

Różnice czasu odpowiedzi między sondami zapewniają bardziej subtelny, ale równie cenny sygnał. Jeśli wszystkie sześć sond wykazuje udane odpowiedzi, ale czas odpowiedzi jednego regionu podwoił się w porównaniu z jego historycznym linią bazową, ten region doświadcza degradacji, która nie osiągnęła jeszcze pełnej awarii. Usunięcie degradacji, zanim stanie się awarią, jest jedną z najbardziej cennych możliwości monitorowania multi-region, ponieważ daje operatorowi okno czasowe na zbadanie i interwencję, zanim użytkownicy w tym regionie zaczną przesyłać zgłoszenia do obsługi. Pulpit pulpitu nawigacyjnego monitorowania wyświetla czasy odpowiedzi dla wszystkich sześciu lokalizacji na jednej osi czasu, co czyni wzory degradacji regionalnej widoczne na pierwszy rzut oka.

Routing Geograficzny i Problemy, Które Ukrywa

Nowoczesna infrastruktura internetowa wykorzystuje routing geograficzny na szeroką skalę, kierując użytkowników do najbliższego dostępnego serwera lub krawędzi CDN na podstawie ich lokalizacji. Ten routing jest ogólnie korzystny, ponieważ zmniejsza opóźnienia i poprawia wydajność dla większości użytkowników. Ale oznacza to również, że ścieżka, którą żądanie przybiera z punktu A do punktu B, różni się dramatycznie w zależności od tego, gdzie znajduje się punkt A. Sonda monitorowania w Nowym Jorku i sonda monitorowania w Tokio pójdą całkowicie innymi ścieżkami sieciowymi, aby dotrzeć do tej samej strony internetowej, przechodząc przez różnych dostawców usług internetowych, różne giełdy peering i różne krawędzie CDN. Przeszkoda gdziekolwiek na jednej ścieżce może być niewidoczna z drugiej strony.

Routing anycast, używany przez większość głównych CDN i dostawców DNS, dodaje kolejną warstwę złożoności. W przypadku anycast, ten sam adres IP jest ogłaszany z wielu lokalizacji geograficznych, a infrastruktura routowania internetu kieruje każde żądanie do najbliższej lokalizacji ogłaszającej. Oznacza to, że rozdzielczość DNS lub żądanie CDN z Europy osiąga serwer europejski, podczas gdy to samo żądanie z Azji osiąga serwer azjatycki, nawet jeśli adres IP w obu przypadkach jest identyczny. Jeśli azjatycki węzeł anycast ma problem, sondy azjatyckie go wykrywają, podczas gdy sondy europejskie nie mogą, ponieważ ich żądania nigdy nie osiągają nawet tego samego serwera fizycznego.

Zmiany routingu BGP mogą spowodować tymczasowe lub trwałe problemy z osiągalnością dla określonych regionów. Gdy trasa protokołu brama graniczna zostanie wycofana lub zmieniona, ruch, który wcześniej przepływał przez ścieżkę bezpośrednią, może być przekierowany przez dłuższe, potencjalnie zatłoczone ścieżki, zwiększając opóźnienia i czasami powodując utratę pakietów. Te zdarzenia BGP są powszechne, dzieje się tysiące razy dziennie na całym świecie, a ich wpływ jest z natury regionalny. System monitorowania multi-region doświadcza tych zdarzeń bezpośrednio poprzez swoje rozproszone sondy, wykrywając wpływ na każdy region niezależnie, zamiast polegać na jednym punkcie widzenia, który może być lub nie być dotknięty.

Od Detekcji do Działań i Wiadomi, Co Naprawić

Detekcja bez informacji akcjonalnych to tylko alarm, który wydaje hałas bez wskazywania rozwiązania. Wartość monitorowania multi-region wykracza poza powiedzenie, że coś jest nie tak. To mówi ci, gdzie jest źle i, przez wzór awarii, sugeruje, jaki rodzaj jest źle. Ten kontekst diagnostyczny przekształca proces reagowania na incydenty z szalonego wyszukiwania poprzez dzienniki i pulpity nawigacyjne na ukierunkowane dochodzenie, które rozpoczyna się od mocnej hipotezy dotyczącej przyczyny głównej.

Gdy alerty monitorowania pokazują, że jeden region uległ awarii, podczas gdy pozostałe pozostają zdrowe, operator może natychmiast skoncentrować swoje dochodzenie na ścieżce sieci tego regionu. Czy krawędź CDN w tym regionie zgłasza problemy? Czy istnieje aktywny incydent BGP wpływający na dostawców tranzytu na tym obszarze? Czy rezolwer DNS dla tego regionu buforował stary lub niepoprawny zapis? Każde z tych pytań można szybko odpowiedzieć, a odpowiedzi prowadzą do określonych działań naprawczych: wyczyść pamięć podręczną CDN dla tego regionu, skontaktuj się z dostawcą tranzytu lub wymuś odświeżenie DNS. Bez kontekstu geograficznego zapewnianego przez monitorowanie multi-region, operator badałby ślepo, sprawdzając każdy możliwy punkt niepowodzenia, zamiast tych, które prawdopodobnie są odpowiedzialne.

Platforma monitorowania czasu dostępności łączy wyniki sprawdzenia multi-region z danymi historycznymi, które dodają kontekst czasowy do kontekstu przestrzennego. Jeśli ten sam region doświadczył awarii w tym samym czasie dnia w poprzednich okazjach, sugeruje to powtarzający się problem, taki jak okno zaplanowanej konserwacji u dostawcy tranzytu lub przewidywalny wzór ruchu, który powoduje problemy z pojemnością w godzinach szczytu. Jeśli awaria jest pierwszym przypadkiem bez historycznego precedensu, jest bardziej prawdopodobne ostrym incydent, który wymaga natychmiastowej uwagi. Kombinacja kontekstu geograficznego i czasowego daje operatorom najpełniejszy możliwy obraz tego, co się dzieje, gdzie się to dzieje i czy zdarzyło się wcześniej.

Często Zadawane Pytania

Które sześć lokalizacji są używane do monitorowania

Platforma monitorowania wykorzystuje lokalizacje sond rozproszone w Ameryce Północnej, Europie i Azji, aby zapewnić globalne pokrycie. Określone lokalizacje są wybierane w celu reprezentowania głównych węzłów routowania internetowego, gdzie przepływa większość globalnego ruchu internetowego.

Co się stanie, gdy tylko jedna lokalizacja wykryje awarię

Awaria w jednej lokalizacji wyzwala alert wskazujący na problem regionalny, a nie globalną awarię. Alert zawiera określoną lokalizację, w której nastąpiła awaria i szczegóły odpowiedzi, pomagając operatorowi ustalić, czy problem znajduje się na krawędzi CDN, dostawcy tranzytu czy resolwerze DNS obsługującym ten region.

Czy monitorowanie multi-region może wykryć słabą wydajność przed całkowitą awarią

Tak. Monitorowanie czasu odpowiedzi we wszystkich sześciu lokalizacjach ujawnia degradację w określonych regionach, nawet jeśli strona pozostaje technicznie dostępna. Czas odpowiedzi, który podwoił się od swojej linii bazowej w jednym regionie, podczas gdy pozostaje stabilny w pozostałych, jest wczesnym sygnałem ostrzegawczym, który pozwala operatorowi zbadać, zanim użytkownicy doświadczą całkowitego niepowodzenia.

Jak często sprawdzenia są uruchamiane z każdej lokalizacji

Częstotliwość sprawdzeń można konfigurować w zależności od planu monitorowania. Każdy przedział czasu sprawdzenia wyzwala jednoczesne sondy ze wszystkich sześciu lokalizacji, zapewniając, że każde sprawdzenie zapewnia kompletną migawkę geograficzną, a nie jedną obserwację punktową.

Czy monitorowanie multi-region działa ze stronami za Cloudflare lub innymi CDN

Tak, a strony przed CDN są właściwie tam, gdzie monitorowanie multi-region zapewnia największą wartość. Problemy z krawędzią CDN są z natury regionalne, a tylko monitorowanie multi-region może wykryć, kiedy określona krawędź CDN jest zdegradowana, podczas gdy inne pozostają zdrowe.

Czy jest to przydatne dla witryn z ruchem z tylko jednego kraju

Nawet witryny z skoncentrowanym geograficznie ruchem korzystają z monitorowania multi-region, ponieważ problemy z ścieżką sieciową mogą wpłynąć na każdą trasę. Ponadto roboty wyszukiwarek uzyskują dostęp do witryn z wielu regionów, więc awaria regionalna, która blokuje Googlebot od pełzania, wpływa na SEO, nawet jeśli ludzie odwiedzający na rynku podstawowym nie są dotknięci.