Użyj Amazon CloudWatch Internet Monitor, aby uzyskać lepszy wgląd w doświadczeniach online

30 maja 2023

Użyj Amazon CloudWatch Internet Monitor, aby uzyskać lepszy wgląd w doświadczeniach online

Obecnie miliony użytkowników internetu uzyskują dostęp do aplikacji hostowanych na całym świecie w 167 000 miast obsługiwanych przez ponad 74 000 systemów autonomicznych (ASN). Śledzenie stale zmieniających się tras sieciowych może być zniechęcającym zadaniem dla inżynierów niezawodności lokalizacji (SRE), twórców aplikacji, operatorów sieci, inżynierów systemów i architektów rozwiązań chmurowych. Dzięki Amazon CloudWatch Internet Monitor zespoły mogą szybko identyfikować problemy z siecią, które wpływają na wydajność i dostępność ich aplikacji. Oferuje obserwowalność i monitorowanie wydajności Internetu w czasie zbliżonym do rzeczywistego, ułatwiając obsługę nieprzerwanego doświadczenia użytkownika.

Monitorowanie aplikacji internetowych może być przytłaczające. Kiedy użytkownicy aplikacji zgłaszają negatywne wrażenia, często trudno jest odzyskać zaufanie do możliwości aplikacji. Identyfikacja i rozwiązanie pierwotnej przyczyny problemu często wymaga połączenia danych z wielu źródeł i narzędzi innych firm. Może to być zarówno kosztowne, jak i trudne, zwłaszcza w scenariuszach pod presją czasu. Ponadto narzędziom tym często brakuje kompleksowych, kompleksowych informacji, co utrudnia określenie dokładnej lokalizacji problemu. Internet Monitor upraszcza ten proces, szybko zawężając zakres problemu. Pomaga zespołom szybko identyfikować i naprawiać problemy, które mogą zakłócać działanie użytkownika.

Uwagi dotyczące skalowania z Amazon CloudWatch Internet Monitor

Internet Monitor monitoruje ruch internetowy aplikacji we wszystkich lokalizacjach, w których klienci uzyskują dostęp do zasobów aplikacji, w tym ich dostęp za pośrednictwem ASN, w tym sieci miast dla ruchu aplikacji. Koszt pierwszych 100 sieci miejskich jest wliczony w cenę usługi. Aby kontrolować koszty przy zwiększaniu liczby sieci miejskich, musisz ustalić progi dla ruchu internetowego. Odbywa się to poprzez określenie procentu ruchu internetowego na liczbę sieci miejskich dla każdego indywidualnego monitora. Limit ten można dostosować w oparciu o pożądane cele dotyczące poziomu usług (SLO). Pamiętaj, że opłata zostanie naliczona tylko za liczbę sieci miejskich, które faktycznie monitorujesz, do ustalonego z góry limitu.

Cena usługi Internet Monitor składa się z trzech elementów: opłaty za monitorowany zasób, opłaty za sieć miejską oraz opłat za dzienniki diagnostyczne publikowane w dziennikach CloudWatch. Aby uzyskać szczegółowe zestawienie tych opłat, zapoznaj się z cennikiem CloudWatch.

Konfigurowanie monitorowania aplikacji

Autorzy zakładają, że wiesz już, jak skonfigurować Amazon Virtual Private Cloud (VPC), dystrybucje Amazon CloudFront i katalogi Amazon WorkSpace. W tym artykule skupią się na efektywności operacyjnej Internet Monitora, biorąc pod uwagę zarówno jego opłacalność, jak i cele biznesowe. Zbadają również kompromisy między kosztami a pokryciem ruchu podczas ustalania wyższego limitu maksimum dla sieci miejskich. Omówią szczegółowe doświadczenia użytkowników związane z konfigurowaniem i wdrażaniem najlepszych praktyk operacyjnych dla programu Internet Monitor, w tym szacunków kosztów. Na koniec porównają scenariusze ze stosunkiem monitorów do zasobów 1:1 ze stosunkiem 1 do wielu, omawiając zalety każdego podejścia.

