Konfigurowanie usługi Azure Container Apps

Ukończone

W tej lekcji dowiesz się, jak utworzyć środowisko usługi Azure Container Apps i bazę danych azure for PostgreSQL przy użyciu interfejsu wiersza polecenia platformy Azure. Następnie należy skonfigurować aplikację Quarkus tak, aby łączyła się ze zdalną bazą danych zamiast z lokalną.

Kilka obiektów docelowych jest dostępnych do wdrażania aplikacji Quarkus na platformie Azure, począwszy od IaaS do FaaS. Usługa Azure Container Apps znajduje się między usługą PaaS i aplikacją FaaS. Jest to bardziej podobne do modelu PaaS, ponieważ nie zmusza cię do określonego modelu programowania i można kontrolować reguły, za pomocą których można skalować w poziomie i w poziomie. Z drugiej strony ma ona pewne właściwości bezserwerowe, takie jak skalowanie do zera, skalowanie oparte na zdarzeniach i model cen na sekundę.

Screenshot that shows all Azure compute services.

Usługa Container Apps jest oparta na usłudze Azure Kubernetes Service (AKS). Obejmuje głęboką integrację z usługą KEDA (skalowanie automatyczne sterowane zdarzeniami dla platformy Kubernetes), Dapr (rozproszone środowisko uruchomieniowe aplikacji) i Envoy (serwer proxy usługi przeznaczony dla aplikacji natywnych dla chmury). Podstawowa złożoność jest abstrakcyjna, dlatego nie trzeba konfigurować usługi Kubernetes, wdrażania, ruchu przychodzącego ani manifestów woluminów. Uzyskasz prosty interfejs API i interfejs użytkownika, aby skonfigurować konteneryzowaną aplikację. Z powodu tego uproszczenia masz mniejszą kontrolę niż w przypadku usługi AKS.

W usłudze Container Apps aplikacje muszą być spakowane w kontenerze platformy Docker. Usługa Container Apps obsługuje kontenery platformy Docker utworzone za pomocą plików Dockerfile lub Jib. Kontener musi być dostępny w rejestrze kontenerów. Usługa Container Apps obsługuje rejestr kontenerów usługi Azure Container Registry, Docker Hub i GitHub. Po udostępnieniu obrazu aplikacji w rejestrze usługa Container Apps obsługuje wdrażanie z poziomu witryny Azure Portal, interfejsu wiersza polecenia platformy Azure, funkcji GitHub Actions i usługi Azure DevOps.

Usługa Container Apps udostępnia następujące funkcje.

  • Poprawki: automatyczne przechowywanie wersji, które ułatwia zarządzanie cyklem życia aplikacji kontenera.
  • Kontrola ruchu: możliwość dzielenia przychodzącego ruchu HTTP między wiele poprawek dla wdrożeń niebieski/zielonych i testowania A/B.
  • Ruch przychodzący: prosta konfiguracja ruchu przychodzącego HTTPS. Nie musisz martwić się o system DNS ani certyfikaty.
  • Skalowanie automatyczne: wyzwalacze skalowania obsługiwane przez KEDA w celu skalowania aplikacji na podstawie metryk zewnętrznych.
  • Wpisy tajne: wpisy tajne, które są współużytkowane między kontenerami, regułami skalowania i przyczepkami dapr.
  • Monitorowanie: standardowe strumienie danych wyjściowych i błędów, które są automatycznie zapisywane w usłudze Log Analytics.
  • Dapr: integracja języka Dapr dla aplikacji kontenerów. Włącz tę integrację przy użyciu prostej flagi.

W następnym ćwiczeniu przedstawisz następujące pojęcia.

  • Środowisko: rozszerzona granica zabezpieczeń wokół grupy aplikacji kontenerów. Aplikacje są wdrażane w jednej sieci wirtualnej, mogą łatwo komunikować się ze sobą i zapisywać dzienniki w jednym obszarze roboczym usługi Log Analytics. Środowisko można porównać z przestrzenią nazw platformy Kubernetes.
  • Aplikacja kontenera: grupa kontenerów (zasobników), które są wdrażane i skalowane razem. Współużytkują one jedno miejsce na dysku i sieć.
  • Poprawka: niezmienna migawka aplikacji kontenera. Nowe poprawki są tworzone automatycznie i są przydatne w przypadku strategii przekierowywania ruchu HTTP, takich jak testowanie A/B.

Screenshot that illustrates Container Apps concepts.

Teraz utworzysz środowisko aplikacji kontenera, aby zobaczyć, jak działają te elementy.