Solución de problemas relativos a la ejecución de un runbook en Azure Automation

La automatización de procesos en Azure Automation permite crear y administrar PowerShell, un flujo de trabajo de PowerShell y runbooks gráficos. Azure Automation ejecuta los runbooks en función de la lógica definida en ellos. En este artículo se proporcionan instrucciones para solucionar problemas de ejecución de runbook en Azure Automation.

Nota:

  • Si usa Newtonsoft.Json v10, asegúrese de importar este módulo explícitamente para que los runbooks de PowerShell 5.1 y PowerShell 7.1 que tengan una dependencia en esta versión del módulo funcionen correctamente.
  • PowerShell 7.1 ya no es compatible con el PowerShell del producto primario. Se recomienda crear runbooks de PowerShell 7.2 para el soporte a largo plazo. Obtenga más información sobre los runbooks de PowerShell 7.2.
  • Si ninguna de las siguientes soluciones resuelve el problema, consulte Datos para recopilar al abrir un caso para Microsoft Azure Automation antes de abrir un caso de soporte técnico.
  • Azure Automation permite la recuperación de runbooks eliminados en los últimos 29 días. Puede restaurar el runbook eliminado ejecutando un script de PowerShell como una tarea en la cuenta de Automatización. Para obtener más información, consulte restauración de runbook eliminado.

Solución de problemas del código de error 400, 403 y 429

Error Solución
400 Bad Request: This webhook is expired or disabled Para resolver este error, consulte Código de estado 400 Solicitud incorrecta al invocar un webhook.
The remote server returned an error: (403) Forbidden Para resolver este error, consulte Acceso bloqueado a Azure Storage o Azure Key Vault o Azure SQL.
this.Client.SubscriptionId cannot be null Para resolver este error, consulte el Runbook falla con el mensaje de error "this.Client.SubscriptionId no puede ser nulo.".
ErrorCode: AuthorizationFailed

StatusCode: 403
Para resolver este error, consulte Errores de runbooks al tratar con varias suscripciones.
429: The request rate is currently too large. Please try again. Para resolver este error, consulte 429: La tasa de solicitudes es demasiado grande actualmente.
Error Solución
Los runbooks fallan con un error The subscription named <subscription name> cannot be found. Este error puede producirse cuando el runbook no usa una identidad administrada para acceder a los recursos de Azure. Para resolver este error, consulte No se puede encontrar la suscripción de Azure.
Your Azure credentials haven't been set up or have expired, please run connect-azureRmAccount to set up your azure credentials. Este error puede producirse cuando no se usa una identidad administrada. Para resolver este error, use una identidad administrada.
Command not recognized. Este error suele producirse cuando los módulos no se importan o no están actualizados. Asegúrese de que los módulos dependientes en su comando están importados en Azure Automation y son la versión correcta. Si el módulo está en la cuenta de Automation, es posible que se produzca un problema al cargarlo en el espacio aislado. Intente agregar una instrucción explícita import-module al principio del runbook (manual de ejecución).
Forbidden with client authentication scheme 'anonymous'. Este error se produce cuando se usan credenciales en un espacio aislado de Azure Automation. Para resolver este error, use una identidad administrada.
Unable to require token for tenant <tenant-id>. Este error se produce cuando se usan credenciales en un espacio aislado de Azure Automation. Para resolver este error, use una identidad administrada.
Server failed to authenticate the request. Este error se produce cuando se usan credenciales en un espacio aislado de Azure Automation. Para resolver este error, use una identidad administrada.
Errores al usar el cmdlet Connect-AzAccount. Para resolver este problema, consulte Error de inicio de sesión en la cuenta de Azure.
The term 'Connect-AzAccount' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if the path was included verify that the path is correct and try again. Para resolver este error, consulte Término no reconocido como el nombre de un cmdlet, una función o un script.
Error del cmdlet en el runbook de PowerShell de PnP en Azure Automation. Para resolver este problema, consulte El cmdlet falla en el guion de ejecución de PnP PowerShell en Azure Automation.
<cmdlet name>: The term <cmdlet name> is not recognized as the name of a cmdlet, function, script file, or operable program. Para resolver este error, consulte Cmdlet no reconocido al ejecutar un runbook.

Solución de problemas con runbooks suspendidos, errores de trabajo, runbooks detenidos, trabajos híbridos y suscripciones

Cuestión Solución
El runbook se suspende o produce un error inesperado. Compruebe los estados de trabajo para los estados de runbook y las posibles causas. Agregue más resultados para identificar lo que sucede antes de que se suspenda el runbook. Controle las excepciones que se producen a causa de su trabajo. Vuelva a intentar la tarea cuando se produzcan ciertas excepciones, como las de WebSocket, para evitar que los fallos transitorios de red provoquen errores en los procedimientos operacionales. Si tiene problemas con un cmdlet, puede encontrar más información en el servicio que está intentando usar a través del cmdlet. Por ejemplo, los problemas relacionados con el cmdlet New-AzAnalysisServicesServer podrían ser gestionados por el equipo de Analysis Services.
El trabajo se ha intentado tres veces, pero no se ha ejecutado. Compruebe los Límites de Automatización. Si la limitación solo se aplica a los espacios aislados de Azure, considere pasarse a una instancia de Hybrid Worker.
Los runbooks estaban funcionando, pero se han detenido. Asegúrese de usar una identidad administrada. Si usa webhooks para iniciar runbooks, asegúrese de que el webhook no ha expirado.
Problemas al utilizar un Hybrid Worker. Para resolver estos problemas, consulte la guía de solución de problemas de Hybrid Runbook Worker.
El runbook está bloqueado. Si no puede detener un trabajo de runbook en el portal de Azure, intente detenerlo mediante el cmdlet Stop-AzureRmAutomationJob de PowerShell o Stop-AzAutomationJob.
No se puede iniciar ni programar un runbook. Para resolver este problema, asegúrese de que el runbook está publicado.
Problemas al usar cmdlets que dependen de archivos binarios. Algunos cmdlets dependen de archivos binarios, como Microsoft Data Access Components (MDAC) o el SDK de Azure Fabric. Estos cmdlets no se pueden ejecutar en el espacio aislado de Azure Automation y deben ejecutarse a través de hybrid Worker.
Problemas cuando hay varias suscripciones en un runbook. Para administrar recursos de Azure en varias suscripciones con Azure Automation, consulte Trabajar con varias suscripciones para evitar errores.

Solución de problemas comunes

La tabla siguiente le ayuda a solucionar problemas comunes con runbooks:

Cuestión Solución
No se puede crear ningún trabajo de Automation en la región Oeste de Europa. Este problema se produce debido a los límites de escalabilidad con el servicio Automation en la región Oeste de Europa. Para resolverlo, siga los pasos descritos en No se puede crear un nuevo trabajo de Automation en la región Oeste de Europa.
Errores de runbook o problemas de Azure Automation. Para aprender a solucionar problemas comunes, consulte Solucionar problemas de runbook.
Problemas de salida y mensajes del runbook. Para resolver estos problemas, consulte Recuperar la salida del runbook y los mensajes.
Problemas del módulo de PowerShell en Azure Automation. Para resolver estos problemas, consulte Actualización de módulos de Azure PowerShell en Automation.

Referencias