Microservices vereenvoudigen: Azure Container Apps versus AKS
By Mirko Peters ·
Wanneer moderne ontwikkelteams scalebare, cloud-native applicaties willen bouwen, wordt containerisatie snel de standaardaanpak. Het beheren van containers op schaal vereiste echter traditioneel diepgaande kennis van Kubernetes: een tool die berucht is om zijn steile leercurve, complex clusterbeheer en zware operationele last. Voor veel organisaties werd de weg naar microservices geremd door infra
Automatically translated with AI from the original post. Read the English original
Wanneer moderne ontwikkelteams scalebare, cloud-native applicaties willen bouwen, wordt containerisatie snel de standaardaanpak. Het beheren van containers op schaal vereiste echter traditioneel diepgaande kennis van Kubernetes, een tool die berucht is om zijn steile leercurve, complex clusterbeheer en zware operationele last. Voor veel organisaties werd de weg naar microservices geremd door infrastructuurvraagstukken in plaats van door softwareontwerp.
Gelukkig biedt Microsoft Azure krachtige oplossingen die deze complexiteit wegnemen. In deze uitgebreide gids onderzoeken we hoe je je microservicesarchitectuur kunt vereenvoudigen door de verschillen tussen Azure Container Apps en Azure Kubernetes Service (AKS) te bekijken. Of je nu een ervaren cloudarchitect bent of een ontwikkelaar die code sneller wil uitrollen, het kiezen van het juiste hostingplatform is essentieel om een balans te vinden tussen operationele controle, snelheid en kosteneffectiviteit.
Inleiding tot het vereenvoudigen van microservices
Microservicesarchitecturen hebben veranderd hoe we software ontwerpen. Ze laten teams monolithische applicaties opdelen in kleinere, onafhankelijk uitrolbare services. Maar naarmate het aantal services groeit, neemt ook de complexiteit van het aansturen ervan toe. Teams besteden vaak meer tijd aan het configureren van netwerkbeleid, het beheren van ingresscontrollers en het oplossen van problemen met clusternodes dan aan het schrijven van echte bedrijfslogica.
Om deze werkwijze te vereenvoudigen, is een verschuiving nodig van infrastructuurgericht uitrollen naar app-gericht uitrollen. Ontwikkelaars willen code kunnen pushen, eenvoudige schaalregels kunnen definiëren en de cloudprovider de onderliggende orkestratie laten afhandelen. Door gebruik te maken van serverloze containerplatforms kunnen engineeringteams hun cognitieve belasting aanzienlijk verminderen en de time-to-market versnellen. Deze filosofie vormt de basis van modern cloud-native ontwikkelen in Azure.
Overzicht van Azure Container Apps