Autorzy demonstrują wykorzystanie możliwości programu Internet Monitor, odwołując się do typowego przypadku użycia. Odniosą się do firmy ABC, fikcyjnego startupu. Podstawowa aplikacja ABC zapewnia interaktywną usługę wideo. W tym scenariuszu firma ABC zidentyfikowała swoją największą bazę użytkowników zlokalizowaną w gęsto zaludnionych obszarach miejskich. ABC chce monitorować ruch internetowy swoich użytkowników. Usługa wideo ABC jest hostowana w wirtualnej chmurze prywatnej (VPC) i dystrybuowana do użytkowników za pośrednictwem dystrybucji CloudFront.

Twórcy dostarczą instrukcje krok po kroku dotyczące konfiguracji monitora i zaproponują zalecenia, które pomogą osiągnąć cele usługi wideo ABC. Będą używać Internet Monitor, aby uzyskać wgląd w ruch i dostawców usług internetowych obsługujących połączenia użytkowników ABC.

Aby rozpocząć, utwórz monitor w konsoli Internet Monitor.

Krok 1: Create monitor

Na stronie Utwórz monitor wprowadź nazwę monitora „ABCMonitor”. Wybierz „Dodaj zasoby”, aby wyszukać zasoby VPC i CloudFront. Wpisz „VPC zasób b” i „CloudFront A” w polu Dodane zasoby. Wybierz odpowiednie zasoby z wyników wyszukiwania. Kliknij „Dodaj zasoby”.

W sekcji „Application internet traffic percentage to monitor” określ procent ruchu aplikacji do monitorowania. Jeśli nie masz pewności, możesz zacząć od 95%, wybierając przycisk radiowy dla procentu ruchu, jak pokazano na rysunku 1. Internet Monitor posortuje według natężenia ruchu, obejmując najważniejsze ASN.

Użyj Amazon CloudWatch Internet Monitor, aby uzyskać lepszy wgląd w doświadczeniach online

Krok 2: Monitor Dashboard

Po kilku dniach można zobaczyć obserwowany ruch wyświetlany dla 95% całkowitego ruchu, jak pokazano na rysunku 2.

Użyj Amazon CloudWatch Internet Monitor, aby uzyskać lepszy wgląd w doświadczeniach online

W widżecie Monitorowany ruch kliknij „Przejdź do statystyk ruchu”, aby dowiedzieć się więcej o pokryciu ruchu, jak pokazano na rysunku 3.

Użyj Amazon CloudWatch Internet Monitor, aby uzyskać lepszy wgląd w doświadczeniach online

Krok 3: Review and tune Traffic Insights

Na karcie Informacje o ruchu wyświetlana jest pozycja „Traffic monitoring coverage (recent)”, jak zaznaczono przerywanymi liniami na rysunku 3. Ma procent monitorowanego ruchu: 95% całkowitego ruchu, co odpowiada 4437 monitorowanym sieciom miejskim. Jeśli wcześniej nie byłeś pewien, jaki procent ruchu należy monitorować, teraz masz wgląd w liczbę monitorowanych sieci miejskich z 95% pokryciem ruchu.

Na podstawie obserwowanych wzorców ruchu można teraz zbadać alternatywne pokrycie ruchu. Możesz zwiększyć lub zmniejszyć procent pokrycia ruchu w „Explore traffic coverage options”. W przykładzie ABC, gdy zasięg ruchu wzrasta do 100%, liczba sieci miejskich wynosi 21 673, jak pokazano na rysunku 4.

Użyj Amazon CloudWatch Internet Monitor, aby uzyskać lepszy wgląd w doświadczeniach online

Pora przyjrzeć się kosztom monitorowania 95% vs 100% ruchu.

Assume us-east-1 region

Monitored resources:
Number of VPCs: 1
plus CloudFront distributions: 1
Total resources = 2
Multiply by $0.01 ($0.01 /hr) = $0.02/hr
Multiply by 730 (hrs/month) = $14.60
Cost for monitored resources = $14.60 / month

