Konfigurowanie usługi Azure Container Apps
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ę.
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.
Teraz utworzysz środowisko aplikacji kontenera, aby zobaczyć, jak działają te elementy.