Ejercicio: solución de problemas de Azure Container Instances
Para ayudarle a conocer las formas básicas de solucionar los problemas de las instancias de contenedor, debe realizar algunas operaciones básicas, como:
- Extraer registros de los contenedores
- Visualizar los registros de los contenedores
- Conectarse a una instancia de contenedor
Obtención de registros de la instancia de contenedor implementada anteriormente
Ejecute el siguiente comando az container logs
para ver la salida del contenedor de la aplicación de votación de gatos y perros que creó en el ejercicio anterior:
az container logs \
--resource-group learn-deploy-aci-rg \
--name aci-demo-files
Se obtiene una salida similar a:
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
…
Obtención de eventos de contenedor
El comando az container attach
proporciona información de diagnóstico durante el inicio del contenedor. Una vez iniciado el contenedor, también escribe una salida estándar y flujos de errores en el terminal local.
Ejecute az container attach
para conectarse a su contenedor:
az container attach \
--resource-group learn-deploy-aci-rg \
--name aci-demo-files
Se obtiene una salida similar a:
Container 'aci-demo-files' 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
…
Sugerencia
Presione Ctrl+C para desconectarse de un contenedor asociado.
Ejecución de un comando en el contenedor
A medida que diagnostique errores y solucione problemas, es posible que deba ejecutar comandos directamente en el contenedor en ejecución.
Para ver los comandos en el contenedor, ejecute el siguiente comando
az container exec
para iniciar una sesión interactiva en el contenedor:az container exec \ --resource-group learn-deploy-aci-rg \ --name aci-demo-files \ --exec-command /bin/sh
En este punto, estará trabajando dentro del contenedor.
Ejecute el comando
ls
para mostrar el contenido del directorio de trabajo.# ls __pycache__ config_file.cfg main.py prestart.sh static templates uwsgi.ini
Si quiere, puede explorar aún más el sistema. Cuando haya terminado, ejecute el comando
exit
para detener la sesión interactiva.
Supervisión del uso de CPU y memoria en su contenedor
Vea la forma en que se supervisa el uso de la CPU y de la memoria en el contenedor.
Ejecute el siguiente comando
az container show
para obtener el identificador de la instancia de contenedor de Azure y almacenarlo en una variable Bash:CONTAINER_ID=$(az container show \ --resource-group learn-deploy-aci-rg \ --name aci-demo-files \ --query id \ --output tsv)
Ejecute el comando
az monitor metrics list
para recuperar información de uso de la CPU:az monitor metrics list \ --resource $CONTAINER_ID \ --metrics CPUUsage \ --output table
Tenga en cuenta el argumento
--metrics
. En este caso, CPUUsage especifica que hay que recuperar el uso de la CPU.El texto que verá será similar al siguiente:
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
Ejecute el comando
az monitor metrics list
para recuperar información de uso de la memoria:az monitor metrics list \ --resource $CONTAINER_ID \ --metrics MemoryUsage \ --output table
Aquí, para recuperar información de uso de memoria, especifique MemoryUsage para el argumento
--metrics
.El texto que verá será similar al siguiente:
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
En Azure Portal, la información de uso de la CPU y memoria de Azure Container Instances es como esta:
Limpieza de recursos
En este módulo, ha creado recursos mediante la suscripción de Azure. Debe limpiar estos recursos para que no se le cobren.
En la página principal de Azure, seleccione Todos los recursos.
Busque el grupo de recursos learn-deploy-aci-rg, o el nombre del grupo de recursos que haya usado, y selecciónelo.
En la pestaña Información general del grupo de recursos, seleccione Eliminar grupo de recursos.
Se abre un cuadro de diálogo. Vuelva a escribir el nombre del grupo de recursos y seleccione Eliminar. Se eliminan todos los recursos creados en este módulo.