Déployer un conteneur univarié Détecteur d’anomalies sur Azure Container Instances
Important
À partir du 20 septembre 2023, vous ne pourrez plus créer de ressources Détecteur d’anomalies. Le service Détecteur d’anomalies sera mis hors service le 1er octobre 2026.
Découvrez comment déployer le conteneur détecteur d’anomalies de Azure AI Services sur Azure Container Instances. Cette procédure illustre la création d’une ressource Détecteur d’anomalies. Puis nous aborderons l’extraction de l’image de conteneur associée. Enfin, nous mettrons en avant la possibilité d’exercer l’orchestration des deux à partir d’un navigateur. L’utilisation de conteneurs peut détourner l’attention des développeurs de la gestion de l’infrastructure, au lieu de se concentrer sur le développement d’applications.
Prérequis
- Utilisez un abonnement Azure. Si vous n’avez pas d’abonnement Azure, créez un compte gratuit avant de commencer.
- Installez Azure CLI (az).
- Moteur docker ; vérifiez que l’interface CLI Docker fonctionne dans une fenêtre de console.
Créer une ressource Détecteur d’anomalies
Connectez-vous au portail Azure.
Sélectionnez la ressource Créer un détecteur d’anomalies.
Entrez tous les paramètres obligatoires :
Paramètre Valeur Nom Nom de votre choix (2-64 caractères) Abonnement Sélectionner l’abonnement approprié Emplacement Sélectionnez n’importe quel emplacement disponible et proche Niveau de tarification F0
- 10 appels par seconde, 20 000 transactions par mois.
Ou :
S0
- 80 appels par secondeGroupe de ressources Sélectionner un groupe de ressources disponible Sélectionnez Créer et attendez que la ressource soit créée. Après sa création, accédez à la page de ressources
Collectez le
endpoint
configuré et une clé d’API :Onglet Clés et points de terminaison dans le portail Paramètre Valeur Vue d'ensemble Point de terminaison Copiez le point de terminaison. Il ressemble à https://<your-resource-name>.cognitiveservices.azure.com/
Clés Clé de l’API Copiez 1 des deux clés. Il s’agit d’une chaîne de 32 caractères alphanumériques sans espaces ni tirets, xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
.
Créer une ressource d’instance de conteneur Azure depuis Azure CLI
Le YAML ci-dessous définit la ressource Azure Container Instance. Copiez et collez le contenu dans un nouveau fichier nommé my-aci.yaml
, et remplacez les valeurs commentés par les vôtres. Reportez-vous au format de modèle pour obtenir du YAML valide. Reportez-vous à Référentiels et images de conteneur pour les noms d’image disponibles et leur référentiel correspondant. Pour plus d’informations sur la référence YAML pour les instances de conteneur, consultez Référence YAML : Azure Container Instances.
apiVersion: 2018-10-01
location: # < Valid location >
name: # < Container Group name >
properties:
imageRegistryCredentials: # This is only required if you are pulling a non-public image that requires authentication to access. For example Text Analytics for health.
- server: containerpreview.azurecr.io
username: # < The username for the preview container registry >
password: # < The password for the preview container registry >
containers:
- name: # < Container name >
properties:
image: # < Repository/Image name >
environmentVariables: # These env vars are required
- name: eula
value: accept
- name: billing
value: # < Service specific Endpoint URL >
- name: apikey
value: # < Service specific API key >
resources:
requests:
cpu: 4 # Always refer to recommended minimal resources
memoryInGb: 8 # Always refer to recommended minimal resources
ports:
- port: 5000
osType: Linux
volumes: # This node, is only required for container instances that pull their model in at runtime, such as LUIS.
- name: aci-file-share
azureFile:
shareName: # < File share name >
storageAccountName: # < Storage account name>
storageAccountKey: # < Storage account key >
restartPolicy: OnFailure
ipAddress:
type: Public
ports:
- protocol: tcp
port: 5000
tags: null
type: Microsoft.ContainerInstance/containerGroups
Notes
Tous les emplacements n’ont pas les mêmes offres de processeur et de mémoire disponibles. Reportez-vous au tableau Emplacement et ressources pour obtenir la liste des ressources disponibles pour les conteneurs par emplacement et par système d’exploitation.
Nous allons nous reposer sur le fichier YAML que nous avons créé pour la commande az container create
. À partir de l’interface CLI, exécutez la commande az container create
en remplaçant le <resource-group>
par le vôtre. En outre, pour la sécurisation des valeurs au sein d’un déploiement YAML, consultez Valeurs sécurisées.
az container create -g <resource-group> -f my-aci.yaml
La sortie de la commande est Running...
si valide. Un peu après, la sortie devient une chaîne JSON représentant la ressource ACI nouvellement créée. L’image de conteneur ne sera probablement pas accessible pendant un certain temps, mais la ressource est maintenant déployée.
Conseil
Prêtez attention aux emplacements des services Azure AI en préversion publique, car le YAML devra être ajusté en conséquence pour correspondre à l’emplacement.
Valider l’exécution d’un conteneur
Il existe plusieurs façons de confirmer que le conteneur s’exécute. Recherchez l’adresse IP externe et le port exposé du conteneur en question, puis ouvrez le navigateur web de votre choix. Utilisez les différentes URL de requête suivantes pour vérifier que le conteneur est en cours d’exécution. Les exemples d’URL de requête listés ici sont http://localhost:5000
, mais votre conteneur spécifique peut varier. Veillez à vous fier à l’adresse IP externe de votre conteneur et au port exposé.
URL de la demande | Objectif |
---|---|
http://localhost:5000/ |
Le conteneur fournit une page d’accueil. |
http://localhost:5000/ready |
Demandée avec la fonction d’extraction, cette URL permet de vérifier que le conteneur est prêt à accepter une requête sur le modèle. Cette requête peut être utilisée pour les probes liveness et readiness de Kubernetes. |
http://localhost:5000/status |
Également demandée avec la fonction d’extraction, cette URL permet de vérifier si la clé API servant à démarrer le conteneur est valide sans provoquer de requête de point de terminaison. Cette requête peut être utilisée pour les probes liveness et readiness de Kubernetes. |
http://localhost:5000/swagger |
Le conteneur fournit un ensemble complet de documentation pour les points de terminaison et une fonctionnalité Essayer. Avec cette fonctionnalité, vous pouvez entrer vos paramètres dans un formulaire HTML basé sur le web, et constituer la requête sans avoir à écrire du code. Une fois la requête retournée, un exemple de commande CURL est fourni pour illustrer les en-têtes HTTP, et le format du corps qui est nécessaire. |
Étapes suivantes
- Consultez Installer et exécuter des conteneurs pour savoir comment tirer (pull) l’image conteneur et exécuter le conteneur.
- Pour obtenir les paramètres de configuration, passez en revue Configurer des conteneurs.
- En savoir plus sur le service API Détecteur d’anomalies