Zalecenia dotyczące projektowania niezawodnej strategii monitorowania i zgłaszania alertów
Dotyczy tego zalecenia dotyczącego listy kontrolnej niezawodności platformy Azure Well-Architected Framework:
RE:10 | Mierzenie i publikowanie wskaźników kondycji rozwiązania. Ciągłe przechwytywanie czasu pracy i innych danych niezawodności z całego obciążenia, a także z poszczególnych składników i kluczowych przepływów. |
---|
W tym przewodniku opisano zalecenia dotyczące projektowania niezawodnej strategii monitorowania i zgłaszania alertów. Zaimplementuj tę strategię, aby zapewnić zespołom operacyjnym informacje o stanie kondycji środowiska i zapewnić spełnienie ustalonych celów dotyczących niezawodności dla obciążenia.
Definicje
Okres | Definicja |
---|---|
Metryki | Wartości liczbowe, które są zbierane w regularnych odstępach czasu. Metryki opisują niektóre aspekty systemu w określonym czasie. |
Dzienniki zasobów | Dane generowane przez system. Zawiera on informacje o stanie systemu. |
Ślady | Dane zawierające informacje o ścieżce, którą żądanie przechodzi przez usługi i składniki. |
Kluczowe strategie projektowania
Przed utworzeniem strategii monitorowania i zgłaszania alertów wykonaj następujące zadania dla obciążenia w ramach planowania niezawodności:
Identyfikowanie przepływów krytycznych i niekrytycznych.
Wykonaj analizę trybu awarii (FMA) dla przepływów.
Projektowanie pod kątem niezawodności dzięki zaimplementowaniu nadmiarowości, skalowania, samozachowawania i samonaprawiania.
Projektowanie niezawodnej strategii testowania.
Modelowanie kondycji obciążenia i jego składników.
Utwórz strategię monitorowania i zgłaszania alertów, aby zapewnić niezawodne działanie obciążenia. Strategia monitorowania i zgłaszania alertów zapewnia wiedzę zespołom operacyjnym, dzięki czemu są powiadamiani o zmianach stanu obciążenia i mogą szybko rozwiązywać problemy. Utwórz niezawodną i niezawodną strategię monitorowania, tworząc model kondycji dla przepływów krytycznych i składników, które składają się z tych krytycznych przepływów. Model kondycji definiuje stan dobrej kondycji, obniżonej kondycji i złej kondycji. Zaprojektuj stan operacyjny, aby natychmiast przechwycić zmiany w tych stanach. Gdy stany kondycji zmieniają się z dobrej kondycji na obniżoną lub złą kondycję, mechanizmy zgłaszania alertów wyzwalają automatyczne środki naprawcze i powiadamiają odpowiednie zespoły.
Zaimplementuj poniższe zalecenia, aby zaprojektować strategię monitorowania i zgłaszania alertów spełniającą wymagania firmy.
Wskazówki ogólne
Zapoznaj się z różnicą między metrykami, dziennikami i śladami.
Włącz rejestrowanie dla wszystkich zasobów w chmurze. Użyj automatyzacji i ładu we wdrożeniach, aby włączyć rejestrowanie diagnostyczne w całym środowisku.
Przekaż wszystkie dzienniki diagnostyczne do scentralizowanej platformy ujścia danych i analizy, takiej jak obszar roboczy usługi Log Analytics. Jeśli masz wymagania dotyczące suwerenności danych regionalnych, musisz użyć lokalnych ujściów danych w regionach, które podlegają tym wymaganiom.
Kompromis: Istnieją konsekwencje związane z przechowywaniem i wykonywaniem zapytań dotyczących dzienników. Zwróć uwagę, jak analiza dzienników i przechowywanie wpływają na budżet, i określ najlepszą równowagę wykorzystania, aby spełnić twoje wymagania. Aby uzyskać więcej informacji, zobacz Najlepsze rozwiązania dotyczące optymalizacji kosztów.
Jeśli obciążenia podlegają co najmniej jednej strukturze zgodności, niektóre dzienniki składników obsługujące poufne informacje podlegają również tym strukturom. Wysyłanie odpowiednich dzienników składników do systemu zarządzania informacjami i zdarzeniami zabezpieczeń (SIEM), takiego jak Microsoft Sentinel.
Utwórz zasady przechowywania dzienników , które obejmują wymagania dotyczące przechowywania długoterminowego, które platformy zgodności nakładają na obciążenie.
Użyj rejestrowania strukturalnego dla wszystkich komunikatów dziennika, aby zoptymalizować wykonywanie zapytań dotyczących danych dziennika.
Skonfiguruj alerty do wyzwalania, gdy wartości przechodzą progi krytyczne, które korelują ze zmianą stanu modelu kondycji, na przykład kolor zielony na żółty lub czerwony.
Konfiguracja progu to praktyka ciągłego ulepszania. W miarę rozwoju obciążenia zdefiniowane progi mogą ulec zmianie. W niektórych przypadkach progi dynamiczne są dobrym rozwiązaniem dla strategii monitorowania.
Rozważ użycie alertów w przypadku ulepszania stanów, takich jak kolor czerwony na żółty lub czerwony na zielony, aby zespoły operacyjne mogły śledzić te zdarzenia w przyszłości.
Wizualizowanie kondycji środowiska w czasie rzeczywistym.
Użyj danych zebranych podczas zdarzeń, aby stale ulepszać modele kondycji oraz strategię monitorowania i zgłaszania alertów.
Uwzględnij usługi monitorowania i alertów platformy w chmurze, w tym:
Kondycja na poziomie platformy, na przykład Azure Service Health.
Kondycja na poziomie zasobu, na przykład azure Resource Health.
Uwzględnij specjalnie utworzone zaawansowane funkcje monitorowania i analizy, które oferuje dostawca usług w chmurze, takich jak narzędzia analizy usługi Azure Monitor.
Zaimplementuj monitorowanie kopii zapasowych i odzyskiwania w celu przechwycenia:
Stan replikacji danych w celu zapewnienia, że obciążenie osiąga odzyskiwanie w ramach docelowego celu punktu odzyskiwania (RPO).
Pomyślne i nieudane kopie zapasowe i odzyskiwanie.
Czas trwania odzyskiwania informujący o planowaniu odzyskiwania po awarii.
Monitorowanie aplikacji
Utwórz sondy kondycji lub sprawdź funkcje i uruchamiaj je regularnie poza aplikacją. Upewnij się, że testujesz z wielu lokalizacji, które znajdują się geograficznie blisko klientów.
Dane dziennika, gdy aplikacja działa w środowisku produkcyjnym. Potrzebujesz wystarczających informacji, aby zdiagnozować przyczynę problemów w stanie produkcyjnym.
Rejestrowanie zdarzeń na granicach usługi. Uwzględnienie identyfikatora korelacji, który przepływa przez granice usługi. Jeśli transakcja przepływa przez wiele usług i jeden z nich kończy się niepowodzeniem, identyfikator korelacji pomaga śledzić żądania w aplikacji i wskazać, dlaczego transakcja nie powiodła się.
Użyj rejestrowania asynchronicznego. Operacje rejestrowania synchronicznego czasami blokują kod aplikacji, co powoduje tworzenie kopii zapasowej żądań podczas zapisywania dzienników. Użyj rejestrowania asynchronicznego, aby zachować dostępność podczas rejestrowania aplikacji.
Oddzielenie rejestrowania aplikacji od inspekcji. Rekordy inspekcji są często utrzymywane pod kątem zgodności lub wymagań prawnych i muszą być kompletne. Aby uniknąć porzuconych transakcji, zachowaj dzienniki inspekcji niezależnie od dzienników diagnostycznych.
Użyj korelacji telemetrii , aby upewnić się, że transakcje można mapować za pośrednictwem kompleksowej aplikacji i krytycznych przepływów systemu. Ten proces jest niezbędny do przeprowadzania analizy głównej przyczyny w przypadku awarii. Zbierz metryki i dzienniki na poziomie platformy, takie jak procent procesora CPU, sieć w sieci, wyjście z sieci i operacje dysku na sekundę, z aplikacji, aby poinformować model kondycji i wykryć i przewidzieć problemy. Takie podejście może pomóc w odróżnieniu między błędami przejściowymi i nieprzejazdowymi.
Użyj monitorowania pól białych, aby instrumentować aplikację za pomocą dzienników semantycznych i metryk. Zbierz metryki i dzienniki na poziomie aplikacji, takie jak zużycie pamięci lub opóźnienie żądania, od aplikacji, aby poinformować model kondycji oraz wykryć i przewidzieć problemy.
Monitorowanie czarnej skrzynki służy do mierzenia usług platformy i wynikowego środowiska klienta. Monitorowanie czarnej skrzynki testuje zewnętrznie widoczne zachowanie aplikacji bez znajomości wewnętrznych systemu. Takie podejście jest typowe w przypadku mierzenia wskaźników poziomu usług (SLI), celów poziomu usług (SLO) i umów dotyczących poziomu usług (SLA).
Uwaga
Aby uzyskać więcej informacji na temat monitorowania aplikacji, zobacz Wzorzec monitorowania punktu końcowego kondycji.
Monitorowanie danych i magazynowania
Monitoruj metryki dostępności kontenerów magazynu. Gdy ta metryka spadnie poniżej 100 procent, oznacza to niepowodzenie zapisu. Przejściowe spadki dostępności mogą wystąpić, gdy dostawca usług w chmurze zarządza obciążeniem. Śledź trendy dostępności, aby określić, czy występuje problem z obciążeniem.
W niektórych przypadkach spadek metryk dostępności kontenera magazynu wskazuje wąskie gardło w warstwie obliczeniowej skojarzonej z kontenerem magazynu.
Istnieje wiele metryk do monitorowania baz danych. W kontekście niezawodności ważne metryki do monitorowania obejmują:
Czas trwania zapytania
Limity czasu
Czas oczekiwania
Wykorzystanie pamięci
Blokady
Ułatwienia dla platformy Azure
Usługa Azure Monitor to kompleksowe rozwiązanie do monitorowania używane do zbierania, analizowania i reagowania na dane monitorowania z chmury i środowisk lokalnych.
Log Analytics to narzędzie w Azure Portal używane do edytowania i uruchamiania zapytań dzienników względem danych w obszarze roboczym usługi Log Analytics.
Application Insights to rozszerzenie usługi Azure Monitor. Zapewnia funkcje monitorowania wydajności aplikacji (APM).
Szczegółowe informacje usługi Azure Monitor to zaawansowane narzędzia analityczne, które ułatwiają monitorowanie usług platformy Azure, takich jak maszyny wirtualne, usługi aplikacji i kontenery. Szczegółowe informacje są oparte na usługach Azure Monitor i Log Analytics.
Usługa Azure Monitor dla rozwiązań SAP to natywny dla platformy Azure produkt do monitorowania dla środowisk SAP uruchamianych na platformie Azure.
Azure Policy pomaga wymuszać standardy organizacyjne i oceniać zgodność na dużą skalę.
Centrum ciągłości biznesowej platformy Azure zapewnia wgląd w swoją ciągłość działalności biznesowej. W miarę stosowania metod zapewniania ciągłości działania i odzyskiwania po awarii (BCDR) użyj Centrum ciągłości biznesowej platformy Azure w celu scentralizowanego zarządzania ochroną ciągłości działania na platformie Azure i obciążeniach hybrydowych. Centrum ciągłości biznesowej platformy Azure wskazuje zasoby, które nie mają odpowiedniej ochrony (za pośrednictwem kopii zapasowej lub odzyskiwania po awarii) i podejmuje działania naprawcze. Narzędzie ułatwia ujednolicone monitorowanie i umożliwia ustanowienie ładu i inspekcji zgodności za pośrednictwem Azure Policy, a wszystko to jest wygodnie dostępne w jednej lokalizacji.
Aby zapoznać się z najlepszymi rozwiązaniami dotyczącymi wielu obszarów roboczych, zobacz Projektowanie architektury obszaru roboczego usługi Log Analytics.
Przykład
Przykłady rzeczywistych rozwiązań do monitorowania można znaleźć w temacie Web application monitoring on Azure and Baseline architecture for an Azure Kubernetes Service cluster (Monitorowanie aplikacji internetowych na platformie Azure i architektura linii bazowej dla klastra Azure Kubernetes Service).
Linki pokrewne
- Alerty dotyczące metodyki DevOps
- Alerty dotyczące operacji
- Wskazówki dotyczące monitorowania i diagnostyki
- Monitorowanie aplikacji internetowej na platformie Azure
Linki społeczności
- Alerty linii bazowej usługi Azure Monitor (AMBA) to centralne repozytorium definicji alertów, których klienci i partnerzy mogą używać do ulepszania ich doświadczeń z obserwacją dzięki wdrożeniu usługi Azure Monitor.
Lista kontrolna dotycząca niezawodności
Zapoznaj się z pełnym zestawem zaleceń.
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla