Intégration de Dapr à Azure Container Apps
Distributed Application Runtime (Dapr) propose des API qui s’exécutent en tant que processus side-car et vous aident à écrire et à implémenter des microservices simples, portables, résilients et sécurisés. Dapr fonctionne conjointement avec Azure Container Apps en tant que couche d’abstraction pour fournir une plateforme à faible maintenance, serverless et évolutive. L’activation de Dapr sur votre application conteneur crée un processus secondaire en même temps que votre code d’application, qui simplifie l’intercommunication entre l’application et Dapr via HTTP ou gRPC.
Dapr dans Azure Container Apps
Configurez Dapr pour votre environnement d’applications conteneur avec une application conteneur compatible Dapr, un composant Dapr configuré pour votre solution, et un side-car Dapr appelant la communication entre eux. Le diagramme suivant illustre ces concepts fondamentaux liés à Dapr dans Azure Container Apps.
Étiquette | Paramètres Dapr | Description |
---|---|---|
1 | Container Apps avec Dapr activé | Dapr est activé au niveau de l'application conteneur par la configuration d’un ensemble d’arguments Dapr. Ces valeurs s’appliquent à toutes les révisions d’une application conteneur donnée lors de l’exécution en mode de révisions multiples. |
2 | Dapr | Les API Dapr complètement managées sont exposées à chaque application conteneur via un side-car Dapr. Les API Dapr peuvent être appelées à partir de votre application conteneur via HTTP ou gRPC. Le side-car Dapr s’exécute sur le port HTTP 3500 et le port gRPC 50001. |
3 | Configuration des composants Dapr | Dapr utilise une conception modulaire où la fonctionnalité est fournie en tant que composant. Les composants Dapr peuvent être partagés par plusieurs applications conteneur. Les identificateurs d’application Dapr fournis dans le tableau d’étendues dictent les applications conteneur compatibles dapr qui chargeront un composant donné au moment de l’exécution. |
Outils, composants et API Dapr pris en charge
API gérées
Azure Container Apps propose des API Dapr managées en disponibilité générale (blocs de construction). Ces API sont complètement managées et prises en charge pour une utilisation dans des environnements de production.
Si vous souhaitez découvrir plus d’informations sur l’utilisation des fonctionnalités et API Dapr alpha, consultez le FAQ de Dapr.
API | Statut | Description |
---|---|---|
Appel de service à service | GA | Découvrez les services et effectuez des appels fiables et directs de service à service avec authentification et chiffrement automatiques mTLS. Consultez les limitations connues pour l’appel de service Dapr dans Azure Container Apps. |
Gestion de l’état | GA | Fournit des capacités de gestion d'état pour les transactions et les opérations CRUD. |
Publication/abonnement | GA | Permet aux applications de conteneur de l'éditeur et de l'abonné de communiquer entre elles via un courtier de messages intermédiaire. Vous pouvez également créer des abonnements déclaratifs à une rubrique à l’aide d’un fichier JSON de composant externe. Découvrez plus en détail l’API pub/sub déclarative. |
Liaisons | GA | Déclencher vos applications en fonction des événements |
Acteurs | GA | Les intervenants Dapr sont pilotés par des messages, monothreads, unités de travail conçus pour effectuer une mise à l’échelle rapide. Par exemple, dans des situations de charge de travail volumineuses en rafale. |
Observabilité | GA | Envoyez des informations de suivi à un backend Application Insights. |
Secrets | GA | Accédez aux secrets de votre code d’application ou référencez des valeurs sécurisées dans vos composants Dapr. |
Configuration | GA | Récupérez et abonnez-vous aux éléments de configuration d’application pour les magasins de configuration pris en charge. |
Composants de niveau 1 et de niveau 2
Un sous-ensemble de composants Dapr est pris en charge. Dans ce sous-ensemble, les composants Dapr sont divisés en deux catégories de prise en charge : niveau 1 ou niveau 2.
- Composants de niveau 1 : composants stables qui reçoivent une investigation immédiate dans les scénarios critiques (de sécurité ou de régression grave). Dans le cas contraire, Microsoft collabore avec open source pour s’adresser à un correctif logiciel ou à la prochaine version régulière.
- Composants de niveau 2 : composants examinés sur une priorité moindre, car ils ne sont pas dans un état stable ou sont avec un fournisseur tiers.
Composants de niveau 1
API | Composant | Type |
---|---|---|
Gestion de l’état | Stockage Blob Azure v1 Azure Table Storage Microsoft SQL Server |
state.azure.blobstorage state.azure.tablestorage state.sqlserver |
Publication et abonnement | files d’attente Azure Service Bus Rubriques Azure Service Bus Azure Event Hubs |
pubsub.azure.servicebus.queues pubsub.azure.servicebus.topics pubsub.azure.eventhubs |
Liaison | files d’attente de stockage Azure files d’attente Azure Service Bus Stockage Blob Azure Azure Event Hubs |
bindings.azure.storagequeues bindings.azure.servicebusqueues bindings.azure.blobstorage bindings.azure.eventhubs |
Gestion des secrets | Azure Key Vault | secrets.azure.keyvault |
Composants de niveau 2
API | Composant | Type |
---|---|---|
Gestion de l’état | Azure Cosmos DB PostgreSQL MySQL et MariaDB Redis |
state.azure.cosmosdb state.postgresql state.mysql state.redis |
Publication et abonnement | Apache Kafka Flux Redis |
pubsub.kafka pubsub.redis |
Liaison | Azure Event Grid Azure Cosmos DB Apache Kafka PostgreSQL Redis Cron |
bindings.azure.eventgrid bindings.azure.cosmosdb bindings.kafka bindings.postgresql bindings.redis bindings.cron |
Configuration | PostgreSQL Redis |
configuration.postgresql configuration.redis |
Outillage
Azure Container Apps veille à la compatibilité via des outils open source Dapr tels que des Kits de développement logiciel (SDK) et l’interface CLI.
Limites
- Spécification de configuration Dapr : toutes les fonctionnalités qui nécessitent l’utilisation de la spécification de configuration Dapr.
- Toutes les annotations side-car Dapr non répertoriées dans le guide d’activation Dapr
- Prise en charge des composants et des API : seuls les composants et API Dapr répertoriés en tant que Disponibilité générale, Niveau 1 ou Niveau 2 dans cet article sont pris en charge dans Azure Container Apps.
- Rappels d’acteur : exigez un minReplicas de 1+ pour garantir que les rappels sont toujours actifs et correctement déclenchés.
- Travaux : Dapr n’est pas pris en charge pour les travaux.
Étapes suivantes
Commentaires
https://aka.ms/ContentUserFeedback.
Prochainement : Tout au long de l'année 2024, nous supprimerons progressivement les GitHub Issues en tant que mécanisme de retour d'information pour le contenu et nous les remplacerons par un nouveau système de retour d'information. Pour plus d’informations, voir:Soumettre et afficher des commentaires pour