AWSSupport-TroubleshootCodeDeploy - AWS Systems Manager 自动化运行手册参考

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

AWSSupport-TroubleshootCodeDeploy

描述

AWSSupport-TroubleshootCodeDeploy 运行手册可帮助您确定 Amazon Elastic Compute Cloud(Amazon EC2)实例上 AWS CodeDeploy 部署失败的原因。运行手册将输出相关步骤,以帮助解决问题或进一步排查问题。CodeDeploy 还会提供最佳实践,帮助您在将来避免类似问题。

此运行手册可帮助您解决以下问题:

  • Amazon EC2 实例上未安装或未运行 CodeDeploy 代理

  • Amazon EC2 实例没有附加 AWS Identity and Access Management (IAM) 实例配置文件

  • 附到加 Amazon EC2 实例的 IAM 实例配置文件没有所需的 Amazon Simple Storage Service (Amazon S3) 权限

  • 存储在 Amazon S3 中的修订版缺失,或者使用的 Amazon S3 存储桶位于与 Amazon EC2 实例不同的 AWS 区域

  • 应用程序规范 (AppSpec) 文件问题

  • “文件已存在于某个位置”错误

  • CodeDeploy 托管生命周期事件钩子失败

  • 客户托管生命周期事件钩子失败

  • 部署期间的横向缩减事件

运行此自动化(控制台)

文档类型

自动化

所有者

Amazon

平台

Linux、macOS、Windows

参数

  • AutomationAssumeRole

    类型:字符串

    描述:(可选)允许 Systems Manager Automation 代表您执行操作 AWS Identity and Access Management (IAM) 角色的 Amazon 资源名称(ARN)。如果未指定任何角色,则 Systems Manager Automation 使用启动此运行手册的用户的权限。

  • DeploymentId

    类型:字符串

    描述:(必需)失败的部署的 ID。

  • InstanceId

    类型:字符串

    说明:(必需)部署失败处的 Amazon EC2 实例的 ID。

所需的 IAM 权限

AutomationAssumeRole 参数需要执行以下操作才能成功使用运行手册。

  • codedeploy:GetDeployment

  • codedeploy:GetDeploymentTarget

  • ec2:DescribeInstances

文档步骤

  • aws:executeAwsApi - 验证为 DeploymentIdInstanceId 参数提供的值。

  • aws:executeScript - 从 Amazon EC2 实例收集信息,例如实例状态和 IAM 实例配置文件详情。

  • aws:executeScript - 查看指定的部署,并返回有关部署失败原因的分析。