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 PaaS, ponieważ nie zmusza cię do konkretnego modelu programowania i pozwala kontrolować zasady skalowania zarówno w poziomie, jak i w pionie. 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ę.

Zrzut ekranu przedstawiający wszystkie usługi obliczeniowe platformy Azure.

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, wdrożenia, ingressu 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 Azure Container Registry, Docker Hub i GitHub Container registry. 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 wersji dla niebiesko/zielonych wdrożeń i testowania A/B.
  • Ingress: prosta konfiguracja Ingress 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.
  • Sekrety: sekrety, które są współdzielone między kontenerami, regułami skalowania i sidecarami Dapr.
  • Monitorowanie: standardowe strumienie danych wyjściowych i błędów, które są automatycznie zapisywane w usłudze Log Analytics.
  • Dapr: integracja Dapr dla twoich aplikacji kontenerowych. 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 kontenerowa: grupa kontenerów (pod), 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.

Zrzut ekranu przedstawiający pojęcia dotyczące usługi Container Apps.

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