Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W środowiskach chmurowych awarie są nieuniknione. Błędy sprzętowe, wady oprogramowania, błędy konfiguracji, skoki ruchu, awarie centrum danych, a nawet awarie całego regionu mogą wystąpić. Niezawodność to zdolność obciążenia do spełnienia oczekiwań biznesowych, nawet podczas awarii lub zakłóceń. W przypadku odpowiedniej architektury i operacji awarie nie muszą powodować przestojów.
Nieplanowany przestój może mieć ogromny wpływ. Wiąże się to z kosztami finansowymi i szkodami dla klienta i zaufania użytkowników. Poza tymi bezpośrednimi skutkami niska niezawodność wpływa na zobowiązania dotyczące zgodności i pozycjonowanie konkurencyjne. Twoje zespoły poświęcają więcej czasu na strzelaniny i mniej czasu na dostarczanie wartości. Może nawet wywołać kary na poziomie usług umownych.
Azure zapewnia odporną infrastrukturę i usługi zarządzane, ale niezawodność obciążenia zależy od podejmowania decyzji projektowych i operacyjnych: sposobu projektowania architektury, konfigurowania usług, zarządzania zależnościami, automatyzowania odpowiedzi na problemy oraz testowania oprogramowania i procesów. Wczesne projektowanie pod kątem niezawodności pomaga zminimalizować awarie i zapewnić, że w momencie ich wystąpienia obciążenie działa w przewidywalny i kontrolowany sposób, który jest zgodny z priorytetami biznesowymi.
Niezawodne obciążenie ma dwie istotne właściwości:
- Jest odporny, co oznacza, że może pochłaniać awarie i zmiany w środowisku, kontynuując działanie na akceptowalnym poziomie usług.
- Można go również odzyskać, co oznacza, że w przypadku zakłóceń obciążenie może przywrócić normalne operacje w zdefiniowanym czasie i limitach utraty danych.
Potrzebujesz obu właściwości, aby spełnić rzeczywiste oczekiwania dotyczące dostępności i zachować ciągłość działalności biznesowej.
Niezawodność w Azure działa w trzech połączonych warstwach:
- Aplikacja: Wybór architektury, praktyki i procesy, w tym zarządzanie zależnościami, elementy Runbook, automatyzacja i testowanie
-
Funkcje niezawodności, w tym:
- Usługi obciążeń i konfiguracja: Sposób konfigurowania usług Azure, które uruchamiają obciążenie, oraz możliwości niezawodności konfigurowanych w ramach tych usług
- Azure usług platformy: usługi Azure, które obsługują niezawodność obciążeń, takie jak równoważenie obciążenia, dns, routing ruchu i monitorowanie
- Podstawy niezawodności: wbudowana odporność Azure, taka jak strefy dostępności, regiony i bezpieczne praktyki wdrażania
Te warstwy współpracują ze sobą, aby określić ogólną niezawodność obciążenia. Zrozumienie ich ułatwia rozróżnienie między tym, co Azure zapewnia domyślnie, a co należy zaprojektować, skonfigurować i obsługiwać.
Ten model ułatwia wykorzystanie tego, co zapewnia Azure, jednocześnie biorąc na siebie odpowiedzialność za to, co można zaprojektować. Ten artykuł koncentruje się na tym, co Azure zapewnia w tych warstwach. Aby uzyskać kompleksowe wskazówki dotyczące warstwy projektowania i operacji obciążeń (projektowania odpornych rozwiązań i wzorców architektury), zobacz Azure Well-Architected Framework, a zwłaszcza filar niezawodności.
Wspólna odpowiedzialność za niezawodność
Niezawodność w Azure jest zgodna z modelem wspólnej odpowiedzialności. Microsoft zapewnia odporną platformę za pośrednictwem Azure. Projektujesz odporne obciążenie.
Microsoft jest właścicielem podstaw platformy i usług niezawodności platformy. Ta własność obejmuje odporną infrastrukturę (nadmiarowość fizyczną, izolację błędów i naprawianie), strefy dostępności, dystrybucję regionalną, bezpieczne praktyki wdrażania i usługi na poziomie platformy, takie jak równoważenie obciążenia, routing ruchu i monitorowanie. Microsoft odpowiada za niezawodność platformy Azure oraz niezawodność usług zgodnie z definicją w opublikowanej umowie SLA i dokumentacji poszczególnych usług, takich jak przewodnik po niezawodności.
Jesteś właścicielem projektu i operacji obciążenia. Odpowiadasz za tłumaczenie możliwości Azure na niezawodne zachowanie obciążenia za pomocą decyzji dotyczących architektury, wyborów konfiguracji, praktyk operacyjnych i testowania.
Azure nie może znać celów dostępności, akceptowalnych kompromisów, kontekstu biznesowego lub wymagań specyficznych dla aplikacji. Tylko te wymagania można zdefiniować i odpowiednio zaprojektować. Azure zapewnia możliwości, wybierając je i konfigurując. Można na przykład skonfigurować zachowanie trybu failover dla usług, takich jak bazy danych, i zdefiniować sondy kondycji modułu równoważenia obciążenia, które dokładnie reprezentują kondycję aplikacji, aby decyzje dotyczące routingu ruchu były poprawne, nawet podczas awarii.
Important
Platforma zapewnia bloki konstrukcyjne, a nie kompleksowe gwarancje. Twoje wybory projektowe i operacyjne określają, czy te możliwości przekładają się na niezawodne obciążenie. Aby uzyskać pełny podział modelu wspólnej odpowiedzialności, zobacz Wspólna odpowiedzialność w chmurze.
Umowy dotyczące poziomu usług (SLA) definiują zobowiązania dotyczące niezawodności i oczekiwań w ramach usług Azure. Zrozumienie umów SLA jest niezbędne podczas oceniania usług i projektowania pod kątem określonych celów dostępności. Azure usługi publikują zobowiązania SLA, które mogą się różnić w zależności od konfiguracji i poziomu nadmiarowości. Inne usługi używane przez innych dostawców mogą również publikować umowy SLA. Aby uzyskać kompleksowe wskazówki dotyczące sposobu działania umów SLA i powiązania z oczekiwaniami dotyczącymi dostępności obciążenia, zobacz Umowy dotyczące poziomu usług.
Odporne podstawy w Azure
Azure zaprojektowano z wieloma warstwami odporności wbudowanymi w samą platformę. Te podstawy zapewniają podstawowe możliwości, na których tworzone są niezawodne obciążenia:
Odporność infrastruktury fizycznej: Azure centra danych są zaprojektowane z nadmiarową infrastrukturą, takimi jak zasilanie, chłodzenie i łączność sieciowa. Kontroler sieci szkieletowej Azure automatycznie izoluje awarie sprzętowe i zarządza nimi. Wykrywa błędy i organizuje migrację obciążeń do sprzętu w dobrej kondycji bez interwencji klienta.
Regiony: Azure działa w ponad 70 regionach na całym świecie. Ta dystrybucja geograficzna umożliwia obciążeniom wytrzymanie zakłóceń i awarii w całym regionie dzięki zaplanowanym możliwościom trybu failover, a jednocześnie spełnić wymagania dotyczące rezydencji danych. Aby uzyskać więcej informacji, zobacz omówienie regionów Azure.
Strefy dostępności: Wiele Azure regionów obejmuje fizycznie oddzielne centra danych w tym samym regionie. Te strefy dostępności są połączone przez szybkie, małe opóźnienia sieci. Każda strefa ma niezależne zasilanie, chłodzenie i sieć w celu ochrony przed awariami na poziomie centrum danych przy zachowaniu synchronicznych możliwości replikacji dla wielu usług Azure. Aby uzyskać więcej informacji, zobacz Co to są strefy dostępności?
Bezpieczne wdrożenia: Azure implementuje kontrolowane, rozłożone procesy wdrażania na potrzeby aktualizacji i zmian usług platformy w celu zminimalizowania ryzyka zakłóceń w działaniu usługi. Platforma wdraża aktualizacje stopniowo, takie jak między domenami błędów, strefami dostępności i regionami, z automatycznymi funkcjami wycofywania w przypadku wykrycia problemów. Takie podejście zapewnia, że zmiany platformy nie powodują ryzyka związanego z niezawodnością obciążeń klientów.
Azure zapewnia te podstawy na poziomie platformy automatycznie. Tworzą warstwę podstawową, na której tworzysz niezawodne obciążenia. Jednak nadal musisz poprawnie skonfigurować usługi i połączyć te możliwości w sposób, który spełnia określone wymagania biznesowe.
Azure usług, które obsługują niezawodność
Azure zapewnia możliwości platformy, które przekładają pojęcia dotyczące niezawodności na bloki konstrukcyjne z możliwością działania dla architektury. Te możliwości współpracują ze sobą, aby umożliwić architektury odporne, a wiele usług Azure obejmuje wbudowane implementacje tych wzorców:
| Capability | Description |
|---|---|
|
|
Używa funkcji opartych na sztucznej inteligencji do oceny i poprawy niezawodności. Te możliwości analizują wzorce obciążeń, identyfikują potencjalne zagrożenia i udostępniają zalecenia, które ułatwiają zespołom przejście od reaktywnego rozwiązywania problemów do proaktywnego zarządzania niezawodnością. Te możliwości obejmują sygnały niezawodności i tłumaczą je na zalecenia umożliwiające podejmowanie działań, które pomagają zespołom w określaniu priorytetów i ulepszaniu niezawodności w czasie. Azure udostępnia kilka usług niezawodności opartych na sztucznej inteligencji, w tym: - Azure możliwości odporności - Możliwości odporności w agentach (wersja zapoznawcza) w Azure Copilot - Azure agentA SRE Te usługi analizują wzorce obciążeń i sugerują ulepszenia w celu zoptymalizowania poziomu niezawodności na całym tablicy. |
|
|
Umożliwia niezawodność przez kierowanie ruchu między nadmiarowymi wystąpieniami i automatyczne obsługiwanie trybu failover. Ta funkcja jest niezbędna do utrzymania dostępności usługi w przypadku awarii poszczególnych składników. Azure zapewnia równoważenie obciążenia w wielu warstwach, w tym: - Azure Load Balancer dla dystrybucji ruchu TCP/UDP w warstwie 4 - Azure Application Gateway routingu HTTP w warstwie 7 z kontrolami kondycji obsługującymi aplikacje - Azure Front Door globalne równoważenia obciążenia HTTP z szybkim trybem failover - Azure Traffic Manager dla globalnej dystrybucji punktów końcowych opartych na systemie DNS Jeśli potrzebujesz pomocy przy wyborze modułu równoważenia obciążenia do użycia w danym scenariuszu, zobacz Opcje równoważenia obciążenia. |
|
|
Zabezpiecza przed utratą i uszkodzeniem danych oraz umożliwia odzyskiwanie po wystąpieniu problemu. Azure oferuje kilka możliwości tworzenia kopii zapasowych i odzyskiwania, w tym: - Azure Backup dla scentralizowanej kopii zapasowej z konfigurowalnym przechowywaniem maszyn wirtualnych, kontenerów obiektów blob, plików i niektórych baz danych — Natywne funkcje tworzenia kopii zapasowych i przywracania w wielu usługach Azure, w tym w większości usług baz danych - Bicep i inną infrastrukturę jako narzędzia kodu do tworzenia kopii zapasowych konfiguracji, ochrony dryfu i szybkiego środowiska rekreacyjnego Zapoznaj się z każdym przewodnikiem po niezawodności usługi Azure, aby zrozumieć podejścia do tworzenia kopii zapasowych obsługiwane przez usługę. |
|
|
Umożliwia odzyskiwanie po awariach regionalnych za pośrednictwem replikacji danych między regionami i automatycznych możliwości trybu failover. Azure Site Recovery organizuje odzyskiwanie po awarii dla obciążeń maszyn wirtualnych przy użyciu automatycznej replikacji i sekwencjonowania trybu failover. Wiele usług Azure oferuje również wbudowane funkcje replikacji geograficznej, w tym: - Azure Cosmos DB z natywną replikacją danych między regionami i możliwościami trybu failover - Azure API Management z natywnymi możliwościami trybu failover między regionami Przewodniki dotyczące niezawodności usługi szczegółowo opisują wszystkie opcje replikacji geograficznej dostępne dla każdej usługi. |
|
|
Zapewnia kompleksowy wgląd w stan niezawodności i umożliwia proaktywne reagowanie na problemy. Azure zapewnia wiele usług obserwacji, w tym: - Azure Monitor i Application Insights na potrzeby monitorowania, alertów i śledzenia zależności w czasie rzeczywistym - Modele kondycji w Azure Monitor do monitorowania kondycji całego obciążenia - Azure Service Health na potrzeby spersonalizowanych alertów i wskazówek dotyczących problemów z usługą Azure, które mogą mieć wpływ na obciążenia Te możliwości ułatwiają zrozumienie, czy spełniasz wymagania dotyczące niezawodności i szybko reagujesz, gdy wystąpią problemy. |
|
|
Pomaga sprawdzić, czy obciążenia działają zgodnie z oczekiwaniami w warunkach awarii i pomaga zapewnić, że rozwiązanie spełnia wymagania dotyczące niezawodności przed problemami dotyczącymi użytkowników. Azure zapewnia usługi testowania niezawodności, w tym: - Azure Chaos Studio w przypadku eksperymentów polegających na kontrolowanym wstrzyknięciu błędów w celu zweryfikowania zachowania samonaprawiania i odporności na rzeczywiste awarie - Azure App Testing do testowania wydajności i funkcjonalności, aby zrozumieć, jak działają aplikacje, w tym pod obciążeniem |
Włączanie niezawodności w usługach Azure
Platforma zapewnia możliwości niezawodności warstwy usług za pośrednictwem kilkudziesięciu usług Azure, z których każda ma określone mocne strony i przypadki użycia. Przewodnik po niezawodności każdej usługi zawiera szczegółowe informacje na temat sposobu, w jaki usługa może pozostać dostępna w różnych scenariuszach, na przykład:
- Błędy przejściowe, które są krótkimi sporadycznymi awariami. Przewodniki dotyczące usług zawierają zalecenia dotyczące najlepszych rozwiązań w celu zminimalizowania ich wpływu, takich jak ponawianie prób i używanie zestawów SDK dostępnych Microsoft.
- Awarie strefy dostępności, dzięki czemu usługa może automatycznie przekierowywać żądania w celu zachowania wysokiej dostępności.
- Awarie całego regionu, dzięki czemu usługa może przejść w tryb failover do regionu pomocniczego i kontynuować działanie podczas zakłóceń w regionie.
Aby wyświetlić przewodniki dotyczące niezawodności dla wielu usług Azure, zobacz Przewodniki dotyczące niezawodności według usługi.
Projektowanie niezawodnych obciążeń
Niezawodność wynika z ciągłego cyklu definiowania celów, projektowania pod kątem awarii i szybkiego odzyskiwania, testowania założeń i ulepszania poprzez uczenie operacyjne. Skorzystaj z przewodników dotyczących niezawodności platformy Azure Well-Architected i usług, aby dowiedzieć się, co zapewnia każda usługa domyślnie i co wymaga jawnej konfiguracji. Aby uzyskać ustrukturyzowane podejście do implementowania niezawodności, zobacz model dojrzałości do niezawodności platformy Azure Well-Architected Framework.
Podczas projektowania połącz podstawowe pojęcia z pojęciami technicznymi. Podstawowe pojęcia, takie jak ciągłość działalności biznesowej i wspólna odpowiedzialność , określają, jakie wyniki należy osiągnąć. Pojęcia techniczne, takie jak nadmiarowość, replikacja, kopia zapasowa, tryb failover i powrót po awarii definiują sposób implementowania tych wyników w architekturze i operacjach. Umowy dotyczące poziomu usług pomagają zrozumieć gwarancje otrzymane od dostawców usług.
Niezależność i miejsce przechowywania danych
Podczas projektowania niezawodności należy uwzględnić wymagania dotyczące niezależności i rezydencji danych na wczesnym etapie, ponieważ mają one wpływ na wybór regionu, strategię replikacji i ścieżki trybu failover. Odporna architektura może nadal nie spełniać wymogów zgodności, jeśli przełączenie awaryjne lub przenoszenie danych przekracza granice objęte ograniczeniami. Aby uzyskać więcej informacji, zobacz Niezawodność i niezależność.
Niezawodność Azure jest osiągana dzięki połączeniu odpornych podstaw platform z przemyślanym projektowaniem obciążeń i operacjami. Zrozumienie, co zapewnia Azure i gdzie należy podejmować decyzje projektowe i konfiguracyjne, można tworzyć systemy, które nadal spełniają oczekiwania biznesowe, nawet w obecności awarii.