Passer en revue Azure Container Apps

Effectué

Les équipes disposent de nombreuses options pour créer et déployer des applications conteneurisées cloud natives sur Azure. Cet article vous aide à comprendre les scénarios et les cas d’utilisation les mieux adaptés à Azure Container Apps et en quoi celui-ci diffère des autres options de conteneur sur Azure.

Ce qu’il faut savoir sur Azure Container Apps

Azure Container Apps est une plateforme serverless qui vous permet de gérer moins d’infrastructure et de faire des économies lors de l’exécution d’applications conteneurisées. Vous n’avez plus besoin de vous soucier de la configuration du serveur, de l’orchestration des conteneurs et des détails de déploiement, car Container Apps fournit toutes les ressources de serveur à jour requises pour que vos applications restent stables et sécurisées.

Les usages courants d’Azure Container Apps comprennent :

  • Déploiement de points de terminaison d’API
  • Hébergement de tâches de traitement en arrière-plan
  • Gestion du traitement piloté par les événements
  • Exécution de microservices

De plus, les applications basées sur Azure Container Apps peuvent être mises à l’échelle dynamiquement en fonction des caractéristiques suivantes :

  • Trafic HTTP
  • Traitement piloté par les événements
  • Charge du processeur ou de la mémoire
  • N’importe quel scaler pris en charge par KEDA

Ce qu’il faut prendre en considération lors de l’utilisation d’Azure Container Apps

Azure Container Apps vous permet de créer des microservices serverless et des travaux basés sur des conteneurs. Les fonctionnalités distinctives de Container Apps sont notamment :

  • Optimisées pour l’exécution de conteneurs à usage général, en particulier pour les applications qui couvrent de nombreux microservices déployés dans des conteneurs.
  • Repose sur Kubernetes et des technologies open source comme Dapr, KEDA et envoy.
  • Prend en charge les applications de type Kubernetes et les microservices avec des fonctionnalités comme la découverte du service et la répartition du trafic.
  • Autorise les architectures d’application pilotées par les événements en prenant en charge la mise à l’échelle en fonction du trafic et en tirant des données à partir de sources d’événements comme les files d’attente, y compris la mise à l’échelle sur 0.
  • Il prend en charge l’exécution de travaux à la demande, planifiés et pilotés par les événements.

Azure Container Apps ne fournit pas d’accès direct aux API Kubernetes sous-jacentes. Si vous souhaitez créer des applications de style Kubernetes et que vous n’avez pas besoin d’un accès direct à toutes les API Kubernetes natives et à la gestion des clusters, Container Apps offre une expérience complètement managée basée sur des bonnes pratiques. Pour ces raisons, de nombreuses équipes peuvent préférer utiliser Azure Container Apps pour commencer à créer des microservices de conteneur.

Comparer les solutions de gestion de conteneurs

Azure Container Instances (ACI) peut être géré de plusieurs façons. Azure Container Apps (ACA) est un moyen, Azure Kubernetes Service (AKS) en est un autre. Voici un tableau comparatif montrant quand utiliser ACA et AKS.

Fonctionnalité Azure Container Apps (ACA) Azure Kubernetes Service (AKS)
Vue d’ensemble ACA est une plateforme de conteneurs serverless qui simplifie le déploiement et la gestion des applications basées sur des microservices en oubliant l’infrastructure sous-jacente. AKS simplifie le déploiement d’un cluster Kubernetes managé dans Azure en déchargeant la surcharge opérationnelle sur Azure. Il convient aux applications complexes qui nécessitent une orchestration.
Déploiement ACA offre une expérience PaaS avec des fonctionnalités de déploiement et de gestion rapides. AKS offre des options de contrôle et de personnalisation supplémentaires pour les environnements Kubernetes, c’est pourquoi il convient aux applications et microservices complexes.
Gestion ACA s’appuie sur AKS et offre une expérience PaaS simplifiée pour exécuter des conteneurs, avec des fonctionnalités supplémentaires telles que Dapr pour les microservices. AKS fournit un contrôle plus précis sur l’environnement Kubernetes, adapté aux équipes avec une expertise Kubernetes.
Évolutivité ACA prend en charge la mise à l’échelle automatique basée sur HTTP et la mise à l’échelle pilotée par les événements, ce qui le rend idéal pour les applications qui doivent répondre rapidement aux changements de la demande. AKS offre une mise à l’échelle automatique horizontale des pods et une mise à l’échelle automatique des clusters, en fournissant des options de scalabilité robustes pour les applications conteneurisées.
Cas d'utilisation ACA est conçu pour les microservices et les applications serverless qui bénéficient d’une mise à l’échelle rapide et d’une gestion simplifiée. AKS est idéal pour les applications complexes longue durée qui nécessitent l’ensemble des fonctionnalités Kubernetes et une intégration étroite à d’autres services Azure.
Intégration ACA s’intègre à Azure Logic Apps, Functions et Event Grid pour les architectures pilotées par les événements. AKS fournit des fonctionnalités comme Azure Policy pour Kubernetes, Azure Monitor pour conteneurs et Azure Defender pour Kubernetes afin d’obtenir une sécurité et une gouvernance complètes.