首页 > 解决方案 > 如果 EC2 实例没有公共 IP,AWS CodeDeploy 代理无法部署代码?

问题描述

我已经使用 CodeDeploy 代理系统实现了 AutoScaling 组。如果我将启动模板设置为使用公共 IPv4 启动 EC2 实例,一切正常,但如果我禁用此功能,CodeDeploy 代理会一直等待永远不会执行的“ApplicationStop”步骤(第一个)。

我怀疑 AWS 无法正确访问我的 EC2 以与本地 CodeDeploy-Agent 通信(从service codedeploy-agent status调用中运行良好)。

一旦我添加回公共 IPv4,一切正常。

如何配置我的设置(安全组?角色?)以允许 CodeDeploy 与私有 EC2 实例一起正常工作?

更新 1

EC2 实例具有角色“aws-elasticbeanstalk-ec2-role”,其中包含以下策略:

也许问题就在这里:我需要添加一个“CodeDeploy”策略,但是当尝试附加一个与 CodeDeploy 相关的策略时,有很多,我不确定要使用哪一个

标签: aws-code-deploy

解决方案


推荐阅读