Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Azure Container Apps fournit des API alimentés par Distributed Application Runtime (Dapr) qui 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 évolutive et nécessitant peu de maintenance. Azure Container Apps offre une sélection d’API, de composants et de fonctionnalités Dapr complètement managés, spécifiquement conçus pour des scénarios de microservices. Activez et configurez simplement Dapr comme d’habitude dans votre environnement d’application conteneur.
Remarque
Recherchez les mises à jour et les annonces de publication pour Dapr dans Azure Container Apps dans GitHub.
Fonctionnement des API de microservices avec votre application conteneur
Configurez les API de microservices pour votre environnement d’applications conteneur avec une application conteneur compatible avec Dapr, un composant Dapr configuré pour votre solution et un side-car Dapr invoquant la communication entre eux. Le diagramme suivant illustre ces concepts centraux, en utilisant l’API d’abonnement/de publication comme exemple.
| Étiquette | Paramètres Dapr | Descriptif |
|---|---|---|
| 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. |
Contrôle de version
Au lieu de suivre une planification de mise en production fixe, Dapr dans Azure Container Apps publie de nouvelles fonctionnalités en fonction de la hiérarchisation et de la stabilité des fichiers binaires Dapr. En savoir plus sur les versions de Dapr dans Azure Container Apps.
Les versions Dapr dans Azure Container Apps comprennent :
- Un préfixe de version sémantique, tel que
1.13.6, qui indique la compatibilité avec les API de version du runtime Dapr OSS correspondantes et les outils associés tels que les kits SDK, l’interface CLI, etc. - Un suffixe
-msft.<number>, qui indique l’incorporation de personnalisations spécifiques à Azure pour améliorer la sécurité et la préparation à la production.
Le format de version complet pour Dapr dans Azure Container Apps peut se présenter comme ceci : 1.13.6-msft.1.
Remarque
Il peut arriver que le <number> dans le suffixe ne s’incrémente pas de façon séquentielle. Par exemple, la version 1.13.6-msft.3 peut ignorer 1.13.6-msft.2.
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 (API de bloc de construction et API opérationnelles). Ces API sont entièrement managées et prises en charge pour une utilisation dans des environnements de production.
Pour en savoir plus sur l’utilisation des fonctionnalités et API Dapr alpha, consultez la FAQ sur Dapr.
API de bloc de construction
| API de bloc de construction | Statut | Descriptif |
|---|---|---|
| Appel de service à service | GA | Découvrez les services et effectuez des appels de service à service fiables et directs avec l’authentification et le chiffrement mTLS automatiques. Consultez les limitations connues pour l’appel de service Dapr dans Azure Container Apps. |
| Gestion de l’état | GA | Fournit des fonctionnalités de gestion d’état pour les transactions et les opérations CRUD. |
| Publication/abonnement | GA | Permet aux applications conteneur d’éditeur et d’abonné d’interagir via un répartiteur de messages intermédiaire. Vous pouvez également créer des abonnements déclaratifs à une rubrique à l’aide d’un fichier JSON de composant externe. En savoir plus sur l’API Abonnements déclaratifs pub/sub. |
| Liaisons | GA | Déclencher vos applications en fonction des événements |
| Acteurs | GA | Les acteurs Dapr sont basés sur des messages, monothreads, les unités de travail sont conçues pour effectuer une mise à l’échelle rapide. Par exemple, dans des situations de charge de travail volumineuses en rafale. |
| Secrets | GA | Accédez aux secrets à partir 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. |
API opérationnelles
| API opérationnelle | Statut | Descriptif |
|---|---|---|
| Intégrité | GA | Sondes de contrôle d’intégrité qui surveillent la préparation (readiness) ou l’activité (liveness) de Dapr et la préparation à l’initialisation des SDK. L’API d’intégrité est uniquement disponible pour HTTP. Les vérifications d’intégrité du sidecar Dapr sont automatiquement configurées lorsque Dapr est activé sur votre application conteneur. |
| Metadata | GA | Retourne des informations sur le sidecar, ce qui permet la découverte du runtime. |
SDK compatibles
Les derniers packages de SDK client de Dapr sont compatibles avec Azure Container Apps. Vous pouvez utiliser des SDK de Dapr avec l’une des API d’exécution GA Dapr v1.12 prises en charge.
Remarque
Actuellement, les packages de SDK de flux de travail, acteurs et extensions de serveur Dapr ne sont pas compatibles avec Azure Container Apps. En savoir plus sur tous les packages de SDK Dapr.
Composants Dapr
Composants de niveau 1 vs. 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 (sécurité ou régression grave). Sinon, Microsoft collabore avec des partenaires open source pour traiter le problème dans un correctif logiciel ou la prochaine version régulière.
- Composants de niveau 2 : composants qui sont examinés avec une priorité moindre, car ils ne sont pas dans un état stable ou sont liés à un fournisseur tiers.
Composants de niveau 1
| API (Interface de Programmation d'Applications) | Composant | Type |
|---|---|---|
| Gestion de l'état | Base de données Azure Cosmos DB Stockage Blob Azure v1 Stockage Table Azure Microsoft SQL Server |
state.azure.cosmosdbstate.azure.blobstoragestate.azure.tablestoragestate.sqlserver |
| Publish & subscribe (publication-abonnement) | files d’attente Azure Service Bus Rubriques Azure Service Bus Hubs d'événements Azure |
pubsub.azure.servicebus.queuespubsub.azure.servicebus.topicspubsub.azure.eventhubs |
| Liaison | files d’attente de stockage Azure files d’attente Azure Service Bus Stockage Blob Azure Hubs d'événements Azure |
bindings.azure.storagequeuesbindings.azure.servicebusqueuesbindings.azure.blobstoragebindings.azure.eventhubs |
| Gestion des secrets | Azure Key Vault | secretstores.azure.keyvault |
Composants de niveau 2
| API (Interface de Programmation d'Applications) | Composant | Type |
|---|---|---|
| Gestion de l'état | PostgreSQL MySQL & MariaDB Redis |
state.postgresqlstate.mysqlstate.redis |
| Publish & subscribe (publication-abonnement) | Apache Kafka Flux Redis |
pubsub.kafkapubsub.redis |
| Liaison | Azure Event Grid Base de données Azure Cosmos DB Apache Kafka PostgreSQL Redis Cron |
bindings.azure.eventgridbindings.azure.cosmosdbbindings.kafkabindings.postgresqlbindings.redisbindings.cron |
| Paramétrage | PostgreSQL Redis |
configuration.postgresqlconfiguration.redis |
En savoir plus sur l’utilisation des composants Dapr pris en charge dans Azure Container Apps.
Outillage
Azure Container Apps garantit la compatibilité avec des outils open source Dapr, tels que des 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
- Déployez Dapr avec :
- Activer Dapr dans une application conteneur existante.