亚马逊代码部署。部署失败

Amazon CodeDeploy. Deployment failed

几天来我一直在配置 AWS CodeDeploy,但我的第一次部署失败了。我收到的错误消息是 "The overall deployment failed because too many individual instances failed deployment, too few healthy instances are available for deployment, or some instances in your deployment group are experiencing problems."

为了获得更多详细信息,我在 Windows 实例上安装了 AWS CodeDeploy 代理,但它似乎无法正常工作。我设法在 code-deploy-agent-log.txt 文件中读取的所有内容都是重复的行。

2016-05-31 16:05:24 调试 [codedeploy-agent(4872)]:InstanceAgent::Plugins::CodeDeployPlugin::CommandPoller:休眠 90 秒。 2016-05-31 16:06:55 调试 [codedeploy-agent(4872)]:InstanceAgent::Plugins::CodeDeployPlugin::CommandPoller:调用 PollHostCommand: 2016-05-31 16:06:55 信息 [codedeploy-agent(4872)]:在 C:/ProgramData/Amazon/CodeDeploy/.version 中找到版本文件。 2016-05-31 16:06:55 错误 [codedeploy-agent(4872)]:InstanceAgent::Plugins::CodeDeployPlugin::CommandPoller:缺少凭据 - 请检查此实例是否使用 IAM 实例配置文件启动

我的问题是如何获得有关我在部署过程中收到的错误消息的更多信息。我缺少哪些凭据(指定不正确)导致日志文件中出现错误消息?

我认为您在创建部署组时缺少 service-role-arn。服务角色 ARN 允许 AWS CodeDeploy 在与 AWS 服务交互时代表用户行事。服务角色 ARN 是您之前可能创建的代码部署角色。

此外,请确保您的部署策略设置为 CodeDeployDefault.OneAtATime。这是为了避免在您推送不正确或失败的构建时关闭所有实例。

我尝试了 Suken Shah 的步骤,但没有解决。为我解决的是:

1) 创建一个 IamInstanceProfile 说网络服务器。

2) 将 AWSCodeDeployRole 添加到 IamInstanceProfile Web 服务器。

3) 将以下内容添加到 AWSCodeDeployRole 的信任关系中:"codedeploy.amazonaws.com"、"ec2.amazonaws.com"、"codedeploy.MY_REGION.amazonaws.com"

4) 重启 ec2

确保您用于 EC2 的角色具有 'AWSCodeDeployRole' 策略并且信任关系具有 'ec2.amazonaws.com' 服务。如果您需要更改角色,请重新启动 EC2