Se connecter à des services dans Azure Container Apps (préversion)
Lorsque vous développez des applications dans Azure Container Apps, vous devez souvent vous connecter à différents services. Au lieu de créer des services à l’avance et de les connecter manuellement à votre application conteneur, vous pouvez rapidement créer des instances de services de niveau développement conçues pour les environnements hors production appelés « modules complémentaires ».
Les modules complémentaires vous permettent d’utiliser des services OSS sans la charge des téléchargements manuels, de la création et de la configuration.
Une fois que vous êtes prêt pour que votre application utilise un service de niveau de production, vous pouvez connecter votre application à un service managé Azure.
Les services disponibles en tant que module complémentaire sont les suivants :
Titre | Nom du service |
---|---|
Kafka | kafka |
MariaDB | mariadb |
Milvus | milvus |
PostgreSQL (open source) | postgres |
Qdrant | qdrant |
Redis (open source) | redis |
Weaviate | weaviate |
Vous pouvez obtenir la liste la plus récente des services complémentaires en exécutant la commande suivante :
az containerapp add-on --help
Consultez la section sur comment gérer un service pour obtenir des instructions d’utilisation.
Fonctionnalités
Les modules complémentaires sont fournis avec les fonctionnalités suivantes :
- Étendue : le module complémentaire s’exécute dans le même environnement que l’application conteneur connectée.
- Mise à l’échelle : le module complémentaire peut être mis à l’échelle à zéro lorsqu’il n’y a pas de demande pour le service.
- Tarification : la facturation des modules complémentaires est inférieure à la tarification basée sur la consommation. La facturation se produit uniquement lorsque les instances du module complémentaire sont en cours d’exécution.
- Stockage : le module complémentaire utilise le stockage persistant pour s’assurer qu’il n’y a aucune perte de données à mesure que le module complémentaire est mis à l’échelle à zéro.
- Révisions : chaque fois que vous modifiez un module complémentaire, une nouvelle révision de votre application conteneur est créée.
Consultez les fonctionnalités spécifiques au service pour les services gérés.
Liaison
Les modules complémentaires et les services gérés se connectent à un conteneur via une liaison.
Voici comment le runtime Container Apps lie une application conteneur à un service :
- Il découvre le service
- Il extrait des valeurs de configuration réseau et de connexion
- Il injecte des informations de configuration et de connexion dans des variables d’environnement d’application conteneur
Une fois qu’une liaison est établie, l’application conteneur peut lire ces valeurs de configuration et de connexion à partir de variables d’environnement.
Développement et production
À mesure que vous passez du développement à la production, vous pouvez passer d’un module complémentaire à un service géré.
Le tableau suivant indique le service à utiliser dans le développement et le service à utiliser en production.
Fonctionnalités | Module complémentaire | Service géré de production |
---|---|---|
Cache | Redis open source | Cache Azure pour Redis |
Base de données | N/A | Azure Cosmos DB |
Base de données | PostgreSQL open source | Azure Database pour PostgreSQL – Serveur flexible |
Vous êtes responsable de la continuité des données entre les environnements de développement et de production.
Gérer un service
Pour connecter un service à une application, vous devez d’abord créer le service.
Utilisez la commande az containerapp add-on <SERVICE_TYPE> create
avec le type de service et le nom pour créer un service.
az containerapp add-on redis create \
--name myredis \
--environment myenv
Cette commande crée un service Redis appelé myredis
dans un environnement Container Apps appelé myenv
.
Pour lier un service à une application, utilisez l’argument --bind
pour containerapp create
.
az containerapp create \
--name myapp \
--image myimage \
--bind myredis \
--environment myenv
Cette commande comprend l’application conteneur standard create
et l’argument --bind
. L’argument de liaison indique au runtime Container Apps de connecter un service à l’application.
L’argument --bind
est disponible pour les commandes create
ou update
.
Pour déconnecter un service d’une application, utilisez l’argument --unbind
sur la commande update
L'exemple suivant vous explique comment délier un service.
az containerapp update --name myapp --unbind myredis
Pour obtenir un didacticiel complet sur la connexion de services, consultez Connecter des services dans Azure Container Apps.
Pour plus d’informations sur les commandes et arguments de service, consultez la référence az containerapp
.
Limites
- Les modules complémentaires sont en préversion publique.
- Toute application conteneur créée avant le 23 mai 2023 n’est pas éligible à l’utilisation des modules complémentaires.
- Les modules complémentaires sont fournis avec des garanties minimales. Par exemple, ils sont redémarrés automatiquement s’ils se bloquent, mais il n’existe aucune qualité de service formelle ou garantie haute disponibilité associée. Pour les charges de travail de production, utilisez des services gérés par Azure.
- Si vous utilisez votre propre réseau virtuel, vous devez utiliser un environnement de profils de charge de travail. La fonctionnalité Modules complémentaires n’est pas prise en charge dans les environnements de consommation seule qui utilisent des réseaux virtuels personnalisés.