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

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

AWSSupport-TroubleshootCodeDeploy

描述

AWSSupport-TroubleshootCodeDeploy运行手册有助于诊断亚马逊弹性计算云 (Amazon EC2) 实例的 AWS CodeDeploy 部署失败的原因。运行手册将输出相关步骤,以帮助解决问题或进一步排查问题。还提供了的最佳 CodeDeploy 实践,以帮助您避免将来出现类似的问题。

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

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

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

  • 附加到亚马逊实例的 IAM EC2 实例配置文件不具备所需的亚马逊简单存储服务 (Amazon S3) Service 权限

  • 缺少存储在 Amazon S3 中的修订版本,或者使用的 Amazon S3 存储桶与亚马逊 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 - 查看指定的部署,并返回有关部署失败原因的分析。