Azure Container Apps is een krachtig platform dat is ontworpen om je proces voor het uitrollen van applicaties te vereenvoudigen. Het stelt je in staat containergebaseerde applicaties te bouwen en te beheren zonder de complexiteit van traditioneel Kubernetes-beheer. Hieronder bekijken we nader wat Azure Container Apps onderscheidt.
Belangrijkste kenmerken
- Positionering binnen het Azure-ecosysteem: Azure Container Apps bevindt zich tussen Azure Container Instances en Azure Kubernetes Service. Het biedt een meer app-gerichte, eenvoudigere en serverloze ervaring dan Azure Kubernetes Service (AKS), dat meer clustergericht is. Waar AKS directe toegang tot de Kubernetes-API's biedt voor geavanceerde scenario's, richt Azure Container Apps zich op gebruiksgemak, waardoor het ideaal is voor ontwikkelaars die misschien niet bekend zijn met Kubernetes.
- Automatisch schalen: Een van de opvallendste kenmerken van Azure Container Apps is de mogelijkheid om automatisch te schalen op basis van de vraag. Je kunt schaalregels instellen op basis van HTTP-verkeer of aangepaste metrics. Dit betekent dat je applicaties kunnen terugschalen naar nul wanneer ze niet worden gebruikt, wat kosten bespaart, terwijl ze toch klaarstaan om verkeer af te handelen wanneer dat nodig is. Hier volgt een snelle vergelijking van de schaalmogelijkheden:
| Kenmerk | Azure Container Apps | Azure App Services |
|---|---|---|
| Automatisch schalen | Op basis van HTTP-verkeer of aangepaste metrics | Schaalt omhoog of uit op basis van de vraag |
| Granulariteit van beheer | Hoog, maakt schalen per afzonderlijke container mogelijk | Lager, minder controle over schalen |
| Ondersteuning voor microservices | Uitstekend, ontworpen voor microservices | Beperkt, beter geschikt voor monolithische apps |
- Ingebouwde netwerkfunctionaliteit: Azure Container Apps vereenvoudigt de netwerkconfiguratie voor je applicaties. Het biedt beveiligde omgevingen waarin je containerapps met elkaar kunnen communiceren. Je kunt netwerkinstellingen delen en beveiligingsregels eenvoudig onderhouden. Deze ingebouwde netwerkfunctionaliteit maakt het mogelijk om je applicaties in virtuele netwerken uit te rollen, wat de beveiliging verbetert en ze indien nodig isoleert van het publieke internet.
- Serverless-ervaring: Met Azure Container Apps krijg je een echte serverless-ervaring. Je hoeft dus niet na te denken over het beheer van de infrastructuur. Het platform regelt alles voor je, zodat je je kunt concentreren op je applicatie. Dit is hoe de serverless-functies de operationele efficiëntie beïnvloeden:
| Functie | Beschrijving | Impact op operationele efficiëntie |
|---|---|---|
| Serverless GPU's | Integratie met NVIDIA NIM voor AI-workloads. | Vermindert de beheerlast en verbetert de prestaties. |
| Geavanceerde netwerkfunctionaliteit | Aangepaste VNet-integratie, privé-eindpunten en ondersteuning voor NAT Gateway. | Maakt naadloze schaalbaarheid en genuanceerdere netwerkarchitecturen mogelijk. |
| Observability-functies | Verbeterde monitoring van prestaties en visualisatie van telemetrie. | Verbetert de prestaties van applicaties en de mogelijkheden voor debugging. |
- Integratie met open-sourcetechnologieën: Azure Container Apps integreert naadloos met open-sourcetechnologieën zoals KEDA en Dapr. KEDA maakt automatisch schalen van je containers mogelijk op basis van gebeurtenissen uit verschillende bronnen, wat de schaalbaarheid vergroot. Dapr fungeert als sidecar en biedt functies om applicaties te bouwen zonder dat je de infrastructuur direct hoeft te beheren. Deze integratie vereenvoudigt je ontwikkelproces en laat je je concentreren op het bouwen van goede applicaties.
Hoe Azure Container Apps werkt

