Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este artículo se proporcionan soluciones para errores comunes que pueden producirse al usar la CLI para desarrolladores de Azure (azd).
Error de autorización para la escritura de asignación de roles
Mensaje de error:The template deployment failed with error: 'Authorization failed for template resource '<guid>' of type 'Microsoft.Authorization/roleAssignments'. The client '##Email##' with object id '<guid>' does not have permission to perform action 'Microsoft.Authorization/roleAssignments/write' at scope '<resourceId>'.'
Cause: No tiene permisos suficientes para asignar roles en la suscripción o el grupo de recursos de Azure de destino. Esto es habitual cuando la cuenta de usuario tiene acceso a Contributor, pero no a Owner o User Access Administrator.
Contributor permite crear recursos, pero no conceder permisos (asignar roles) a esos recursos.
Resolución: Asegúrese de que la cuenta tiene el rol Propietario o Administrador de acceso de usuario en la suscripción o el grupo de recursos en el que va a realizar la implementación. Si no le pueden conceder estos roles, pida a un administrador que realice la implementación inicial o las asignaciones de roles por usted. Para obtener más información, consulte roles integrados de Azure.
La asignación de roles ya existe
Mensaje de error:The role assignment already exists.
Causa: Este error se produce cuando la implementación intenta crear una asignación de roles que ya existe en el recurso. Aunque las implementaciones de Azure Resource Manager (ARM) son idempotentes, ciertas configuraciones o condiciones de competencia en las plantillas pueden desencadenar este error al realizar una nueva implementación.
Resolución: Este error suele ser intermitente o benigno.
-
Vuelva a intentar la implementación: Ejecute
azd upo vuelva a ejecutarazd deploy. - Revise las plantillas Bicep: Si administra la plantilla, asegúrese de que las asignaciones de roles usen propiedades válidas (a menudo GUID estrictamente deterministas) para garantizar la idempotencia. Use la función guid() Bicep para generar nombres deterministas.
No se permite actualizar el ID de inquilino, el ID de identidad principal o el ámbito
Mensaje de error:Tenant ID, application ID, principal ID, and scope are not allowed to be updated.
Causa: Está intentando volver a implementar una asignación de roles con propiedades que difieren de la asignación existente. Las asignaciones de roles son inmutables; No puede cambiar el identificador de entidad de seguridad (el usuario o la aplicación que recibe el rol) ni el ámbito de un identificador de asignación existente.
Resolución:
- Compruebe los parámetros: Asegúrese de que no pasa accidentalmente un ID principal diferente (por ejemplo, al cambiar entre un usuario y un principal de servicio) para la misma asignación de rol del recurso.
- Clean up: Si necesita cambiar la asignación, elimine manualmente la asignación de roles en conflicto en el portal Azure o a través de la CLI mediante az role assignment delete y vuelva a implementar.
Capacidad de región o SKU no disponible
Mensaje de error:The region 'eastus2' currently does not have enough resources available to provision services with the SKU 'standard'. (o "básico")
Cause: La región de Azure seleccionada está temporalmente sin capacidad para la SKU de servicio solicitada. Esto es habitual actualmente con los servicios de inteligencia artificial (como Azure OpenAI) en regiones populares como eastus2.
Resolución:
-
Cambiar ubicación: Ejecute
azd env set AZURE_LOCATION <new-region>para cambiar a una región con una mejor disponibilidad (por ejemplo,swedencentral,westus3,francecentral). -
Comprobar disponibilidad: Utilice la página Azure Products by Region o ejecute
az account list-locationspara verificar las regiones donde el servicio y SKU están disponibles.
Se superó la cuota de TPM para los modelos de IA
Mensaje de error:This operation require <amount> new capacity in quota Tokens Per Minute (thousands) - <model> - GlobalStandard, which is bigger than the current available capacity <available>.
Cause: La suscripción ha alcanzado su límite de cuota para tokens por minuto (TPM) para el modelo de OpenAI de Azure especificado en la región de destino.
Resolución:
- Request Quota: Solicite un aumento de cuota a través del portal Azure AI Studio o Azure. Para obtener más información, consulte Administrar Azure OpenAI Service cuota.
- Cambiar modelos o región: Cambie a una región en la que tenga cuota sin usar o use una versión de modelo diferente que se ajuste a sus límites.
Error: la condición previa If-Match falló
Mensaje de error:The specified precondition 'If-Match = ""<guid>""' failed.
Causa: Este problema suele indicar un conflicto de simultaneidad. Es posible que dos procesos intenten actualizar el mismo recurso simultáneamente o el estado local no esté sincronizado con el recurso en la nube (ETag obsoleto).
Resolución: Vuelva a intentar la operación. Si el error persiste:
- Verifique que ninguna otra implementación (despliegues de CI/CD, otros miembros del equipo) tenga como destino el mismo entorno simultáneamente.
- Si usa Bicep, compruebe que la plantilla define correctamente las dependencias (
dependsOn) para evitar modificaciones paralelas en el mismo recurso.
Cuenta de Cognitive Services en estado aceptado
Mensaje de error:Call to Microsoft.CognitiveServices/accounts failed. Error message: Account <resourceId> in state Accepted.
Cause: Este error es un problema de tiempo en el que un recurso dependiente intenta interactuar con la cuenta de Cognitive Services (Azure AI) antes de que esté totalmente aprovisionada y activa.
También puede agregar un enlace de comandos (por ejemplo, postprovision) en azure.yaml para pausar o comprobar la preparación de los recursos antes de continuar.
Expiración del aprovisionamiento de aplicaciones contenedorizadas revisadas
Mensaje de error:Failed to provision revision for container app <appName>. Error details: Operation expired.
Cause: No se pudo iniciar la aplicación contenedora de Azure dentro del período de tiempo de espera predeterminado. Los motivos comunes incluyen los siguientes:
- La imagen del contenedor es demasiado grande y tarda demasiado tiempo en descargarse.
- La aplicación se bloquea al iniciarse.
- La aplicación tarda demasiado tiempo en escuchar en el puerto configurado.
Resolución:
-
Comprobar registros: Ver los registros del contenedor en el portal de Azure (Log Stream) o mediante
azd monitorpara comprobar si la aplicación se está bloqueando. - Revisar configuración: Asegúrese de que la configuración coincide con el puerto en el que escucha la aplicación. Para obtener más pasos de solución de problemas, consulte Troubleshooting Azure Container Apps
-
Comprobar registros: Ver los registros del contenedor en el portal de Azure (Log Stream) o mediante
azd monitorpara comprobar si la aplicación se está bloqueando. - Revisar configuración: Asegúrese de que la configuración coincide con el puerto en el que escucha la aplicación.
- Optimizar imagen: Reduzca el tamaño de la imagen del contenedor para acelerar la descarga.