Solución de problemas de recursos compartidos
En este artículo se describen problemas que pueden surgir al usar recursos compartidos en Azure Automation.
Módulos
Escenario: Un módulo se bloquea durante la importación
Problema
Al importar o actualizar los módulos en Azure Automation, encuentra un módulo que está bloqueado en el estado Importing (Importando).
Causa
Dado que la importación de módulos de PowerShell es un proceso complejo de varios pasos, es posible que un módulo no se importe correctamente y se bloquee en un estado transitorio. Para más información sobre el proceso de importación, consulte Importación de un módulo de PowerShell.
Solución
Para resolver este problema, debe eliminar el módulo que está bloqueado mediante el cmdlet Remove-AzAutomationModule. A continuación, puede volver a intentar importar el módulo.
Remove-AzAutomationModule -Name ModuleName -ResourceGroupName ExampleResourceGroup -AutomationAccountName ExampleAutomationAccount -Force
Escenario: Los módulos de AzureRM se bloquean durante la importación después de un intento de actualización
Problema
Después de intentar actualizar los módulos de AzureRM, en la cuenta permanece un banner con el siguiente mensaje:
Azure modules are being updated
Causa
Hay un problema conocido con la actualización de los módulos AzureRM en una cuenta de Automation. En concreto, el problema se produce si los módulos se encuentran en un grupo de recursos con un nombre numérico que empieza por 0.
Solución
Para actualizar los módulos de AzureRM en la cuenta de Automation, la cuenta debe estar en un grupo de recursos con un nombre alfanumérico. En este momento, los grupos de recursos con nombres numéricos que empiezan por 0 no pueden actualizar módulos de AzureRM.
Escenario: No se puede importar el módulo o no se puede ejecutar cmdlets después de la importación
Problema
No se puede importar un módulo, o bien se importa correctamente, pero no se extrae ningún cmdlet.
Causa
Algunas razones comunes por las que un módulo no se importa correctamente a Azure Automation son:
- La estructura no coincide con la que necesita Automation.
- El módulo depende de otro módulo que no se ha implementado en su cuenta de Automation.
- Al módulo le faltan sus dependencias en la carpeta.
- El cmdlet New-AzAutomationModule se usa para cargar el módulo y no se ha proporcionado la ruta de acceso de almacenamiento completa o no se ha cargado el módulo mediante una dirección URL de acceso público.
Solución
Use cualquiera de estas soluciones para corregir el problema:
- Asegúrese de que el módulo sigue el formato siguiente: NombreMódulo.Zip -> NombreMódulo o número de versión -> (NombreMódulo.psm1, NombreMódulo.psd1).
- Abra el archivo .psd1 y compruebe si el módulo tiene dependencias. Si es así, cargue estos módulos en la cuenta de Automation.
- Asegúrese de que todos los archivos .dll a los que se hace referencia están presentes en la carpeta del módulo.
Escenario: Update-AzureModule.ps1 se suspende durante la actualización de módulos
Problema
Al usar el runbook Update-AzureModule.ps1 para actualizar los módulos de Azure, se suspende el proceso de actualización del módulo.
Causa
En este runbook, el valor predeterminado para determinar cuántos módulos se actualizan simultáneamente es de 10. El proceso de actualización es propenso a errores cuando se actualizan demasiados módulos al mismo tiempo.
Solución
No es habitual que se necesiten todos los módulos de AzureRM o Az en la misma cuenta de Automation. Se recomienda importar únicamente los módulos específicos que necesite.
Nota:
Evite importar todo el módulo Az.Automation
o AzureRM.Automation
, que importa todos los módulos contenidos.
Si se suspende el proceso de actualización, agregue el parámetro SimultaneousModuleImportJobCount
al script Update-AzureModules.ps1 y proporcione un valor menor que el predeterminado de 10. Se recomienda que, si implementa esta lógica, comience por un valor de 3 o 5. SimultaneousModuleImportJobCount
es un parámetro del runbook del sistema Update-AutomationAzureModulesForAccount que se usa para actualizar módulos de Azure. Si realiza este ajuste, el proceso de actualización se ejecuta durante más tiempo, pero tiene más probabilidades de completarse. En el ejemplo siguiente se muestra el parámetro y su ubicación en el runbook:
$Body = @"
{
"properties":{
"runbook":{
"name":"Update-AutomationAzureModulesForAccount"
},
"parameters":{
...
"SimultaneousModuleImportJobCount":"3",
...
}
}
}
"@
Cuentas de ejecución
Nota:
Las cuentas de ejecución de Azure Automation, incluidas las cuentas de ejecución clásicas, se retiraron el 30 de septiembre de 2023 y reemplazaron por identidades administradas. Ya no podrá crear ni renovar cuentas de ejecución a través de Azure Portal. Para obtener más información, consulta migrar de una cuenta de ejecución existente a una identidad administrada.
Escenario: Aparece el error "No se puede encontrar el punto de entrada denominado 'GetPerAdapterInfo' en el archivo DLL 'iplpapi.dll'" al ejecutar un runbook.
Problema
Al ejecutar un runbook aparece la siguiente excepción:
Unable to find an entry point named 'GetPerAdapterInfo' in DLL 'iplpapi.dll'
Causa
Este error suele deberse a una configuración incorrecta de la cuenta de ejecución.
Solución
Asegúrese de que la cuenta de ejecución está configurada correctamente. A continuación, compruebe que tiene el código adecuado en el runbook para autenticarse con Azure. En el ejemplo siguiente se muestra un fragmento de código para la autenticación en Azure en un runbook mediante una cuenta de ejecución.
$connection = Get-AutomationConnection -Name AzureRunAsConnection
Connect-AzAccount -ServicePrincipal -Tenant $connection.TenantID `
-ApplicationID $connection.ApplicationID -CertificateThumbprint $connection.CertificateThumbprint
Pasos siguientes
Si en este artículo no se resuelve la incidencia, pruebe uno de los canales siguientes para obtener ayuda adicional:
- Obtenga respuestas de expertos de Azure en los foros de Azure.
- Conéctese con @AzureSupport. Se trata de la cuenta oficial de Microsoft Azure para conectar a la comunidad de Azure con los recursos adecuados: respuestas, soporte técnico y expertos.
- Registrar un incidente de soporte técnico de Azure. Vaya al sitio de Soporte técnico de Azure y seleccione Obtener soporte técnico.