Konfigurer Azure Container Apps
I dette undermodul lærer du, hvordan du opretter et Azure Container Apps-miljø og en Azure for PostgreSQL-database ved hjælp af Azure CLI. Du konfigurerer derefter Quarkus-programmet, så det opretter forbindelse til fjerndatabasen i stedet for det lokale.
Der er flere tilgængelige mål for udrulning af et Quarkus-program på Azure, lige fra IaaS til FaaS. Azure Container Apps er mellem PaaS og FaaS. Det ligner mere en PaaS, fordi den ikke tvinger dig til en bestemt programmeringsmodel, og du kan styre de regler, der skal skaleres ud og ind. På den anden side har den nogle serveruafhængige egenskaber, f.eks. skalering til nul, hændelsesbaseret skalering og en prismodel pr. sekund.
Container Apps er bygget på Azure Kubernetes Service (AKS). Den omfatter dyb integration med KEDA- (hændelsesdrevet autoskalering for Kubernetes), Dapr- (distribueret kørsel af program) og Envoy (en tjenesteproxy, der er udviklet til oprindelige programmer i cloudmiljøet). Den underliggende kompleksitet er abstrakt, så du behøver ikke at konfigurere kubernetes-tjenesten, udrulningen, indgående eller volumenmanifester. Du får en simpel API og brugergrænseflade til at konfigurere dit objektbeholderprogram. På grund af denne forenkling har du mindre kontrol, end du har med AKS.
I Objektbeholderapps skal programmer pakkes i en Docker-objektbeholder. Container Apps understøtter Docker-objektbeholdere, der er bygget med Dockerfiles eller Med Jib. Objektbeholderen skal være tilgængelig i en objektbeholderregistreringsdatabase. Container Apps understøtter Azure Container Registry, Docker Hub og GitHub Container registry. Når programbilledet er tilgængeligt i en registreringsdatabase, understøtter Container Apps installation fra Azure Portal, Azure CLI, GitHub Actions og Azure DevOps.
Container Apps indeholder følgende funktioner.
- Revisioner: Automatisk versionering, der hjælper dig med at administrere programlivscyklussen for dine objektbeholderapps.
- Trafikkontrol: Muligheden for at opdele indgående HTTP-trafik på tværs af flere ændringer for blå/grønne udrulninger og A/B-test.
- indgående: Enkel HTTPS-ingresskonfiguration. Du behøver ikke at bekymre dig om DNS eller certifikater.
- automatisk skalering: KEDA-understøttede skaleringsudløsere til skalering af din app baseret på eksterne målepunkter.
- Secrets: Hemmeligheder, der deles mellem objektbeholdere, skaleringsregler og Dapr-sidevogne.
- Overvågning: Standardoutput og fejlstreams, der automatisk skrives til Log Analytics.
- Dapr-: Dapr-integration til dine objektbeholderapps. Aktivér denne integration ved hjælp af et simpelt flag.
I den næste øvelse bliver du introduceret til følgende begreber.
- Miljø: En udvidet sikkerhedsgrænse omkring en gruppe objektbeholderapps. Appsene udrulles i et enkelt virtuelt netværk, de kan nemt kommunikere med hinanden, og de skriver logge til et enkelt Log Analytics-arbejdsområde. Et miljø kan sammenlignes med et Kubernetes-navneområde.
- Container-app: En gruppe objektbeholdere (en pod), der er udrullet og skaleres sammen. De deler en enkelt diskplads og et enkelt netværk.
- Revision: Et uforanderligt snapshot af en objektbeholderapp. Nye ændringer oprettes automatisk og er værdifulde for HTTP-trafikomdirigeringsstrategier, f.eks. A/B-test.
Du skal nu oprette et objektbeholderappmiljø for at se, hvordan disse elementer fungerer.