City-networks:
Total city-networks monitored: 4437
Subtract 100 (the first 100 city-networks are included) = 4337
Multiply by $0.000074 = 0.3209380
Multiply by 730 (hrs/month)= $234.28
Cost for city-networks = $234.28/month

CloudWatch Logs:
Internet Monitor publishes events to CloudWatch Logs for a maximum of 500 city-networks. We also assume the following:
* Each event will use 1MB of space per city-network per day
* Cost is $0.50/GB
* 5GB is included per month in CloudWatch Logs, so we subtract $2.50/month

500 city-networks x 1 MB/ city network = 500 MB/day
We want to arrive at $/month, therefore:

(500 MB/day) x (730 hours/month) x (1 day/24 hours) x ($0.50/GB) x (1 GB/1000 MB) = $7.60/month
Subtract $2.50 = $5.10
Cost for CloudWatch Logs = $5.10/month

The total cost for ABC Company is $14.60 + $234.28+ $5.10 = $253.98/month

In CloudWatch Metrics, you can also see the Internet Monitor metrics for ABC’s application:

CityNetworksMonitored 4437
TrafficMonitoredPercent 95
CityNetworkFor100PercentTraffic 21673

Obecnie wskaźnik TrafficMonitoredPercent wynosi 95%. Internet Monitor oblicza liczbę sieci miejskich na podstawie aktualnych wzorców ruchu. Obejmuje wszystkie sieci miast o największym udziale procentowym w ruchu całkowitym, aż do osiągnięcia 95%. W scenariuszu ABC, jeśli zapotrzebowanie na wydajność aplikacji jest wyższe niż 95%, pokrycie 100% jest lepszą decyzją unikającą ryzyka. Pozostałe 5% ruchu z niemonitorowanych sieci miejskich nie dostarczyłoby informacji o wydajności lub dostępności ani alertów zdrowotnych. Możesz więc zwiększyć monitorowanie do 100% globalnego ruchu internetowego aplikacji firmy ABC. Aby to osiągnąć, należy odnieść się do metryki CityNetworksFor100PercentTraffic, która pokazuje odpowiadającą liczbę miast-sieci wynoszącą 21673. Zanim jednak to zrobisz, powinieneś również przejrzeć szacunkowe miesięczne koszty związane z monitorowaniem 100% ruchu.

Monitor Costs for 100% traffic

Assuming us-east-1 region

Monitored resources: The number of monitored resources has not changed, so the cost is still $14.60/month.

City-networks:
Total city-networks monitored: 21673
Subtract 100 (the first 100 city-networks are included) = 21573
Multiply by $0.000074 = 1.59
Multiply by 730 (hrs/month)= $1165.37
Cost for city-networks = $1165.37/month

CloudWatch Logs:

Internet Monitor publikuje zdarzenia w dziennikach CloudWatch dla maksymalnie 500 sieci miejskich. Koszt został już uwzględniony w szacunkach dla 95% ruchu. W związku z tym koszt ten pozostałby niezmieniony i wynosiłby 5,10 USD miesięcznie, jak widzieliśmy w poprzednim przykładzie. Biorąc pod uwagę wszystkie wydatki, w tym koszt monitorowania ruchu do 100%, całkowity miesięczny koszt efektywnego monitorowania całej bazy użytkowników przez firmę ABC wynosi 1185,07 USD miesięcznie.

Całkowity koszt firmy ABC wynosi 14,60 USD + 1165,37 USD + 5,10 USD = 1185,07 USD/miesiąc

Krok 4: Edit Monitor application traffic percentage 

Po zakończeniu analizy kosztów i określeniu lepszego procentu dla danego przypadku użycia, zwiększ lub zmniejsz pokrycie, a następnie kliknij przycisk „Set as monitor coverage”, aby ustawić żądaną wartość.

Krok 5: Review Traffic Insights

