Zarządzanie i operacje dla usługi Azure Container Apps — akcelerator strefy docelowej
Przejrzyj funkcje i usługi usługi Azure Container Apps dostępne, aby ułatwić projektowanie i konserwację aplikacji pod kątem długoterminowej kondycji i stabilności.
Omówienie limitów usługi Container Apps.
Rozważ izolowanie obciążeń na poziomie sieci, obliczeń, monitora lub danych.
Omówienie sposobów kontrolowania zużycia zasobów przez obciążenia.
Użyj sond kondycji, aby ułatwić raportowanie i odzyskiwanie po pogorszeniu kondycji aplikacji.
Użyj języka Dapr , aby nawiązać bezpieczne połączenia z usługami zewnętrznymi.
Rejestrowanie i monitorowanie umożliwiają wgląd w wszelkie problemy związane z aplikacjami.
Używaj alertów podczas krytycznych zdarzeń aplikacji i systemu, aby zapewnić, że pracownicy operacyjni mogą podejmować szybkie działania w przypadku awarii aplikacji.
Zdefiniuj strategię skalowania, aby zapewnić wystarczającą ilość dostępnej pojemności do obsługi ruchu do aplikacji, jednocześnie minimalizując nieużywaną pojemność. Wyzwalacze skalowania obejmują użycie procesora CPU lub pamięci wraz z dowolnym obsługiwanym modułem skalowania KEDA.
Zapoznaj się z usługą Envoy, ponieważ usługa Azure Container Apps używa jej jako serwera proxy sieci.
Należy pamiętać o wymaganiach celu czasu odzyskiwania (RTO) i celu punktu odzyskiwania (RPO) wokół ciągłości działania i odzyskiwania po awarii. Zdefiniuj umowę dotyczącą poziomu usług (SLA) dla infrastruktury i aplikacji. Dowiedz się więcej o umowie SLA dla usługi Azure Container Apps. Aby uzyskać informacje o miesięcznych obliczeniach czasu pracy, zobacz sekcję Szczegóły umowy SLA.
W zależności od konkretnych wymagań aplikacji może być konieczne użycie miar wysokiej dostępności w celu zapewnienia ciągłej operacji, jeśli występują problemy z podstawową platformą Azure. Na platformie Azure różne strefy i regiony umożliwiają tworzenie rozwiązań wysokiej dostępności:
Strefy dostępności to konstrukcje izolacji błędów w projekcie centrum danych platformy Azure. Każda strefa ma własną moc, sieć i chłodzenie, aby zminimalizować ryzyko awarii w różnych strefach. Aby użyć Strefy dostępności, każdy zasób platformy Azure można wdrożyć w określonej strefie ("strefowo") lub we wszystkich strefach ("strefowo nadmiarowy").
Rozwiązania wieloregionowe zapewniają najwyższy poziom izolacji błędów i najwyższą niezawodność, ale często trudniej je zaimplementować ze względu na większe opóźnienie między regionami geograficznymi. To opóźnienie może spowodować opóźnienia replikacji danych. Aby uzyskać więcej informacji na temat projektowania w wielu regionach, zobacz dokumentację platformy Azure Mission Critical.
Rozważ użycie usług Azure DevOps i GitHub w celu zapewnienia zautomatyzowanych sposobów zarządzania procesami tworzenia, kompilowania i wdrażania.
Zalecenia
Izoluj według środowiska: utwórz odrębne środowiska usługi Container Apps w celu uzyskania pełnej izolacji zasobów. Unikaj używania poprawek do tworzenia aplikacji kontenerów specyficznych dla dzierżawy. Aby uzyskać więcej informacji, zobacz Usługa Azure Container Apps w rozwiązaniu wielodostępnym.
Użyj limitów do zasobów obliczeniowych: użyj limitów zasobów procesora CPU i pamięci kontenerów , aby zarządzać zasobami obliczeniowymi i pamięci w środowisku. Limity domyślne kontenera to odpowiednio 2 procesory wirtualne i 4 GiB dla obliczeń i pamięci.
Użyj sond kondycji: dodaj sondy kondycji do aplikacji kontenera. Upewnij się, że poprawki zawierają
livenessProbe
wartości ,readinessProbe
istartupProbe
. Aby uzyskać więcej informacji, zobacz Sondy kondycji usługi Azure Container Apps.Poprawnie skonfiguruj sondy kondycji: sonda kondycji jest odpowiedzialna za wykonywanie wywołań do punktu końcowego i oczekuje otrzymania kodu stanu powodzenia, zazwyczaj w zakresie HTTP 2xx, gdy system jest w dobrej kondycji. Zaleca się, aby ten punkt końcowy sprawdzał nie tylko kondycję systemu, ale także kondycję krytycznych składników podrzędnych, takich jak bazy danych, magazyn i usługi obsługi komunikatów. Aby zapobiec ciągłej kaskadowej kontroli kondycji, ważne jest zaimplementowanie buforowania podrzędnych odpowiedzi kondycji przez krótki czas.
Obszerne rejestrowanie: tworzenie zapytań usługi Log Analytics w celu wyszukiwania ostrzeżeń, błędów i komunikatów krytycznych.
Dzienniki aplikacji są generowane przez komunikaty wyjściowe konsoli kontenerów (/
stdout
stderr
). Po włączeniu języka Dapr dane wyjściowe konsoli zawierają zarówno kontener aplikacji, jak i komunikaty przyczepki dapr. Zapoznaj się z tematem Monitorowanie dzienników, aby uzyskać więcej szczegółowych informacji na temat wykonywania zapytań dotyczących dzienników przy użyciu usługi Log Analytics.Dzienniki systemowe są generowane przez usługę Azure Container Apps.
Włącz śledzenie wizualne: po włączeniu języka Dapr skonfiguruj "DaprAIInstrumentationKey" na poziomie środowiska usługi ACA, aby wizualizować rozproszone śledzenie aplikacji kontenerów na mapie aplikacji aplikacja systemu Azure Szczegółowe informacje.
Użyj zestawu SDK Szczegółowe informacje aplikacji: używanie zestawu SDK Szczegółowe informacje aplikacji dla danych aplikacji jako agenta automatycznego instrumentacji nie jest jeszcze obsługiwane.
Użyj stref dostępności: jeśli potrzebujesz wysokiej dostępności, użyj Strefy dostępności na wszystkich zasobach. Upewnij się, że nie tylko aplikacje kontenerów są strefowo nadmiarowe, ale także sąsiadujące usługi wymagane do realizacji żądań, takich jak bazy danych, magazyn i usługi obsługi komunikatów.
Użyj replikacji rozproszonej: w celach odzyskiwania po awarii upewnij się, że dane aplikacji i kod źródłowy są dostępne w więcej niż jednym regionie świadczenia usługi Azure. Na przykład konta usługi Azure Storage umożliwiają umieszczanie replik geograficznie replikowanych geograficznie, a bazy danych Azure SQL Database umożliwiają umieszczanie replik do odczytu w innych regionach.
Automatyzowanie kompilacji: użyj kompleksowej automatyzacji do kompilowania i wdrażania aplikacji usługi Azure Container Apps.
Użyj rejestru kontenerów: zapisz obrazy kontenerów w usłudze Azure Container Registry i zreplikuj rejestr geograficznie do każdego regionu usługi ACA.
Testowanie planu odzyskiwania po awarii: utwórz i przetestuj plan odzyskiwania po awarii regularnie przy użyciu kluczowych scenariuszy awarii. Aby uzyskać więcej informacji, zobacz Testowanie kopii zapasowej i odzyskiwania po awarii.