Solución de problemas de Systems Manager Automation - AWS Systems Manager

Solución de problemas de Systems Manager Automation

Utilice la siguiente información para poder solucionar problemas con AWS Systems Manager Automation, una capacidad de AWS Systems Manager. En este tema se incluyen tareas específicas para resolver problemas basados en los mensajes de error de Automation.

Errores de Automation comunes

En esta sección se incluye información sobre los errores de Automation comunes.

VPC not defined 400

De forma predeterminada, cuando Automation ejecuta los manuales de procedimientos AWS-UpdateLinuxAmi o AWS-UpdateWindowsAmi, el sistema crea una instancia temporal en la VPC predeterminada (172.30.0.0/16). Si ha eliminado la VPC predeterminada, recibirá el siguiente error:

VPC not defined 400

Para resolver este problema, debe especificar un valor para el parámetro de entrada SubnetId.

No se ha podido iniciar la ejecución de Automation

Es posible que no se logre completar una automatización debido a un error de acceso denegado o un error de rol de asunción no válido si no ha configurado correctamente los usuarios, los roles y las políticas de AWS Identity and Access Management (IAM) para Automation.

Acceso denegado

En los siguientes ejemplos, se describen situaciones en las que no se logra iniciar una automatización por un error de acceso denegado.

Acceso denegado a la API de Systems Manager

Mensaje de error: User: user arn isn't authorized to perform: ssm:StartAutomationExecution on resource: document arn (Service: AWSSimpleSystemsManagement; Status Code: 400; Error Code: AccessDeniedException; Request ID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)

  • Posible causa 1: el usuario de IAM que intenta iniciar la automatización no tiene permiso para invocar la API StartAutomationExecution. Para resolver este problema, adjunte la política de IAM necesaria a la cuenta de usuario que se utilizó para iniciar la automatización. Para obtener más información, consulte Tarea 3: configurar el acceso del usuario a Automation .

  • Posible causa 2: el usuario de IAM que intenta iniciar la automatización tiene permiso para invocar la API StartAutomationExecution, pero no para invocarla a través del manual de procedimientos específico. Para resolver este problema, adjunte la política de IAM necesaria a la cuenta de usuario que se utilizó para iniciar la automatización. Para obtener más información, consulte Tarea 3: configurar el acceso del usuario a Automation .

Acceso denegado debido a la falta de permisos PassRole

Mensaje de error: User: user arn isn't authorized to perform: iam:PassRole on resource: automation assume role arn (Service: AWSSimpleSystemsManagement; Status Code: 400; Error Code: AccessDeniedException; Request ID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)

El usuario de IAM que intenta iniciar la automatización no tiene el permiso PassRole para el rol de asunción. Para solucionar este problema, adjunte la política iam:PassRole al rol del usuario de IAM que intenta iniciar la automatización. Para obtener más información, consulte Tarea 2: asociar la política iam:PassRole al rol de Automation .

Rol de asunción no válido

Al ejecutar una automatización, se proporciona un rol de asunción en el manual de procedimientos o se transmite como un valor de parámetro al manual. Los diferentes tipos de errores se pueden producir si el rol de asunción no se especifica ni se configura correctamente.

Rol de asunción con formato incorrecto

Mensaje de error: The format of the supplied assume role ARN isn't valid. El rol de asunción tiene un formato incorrecto. Para solucionar este problema, verifique que se ha especificado un rol de asunción válido en el manual de procedimientos o como un parámetro de tiempo de ejecución al iniciar la automatización.

No se puede asumir el rol de asunción

Mensaje de error: The defined assume role is unable to be assumed. (Service: AWSSimpleSystemsManagement; Status Code: 400; Error Code: InvalidAutomationExecutionParametersException; Request ID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)

  • Posible causa 1: el rol de asunción no existe. Para resolver este problema, cree el rol. Para obtener más información, consulte Configuración de Automation . Los detalles específicos para la creación de este rol se describen en el siguiente tema, Tarea 1: crear un rol de servicio para Automation.

  • Posible causa 2: el rol de asunción no tiene una relación de confianza con el servicio Systems Manager. Para solucionar este problema, cree la relación de confianza. Para obtener más información, consulte No puedo asumir un rol en la Guía del usuario de IAM.

Ejecución iniciada, pero el estado es Error

Errores específicos de la acción

Los manuales de procedimientos contienen pasos que se ejecutan en orden. Cada paso invoca una o varias API de servicio de AWS. Las API determinan las entradas, el comportamiento y las salidas del paso. Hay varios lugares en los que un error puede provocar que no se realice un paso. Los mensajes de error indican cuándo y dónde se ha producido un error.

Para ver un mensaje de error en la consola de Amazon Elastic Compute Cloud (Amazon EC2), elija el enlace View Outputs (Ver salidas) del paso con error. Para ver un mensaje de error desde la AWS CLI, llame a get-automation-execution y busque el atributo FailureMessage en un StepExecution con error.