Po zmianie wartości procentowej pokrycia ważne jest, aby przejrzeć wynik zmiany. Użyj karty Informacje o ruchu, aby zidentyfikować wszelkie problemy z degradacją sieci. Jeśli filtr Statystyki ruchu zawiera wpisy sugerujące, że niektórzy użytkownicy mają problemy z degradacją sieci, możesz podjąć działania zgodnie z sugerowanymi rozwiązaniami. Jako przykład na rysunku 6, sugestie dotyczące optymalizacji ruchu są następujące:

W przypadku miasta A wdrożenie dystrybucji CloudFront mogłoby skutkować przewidywanym średnim TTFB (czas do pierwszego bajtu) na poziomie 20 ms, w porównaniu z obecnym TTFB wynoszącym 120 ms.

W przypadku miasta B przejście na region us-east-1 może doprowadzić do przewidywanego średniego TTFB na poziomie 55 ms, w przeciwieństwie do obecnej konfiguracji 70 ms przy użyciu us-east-2.

Miasto C jest już zoptymalizowane.

W przypadku miasta D wdrożenie dystrybucji CloudFront może skutkować przewidywanym średnim TTFB na poziomie 38 ms, w porównaniu z obecnym TTFB wynoszącym 100 ms.

Możesz zaimplementować te sugestie statystyk ruchu, aby ulepszyć TTFB dla usługi ABC.

Użyj Amazon CloudWatch Internet Monitor, aby uzyskać lepszy wgląd w doświadczeniach online

Ile monitorów powinno zostać utworzonych?

W scenariuszu ABC Company wystarczyło stworzyć jeden monitor dla zasobów VPC i CloudFront. Istnieje jednak kilka opcji wdrażania monitorów, z których każda ma własny zestaw zalet:

Najlepsze praktyki to posiadanie dedykowanego monitora dla każdej aplikacji, aby ułatwić podział metryk na aplikację. Klienci, dla których priorytetem jest nadmiarowość i wygoda, decydują się na utworzenie co najmniej dwóch monitorów dla wszystkich swoich zasobów.

Dla klientów poszukujących redundancji przy niższych kosztach istnieje możliwość utworzenia oddzielnego monitora dla każdego regionu.

Podsumowanie

Możesz użyć Amazon CloudWatch Internet Monitor do monitorowania ruchu i użyć Przeglądu monitora, aby wyświetlić wyniki kondycji ruchu (wyniki dostępności i wydajności). Klikając Statystyki ruchu, możesz wyświetlić szczegółowe informacje o lokalizacjach i wzorcach ruchu. Możesz zwiększyć zasięg monitorowanego ruchu, aby nie przegapić kluczowych informacji z niemonitorowanego ruchu. W tym scenariuszu firma ABC zdecydowała się zwiększyć monitorowanie ruchu do 100%. Otrzymali informacje o ruchu i zasugerowali działania mające na celu złagodzenie wszelkich pogorszonych wrażeń użytkowników.

Wnioski

Monitorowanie aplikacji internetowych może być trudne ze względu na złożoną ścieżkę pakietów między użytkownikami a aplikacjami. Internet Monitor upraszcza identyfikację degradacji sieci, której doświadczają użytkownicy aplikacji. Internet Monitor filtruje odpowiednie pomiary internetowe z danych zebranych przez AWS, umożliwiając identyfikację i rozwiązywanie problemów z Internetem. W tym artykule opisano, w jaki sposób można monitorować ruch aplikacji i uzyskiwać informacje o ruchu niezbędne do obsługi użytkowników aplikacji w opłacalny sposób.

Źródło: AWS

Case Studies
Referencje

Rekomendujemy Hostersi Sp. z o. o wszystkim, którzy cenią wysoką jakość usług, profesjonalizm oraz szybki czas reakcji.

Krystian Karczyński
Założyciel i szef serwisu eTrapez
W skrócie o nas
Specjalizujemy się w dostarczaniu rozwiązań IT w obszarach projektowania infrastruktury serwerowej, wdrażania chmury obliczeniowej, opieki administracyjnej i bezpieczeństwa danych.