Wanneer je je verdiept in Azure Container Apps, ontdek je een robuuste architectuur die is ontworpen om de implementatie van gecontaineriseerde applicaties te vereenvoudigen. Deze volledig beheerde service laat je je concentreren op je code in plaats van op de onderliggende infrastructuur. Hier volgt een nadere blik op hoe het allemaal werkt.
Implementatieproces
De architectuur van Azure Container Apps is gebouwd om microservices en gebeurtenisgestuurde applicaties te ondersteunen. Het biedt een naadloze implementatie-ervaring zonder het gedoe van het beheren van servers. Hier volgt een kort overzicht van de belangrijkste functies:
| Functie | Beschrijving |
|---|---|
| Beheerde service | Azure Container Apps is een volledig beheerde serverless containerservice voor microservices. |
| Automatisch schalen | Ingebouwde mogelijkheden voor automatisch schalen, inclusief schalen naar nul. |
| Integratie | Integreert met Azure Kubernetes Service (AKS) voor geavanceerde netwerkfunctionaliteit en monitoring. |
| Implementatie | Vereenvoudigt de implementatie en het beheer van gecontaineriseerde applicaties zonder zorgen over de infrastructuur. |
| Ondersteuning voor applicaties | Ondersteunt zowel HTTP-gebaseerde als gebeurtenisgestuurde applicaties, ideaal voor cloud-native ontwikkeling. |
In deze omgeving communiceren je applicaties via Dapr-API's. Deze API's faciliteren verschillende communicatiepatronen, zoals service-to-service-aanroepen en pub/sub-berichtenverkeer. Daarnaast fungeert Envoy als edge HTTP-proxy, beheert het de verkeersroutering en zorgt het voor beveiligde verbindingen via TLS-terminatie. Zo kunnen je applicaties soepel en veilig met elkaar werken.
Een nieuwe container-app aanmaken is eenvoudig. Volg gewoon deze stappen:
- Open het opdrachtenpalet met F1 of Ctrl+Shift+P.
- Typ ‘container apps’ en selecteer ‘Azure Container Apps: Create Container App’.
- Volg de aanwijzingen om je abonnement, omgeving, app-naam, afbeeldingsbron en overige configuraties te selecteren.
- Configureer de door de gebruiker toegewezen beheerde identiteit met behulp van Azure CLI-opdrachten.
- Als je een Django-app implementeert, migreer dan indien nodig het databaseschema.
- Test je website nadat het aanmaakproces is voltooid.
Zodra je app draait, kun je ingress- en schaalregels configureren om te bepalen hoe je applicatie inkomend verkeer verwerkt. Je kunt regels instellen op basis van HTTP-verzoeken of aangepaste metrics, zodat je app automatisch meeschaalt met de vraag. Deze flexibiliteit zorgt ervoor dat je applicaties responsief blijven en kosteneffectief zijn.
Met Azure Container Apps kun je applicaties snel en efficiënt implementeren, wat het een uitstekende keuze maakt voor ontwikkelaars die hun werkproces willen stroomlijnen.
Voordelen van Azure Container Apps en gebruikssituaties
Azure Container Apps biedt veel voordelen als het gaat om het implementeren van je applicaties. De schaalbaarheid, kosteneffectiviteit en gebruiksvriendelijkheid maken het een vanzelfsprekende keuze voor ontwikkelaars. Laten we eens bekijken hoe het de implementatie vereenvoudigt voor teams van elke omvang.
- Eenvoudige implementatie: Met Azure Container Apps focus je op de logica van je applicatie in plaats van op serverconfiguratie. De platform abstraheert de complexiteit van container-orkestratie, waardoor het eenvoudiger wordt om je applicaties uit te rollen. Dit zijn de belangrijkste voordelen:
- Azure Container Apps is een serverloos platform dat de operationele complexiteit verlaagt.
- Het beschikt over automatisch schalen om wisselende werkbelastingen op te vangen.
- Implementaties zonder downtime zorgen voor continue beschikbaarheid.
Dit betekent dat je, of je nu een kleine startup bent of een grote onderneming, je applicaties snel en efficiënt kunt uitrollen.
- Microservices en event-driven applicaties: Azure Container Apps blinkt uit in het ondersteunen van microservicearchitecturen. Neem bijvoorbeeld de PetClinic-applicatie, die configuratiebeheer en service discovery laat zien. Of bekijk de Node.js Microservices Workshop, die je de basisprincipes van microservices leert met Azure Container Apps. Deze voorbeelden laten zien hoe je robuuste applicaties bouwt die naadloos schalen.
| Applicatienaam | Beschrijving | Gebruikte technologie |
|---|---|---|
| PetClinic | Een op microservices gebaseerde versie die configuratiebeheer laat zien. | Spring Framework |
| Node.js Microservices Workshop | Leert de basisprincipes van microservices met Node.js en Docker. | Node.js, Docker |
| AI Travel Agents | Een modulaire referentieapp die orkestratie van meerdere agents demonstreert. | Python, Node.js, Java, .NET |
| Orleans Cluster | Een end-to-end voorbeeld om een Microsoft Orleans-cluster draaiend te krijgen. | Microsoft Orleans |
| Shopping Cart App | Een voorbeeld van een winkelwagenapp, gebouwd met ASP.NET Core Blazor Server. | ASP.NET Core Blazor Server |
- Ontwikkel- en testomgevingen: Azure Container Apps is ook een uitstekende keuze voor ontwikkeling en testen. Het biedt een serverloos platform dat infrastructuurbeheer abstraheert, zodat je je kunt concentreren op je applicatielogica. Zo helpt het:
- Het ondersteunt applicaties met meerdere containers en integreert met CI/CD-pipelines voor geautomatiseerd testen en uitrollen.
- Je kunt Docker-images gebruiken om consistente omgevingen te garanderen voor ontwikkeling, testen en productie.
- Veilig beheer van gevoelige gegevens wordt mogelijk gemaakt via Azure Key Vault en omgevingsvariabelen.
Om event-driven applicaties te implementeren, kun je deze stappen volgen:
- Maak een Container Apps-omgeving aan voor je container apps.
- Richt een Azure Storage-wachtrij in om berichten naar de container app te sturen.
- Bouw een containerimage die een taak uitvoert.
- Rol de taak uit naar de Container Apps-omgeving.
- Controleer of de berichten in de wachtrij door de container app worden verwerkt.
Met Azure Container Apps geniet je van een eenvoudiger implementatieproces dat past bij zowel kleine als grote teams. Deze flexibiliteit stelt je in staat om te innoveren en je applicaties effectief te laten schalen.
Azure Container Apps en AKS vergelijken
Bij de keuze tussen Azure Container Apps en Azure Kubernetes Service (AKS) komt het grotendeels neer op de expertise van je team, de operationele eisen en de architectuurdiepte. Beide platforms draaien containers in Azure, maar ze dienen verschillende doelen binnen het cloud-native spectrum.
Azure Container Apps is gebouwd bovenop Kubernetes, maar verbergt de onderliggende complexiteit. Je beheert geen nodes, control planes of ruwe Kubernetes-configuratiebestanden. In plaats daarvan werk je met gestroomlijnde API's en gebruiksvriendelijke portals. Daardoor is ACA de ideale keuze voor ontwikkelaars die de betrouwbaarheid en schaalbaarheid van Kubernetes willen, zonder gecertificeerde Kubernetes-beheerders te worden.
Azure Kubernetes Service daarentegen geeft je volledige, onbeperkte toegang tot de Kubernetes-API. Als je organisatie precieze controle vereist over clusternetwerken, eigen admission controllers, complexe service mesh-topologieën of gespecialiseerde nodeconfiguraties, dan is AKS de industriestandaard. Deze kracht brengt echter de verantwoordelijkheid met zich mee voor het beheren van clusterupgrades, beveiligingspatches en het schalen van nodepools.
Aan de slag met Azure
Klaar om in Azure Container Apps te duiken? Aan de slag gaan is eenvoudiger dan je denkt! Volg gewoon deze stappen om je omgeving in te richten en containers effectief te beheren:
- Maak een Azure-account aan met een actief abonnement. Heb je er nog geen, ga dan naar de Azure-website en meld je aan.
- Registreer de resourceprovider
Microsoft.Appin je Azure-abonnement. Deze stap is essentieel om de Container Apps-service te kunnen gebruiken. - Meld je aan bij de Azure-portal. Hier beheer je al je Azure-resources.
- Zoek naar Container Apps in de zoekbalk bovenaan. Je komt dan op de pagina van de Container Apps-service.
- Selecteer Maken > Container App en configureer de basisgegevens van je app. Je hebt gegevens nodig zoals de naam van de app, de regio en de bron van de containerimage.
Zodra je deze stappen hebt doorlopen, draait je Azure Container App in een mum van tijd!
Tip: Vergeet niet de Azure-portal te verkennen. Er zit veel in dat je helpt om je containers en applicaties efficiënter te beheren.
Om je kennis en vaardigheden verder uit te breiden, kun je deze waardevolle bronnen bekijken:
- Officiële documentatie: Bekijk de documentatie van Azure Container Apps voor uitgebreide handleidingen en best practices.
- Snelstartgidsen: Leer hoe je je eerste container-app implementeert met het commando 'az containerapp up'. Deze gidsen zijn ideaal voor beginners.
- Tutorials: Vind diverse tutorials over onderwerpen zoals het implementeren van cloud-native apps en het gebruik van serverless GPU's.
- Community-ondersteuning: Blijf op de hoogte van de Azure-community door Azure Container Apps op sociale media te volgen. Daarnaast heb je toegang tot de GitHub-repository met community-bronnen en discussies.
Door gebruik te maken van deze bronnen verdiep je je begrip van Azure Container Apps en haal je er meer uit. Of je nu beginner bent of ervaren developer, er valt altijd iets nieuws te leren!
Met Azure Container Apps kun je je richten op het bouwen van je applicaties, terwijl het platform het zware werk voor je doet. Begin dus vandaag nog en ontgrendel het volledige potentieel van je gecontaineriseerde applicaties!
Kortom, Azure Container Apps biedt een krachtige oplossing om gecontaineriseerde applicaties eenvoudig te implementeren. Je profiteert van functies zoals automatisch schalen, ingebouwde netwerkfunctionaliteit en serverless mogelijkheden. Dit platform vereenvoudigt de orkestratie van containers zonder de complexiteit van Kubernetes, waardoor het ideaal is voor zowel kleine teams als grote organisaties.
Dit zijn de belangrijkste punten:
- Azure Container Apps verkleint het beheer van infrastructuur en de kosten.
- Het ondersteunt langlopende workloads, zoals webapplicaties.
- Het platform integreert naadloos met open-sourcetechnologieën zoals KEDA en Dapr.
Met deze voordelen kun je je ontwikkelproces verbeteren en je richten op het bouwen van innovatieve applicaties. Waarom zou je Azure Container Apps dus niet verkennen voor je volgende project?
Tip: Begin klein en schaal je applicaties geleidelijk op naarmate je het platform beter leert kennen!
Veelgestelde vragen
Wat zijn Azure Container Apps?
Azure Container Apps is een volledig beheerde service die het implementeren en beheren van gecontaineriseerde applicaties vereenvoudigt. Hiermee kun je microservices en event-driven workloads draaien zonder je zorgen te hoeven maken over infrastructuurbeheer.
Hoe maak ik een container apps-omgeving aan?
Om een container apps-omgeving aan te maken, meld je je aan bij de Azure-portal, zoek je naar "Container Apps" en selecteer je "Maken". Volg de stappen om je omgevingsinstellingen te configureren, inclusief regio en resourcegroep.
Kan ik CI/CD gebruiken met Azure Container Apps?
Ja! Azure Container Apps ondersteunt CI/CD-pipelines. Je kunt je ontwikkelworkflow koppelen aan tools zoals GitHub Actions of Azure DevOps om implementaties te automatiseren en je ontwikkelproces te stroomlijnen.
Welke soorten applicaties kan ik draaien?
Je kunt diverse applicaties draaien, waaronder API's, microservices en event-driven workloads. Azure Container Apps is ontworpen om zowel HTTP-gebaseerde applicaties als applicaties voor achtergrondverwerking effectief af te handelen.
Hoe werkt automatisch schalen?
Automatisch schalen past de resources van je applicatie aan op basis van de vraag. Je kunt schaalregels instellen op basis van HTTP-verkeer of aangepaste metrics, zodat je app naar behoefte op- of afschaalt.
Is Azure Container Apps geschikt voor kleine teams?
Zeker! Azure Container Apps is ideaal voor kleine teams. Het vereenvoudigt implementatie en beheer, zodat je je kunt richten op het bouwen van applicaties zonder uitgebreide infrastructuurkennis.
Wat is het prijsmodel voor Azure Container Apps?
Azure Container Apps werkt met een pay-per-use-prijsmodel. Je betaalt alleen voor de resources die je applicaties verbruiken, waardoor het kosteneffectief is voor zowel kleine als grote projecten.
Hoe kan ik mijn applicaties monitoren?
Je kunt je applicaties monitoren met Azure Monitor en Application Insights. Deze tools geven inzicht in prestaties, gebruik en fouten, zodat je je applicaties effectief kunt optimaliseren.
🎧 Luister naar deze aflevering
Wil je een praktische uitleg over Azure Container Apps? In deze aflevering behandelen we het onderwerp in duidelijke taal en laten we zien waarom het ertoe doet voor Microsoft 365, Azure, Power Platform, beveiliging, AI en modern werken.
Wil je dieper ingaan op dit onderwerp en expertinzichten horen? Bekijk dan de bijbehorende podcastaflevering: Azure Container Apps - Simply Explained.
Luister naar deze aflevering als je:
- De kernconcepten achter Azure Container Apps wilt begrijpen
- wilt zien hoe het past in het bredere Microsoft-technologielandschap
- wilt leren waar het praktische waarde kan opleveren voor je organisatie
Misschien vind je deze gerelateerde M365 FM-afleveringen ook interessant:
- Microsoft Defender for Cloud Apps - Simply Explained
- Power Apps - Simply Explained
- Azure Logic Apps - Simply Explained
- Canvas Apps vs Model-Driven Apps - Eenvoudig uitgelegd
- Power Apps Code Apps - Simply Explained
Ontdek meer praktische Microsoft-gesprekken op M365 FM.