En los siguientes ejemplos, se ha producido un error en un paso asociado a la acción aws:runInstance. Cada ejemplo explora un tipo de error distinto.

Falta la imagen

Mensaje de error: Automation Step Execution fails when it's launching the instance(s). Get Exception from RunInstances API of ec2 Service. Exception Message from RunInstances API: [The image id '[ami id]' doesn't exist (Service: AmazonEC2; Status Code: 400; Error Code: InvalidAMIID.NotFound; Request ID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)]. Please refer to Automation Service Troubleshooting Guide for more diagnosis details.

La acción aws:runInstances ha recibido la acción de un ImageId que no existe. Para solucionar este problema, actualice el manual de procedimientos o los valores de parámetro con el ID de AMI correcto.

La política de rol de asunción no tiene permisos suficientes

Mensaje de error: Automation Step Execution fails when it's launching the instance(s). Get Exception from RunInstances API of ec2 Service. Exception Message from RunInstances API: [You aren't authorized to perform this operation. Encoded authorization failure message: xxxxxxx (Service: AmazonEC2; Status Code: 403; Error Code: UnauthorizedOperation; Request ID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)]. Please refer to Automation Service Troubleshooting Guide for more diagnosis details.

El rol de asunción no tiene permisos suficientes para invocar la API RunInstances en las instancias EC2. Para solucionar este problema, adjunte una política de IAM al rol de asunción que tenga permiso para invocar la API RunInstances. Para obtener más información, consulte la Método 2: uso de IAM a fin de configurar roles para Automation.

Estado inesperado

Mensaje de error: Step fails when it's verifying launched instance(s) are ready to be used. Instance i-xxxxxxxxx entered unexpected state: shutting-down. Please refer to Automation Service Troubleshooting Guide for more diagnosis details.

  • Posible causa 1: hay un problema en la instancia o el servicio Amazon EC2. Para solucionar este problema, inicie sesión en la instancia o revise el registro del sistema de la instancia para entender por qué la instancia ha comenzado a cerrarse.

  • Posible causa 2: el script de datos de usuario especificado para la acción aws:runInstances tiene un problema o una sintaxis incorrecta. Verifique la sintaxis del script de datos de usuario. Además, verifique que los scripts de datos de usuario no cierran la instancia, o invoque otros scripts que cierren la instancia.

Referencias de errores específicos de la acción

Cuando se produce un error en un paso, el mensaje de error podría indicar qué servicio se estaba invocando cuando se produjo el error. En la siguiente tabla se enumeran los servicios invocados por cada acción. La tabla también incluye enlaces a información acerca de cada servicio.

Acción Servicios de AWS invocados por esta acción Para obtener información sobre este servicio Solución de problemas de contenido

aws:runInstances

Amazon EC2

Amazon EC2 User Guide for Linux Instances (Guía del usuario de Amazon EC2 para instancias de Linux)

Solución de problemas de las instancias EC2

aws:changeInstanceState

Amazon EC2

Amazon EC2 User Guide for Linux Instances (Guía del usuario de Amazon EC2 para instancias de Linux)

Solución de problemas de las instancias EC2

aws:runCommand

Systems Manager

AWS Systems Manager Run Command

Solución de problemas Systems Manager Run Command

aws:createImage

Amazon EC2

Amazon Machine Images

aws:createStack

AWS CloudFormation

Guía del usuario de AWS CloudFormation

Solución de problemas de AWS CloudFormation

aws:deleteStack

AWS CloudFormation

Guía del usuario de AWS CloudFormation

Solución de problemas de AWS CloudFormation

aws:deleteImage

Amazon EC2

Imágenes de máquina de Amazon

aws:copyImage

Amazon EC2

Amazon Machine Images

aws:createTag

Amazon EC2, Systems Manager

Recursos y etiquetas de EC2

aws:invokeLambdaFunction

AWS Lambda

AWS LambdaGuía para desarrolladores de

Solución de problemas de Lambda

Error interno del servicio Automation

Mensaje de error: Internal Server Error. Please refer to Automation Service Troubleshooting Guide for more diagnosis details.

Un problema con el servicio de Automation impide que el manual de procedimientos especificado se ejecute correctamente. Para solucionar este problema, póngase en contacto con AWS Support. Proporcione el ID de ejecución y el ID de cliente, si están disponibles.

La ejecución se ha iniciado, pero se ha agotado el tiempo de espera

Mensaje de error: Step timed out while step is verifying launched instance(s) are ready to be used. Please refer to Automation Service Troubleshooting Guide for more diagnosis details.

Se ha agotado el tiempo de espera de la acción aws:runInstances. Esto puede ocurrir si la acción del paso tarda en ejecutarse más que el valor especificado para timeoutSeconds en el paso. Para resolver este problema, especifique un valor más largo para el parámetro timeoutSeconds en la acción aws:runInstances. Si no se resuelve el problema con esto, investigue el motivo por el cual el paso tarda más de lo esperado en ejecutarse.