亚马逊CodeDeploy。部署失败

时间:2016-05-31 17:14:35

标签: aws-code-deploy

我已经配置AWS CodeDeploy几天了,我的第一次部署失败了。我得到的错误消息"整体部署失败,因为部署失败的个别实例太多,可用于部署的健康实例太少,或部署组中的某些实例遇到问题。"

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

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

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

3 个答案:

答案 0 :(得分:2)

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

1)创建IamInstanceProfile说Webserver。

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

3)将以下内容添加到AWSCodeDeployRole的信任关系:“codedeploy.amazonaws.com”,“ec2.amazonaws.com”,“codedeploy.MY_REGION.amazonaws.com”

4)重启ec2

答案 1 :(得分:1)

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

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

答案 2 :(得分:0)

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