Exercice : Résoudre les problèmes liés à Azure Container Instances
Pour vous aider à comprendre les méthodes de base pour résoudre les problèmes des instances de conteneur, effectuez certaines opérations de base, comme :
- Extraire les journaux du conteneur
- Visualiser les événements du conteneur
- Vous attacher à une instance de conteneur
Récupération des journaux à partir de votre instance de conteneur déployée précédemment
Exécutez la commande az container logs
suivante pour voir la sortie du conteneur de l’application de vote des chats et des chiens que vous avez créée dans l’exercice précédent :
az container logs \
--resource-group learn-deploy-aci-rg \
--name aci-demo
Vous obtenez une sortie similaire à :
Checking for script in /app/prestart.sh
Running script /app/prestart.sh
Running inside /app/prestart.sh, you could add migrations to this file, e.g.:
#! /usr/bin/env bash
# Let the DB start
sleep 10;
# Run migrations
alembic upgrade head
…
Obtenir les événements du conteneur
La commande az container attach
fournit des informations de diagnostic lors du démarrage du conteneur. Une fois que le conteneur a démarré, elle écrit également des flux de sortie et d’erreurs standard sur votre terminal local.
Exécutez az container attach
pour vous attacher à votre conteneur :
az container attach \
--resource-group learn-deploy-aci-rg \
--name aci-demo
Vous obtenez une sortie similaire à :
Container 'aci-demo' is in state 'Running'...
(count: 1) (last timestamp: 2021-09-21 23:48:14+00:00) pulling image "mcr.microsoft.com/azuredocs/azure-vote-front"
(count: 1) (last timestamp: 2021-09-21 23:49:09+00:00) Successfully pulled image "mcr.microsoft.com/azuredocs/azure-vote-front"
(count: 1) (last timestamp: 2021-09-21 23:49:12+00:00) Created container
(count: 1) (last timestamp: 2021-09-21 23:49:13+00:00) Started container
Start streaming logs:
Checking for script in /app/prestart.sh
Running script /app/prestart.sh
…
Conseil
Appuyez sur Ctrl+C pour vous déconnecter de votre conteneur attaché.
Exécuter une commande dans votre conteneur
Quand vous faites des diagnostics et que vous résolvez des problèmes, vous pouvez être amené à exécuter des commandes directement sur votre conteneur en cours d’exécution.
Pour voir les commandes dans votre conteneur, exécutez la commande
az container exec
suivante pour démarrer une session interactive sur votre conteneur :az container exec \ --resource-group learn-deploy-aci-rg \ --name aci-demo \ --exec-command /bin/sh
À ce stade, vous travaillez effectivement à l’intérieur du conteneur.
Exécutez la commande
ls
pour afficher le contenu du répertoire de travail.# ls __pycache__ config_file.cfg main.py prestart.sh static templates uwsgi.ini
Vous pouvez explorer le système plus avant si vous le souhaitez. Quand vous avez terminé, exécutez la commande
exit
pour arrêter la session interactive.
Surveiller l’utilisation de l’UC et de la mémoire sur votre conteneur
Découvrez comment superviser l’utilisation du processeur et de la mémoire sur votre conteneur.
Exécutez la commande
az container show
suivante pour obtenir l’ID de votre instance de conteneur Azure et stocker cet ID dans une variable Bash :CONTAINER_ID=$(az container show \ --resource-group learn-deploy-aci-rg \ --name aci-demo \ --query id \ --output tsv)
Exécutez la commande
az monitor metrics list
pour extraire les informations d’utilisation de l’UC :az monitor metrics list \ --resource $CONTAINER_ID \ --metrics CPUUsage \ --output table
Notez l’argument
--metrics
. Ici, CPUUsage spécifie qu’il faut récupérer l’utilisation de l’UC.La sortie est similaire au texte suivant :
Timestamp Name Average ------------------- ------------ ----------- 2021-09-21 23:39:00 CPU Usage 2021-09-21 23:40:00 CPU Usage 2021-09-21 23:41:00 CPU Usage 2021-09-21 23:42:00 CPU Usage 2021-09-21 23:43:00 CPU Usage 0.375 2021-09-21 23:44:00 CPU Usage 0.875 2021-09-21 23:45:00 CPU Usage 1 2021-09-21 23:46:00 CPU Usage 3.625 2021-09-21 23:47:00 CPU Usage 1.5 2021-09-21 23:48:00 CPU Usage 2.75 2021-09-21 23:49:00 CPU Usage 1.625 2021-09-21 23:50:00 CPU Usage 0.625 2021-09-21 23:51:00 CPU Usage 0.5 2021-09-21 23:52:00 CPU Usage 0.5 2021-09-21 23:53:00 CPU Usage 0.5
Exécutez cette commande
az monitor metrics list
pour récupérer les informations d’utilisation de la mémoire :az monitor metrics list \ --resource $CONTAINER_ID \ --metrics MemoryUsage \ --output table
Ici, vous avez spécifié MemoryUsage pour l’argument
--metrics
de façon à récupérer les informations d’utilisation de la mémoire.La sortie est similaire au texte suivant :
Timestamp Name Average ------------------- ------------ ----------- 2021-09-21 23:43:00 Memory Usage 2021-09-21 23:44:00 Memory Usage 0.0 2021-09-21 23:45:00 Memory Usage 15917056.0 2021-09-21 23:46:00 Memory Usage 16744448.0 2021-09-21 23:47:00 Memory Usage 16842752.0 2021-09-21 23:48:00 Memory Usage 17190912.0 2021-09-21 23:49:00 Memory Usage 17506304.0 2021-09-21 23:50:00 Memory Usage 17702912.0 2021-09-21 23:51:00 Memory Usage 17965056.0 2021-09-21 23:52:00 Memory Usage 18509824.0 2021-09-21 23:53:00 Memory Usage 18649088.0 2021-09-21 23:54:00 Memory Usage 18845696.0 2021-09-21 23:55:00 Memory Usage 19181568.0
Dans le portail Azure, les informations sur l’utilisation de la mémoire et du processeur dans Azure Container Instances ressemblent à ceci :
Nettoyer les ressources
Dans ce module, vous avez créé des ressources en utilisant votre abonnement Azure. Vous devez nettoyer ces ressources afin qu’elles ne soient pas facturées.
Dans la page d’accueil d’Azure, sélectionnez Toutes les ressources.
Recherchez le groupe de ressources learn-deploy-aci-rg ou le nom du groupe de ressources que vous avez utilisé, puis sélectionnez-le.
Sous l’onglet Vue d’ensemble du groupe de ressources, sélectionnez Supprimer le groupe de ressources.
Une nouvelle boîte de dialogue s’affiche. Entrez de nouveau le nom du groupe de ressources, et sélectionnez Supprimer. Toutes les ressources que nous avons créées dans ce module sont supprimées.