如何使用 ip 白名单策略让 ECS Fargate 计划作业访问 API?
How to have ECS Fargate scheduled job access API with a ip whitelist policy?
我正在尝试使用 ECS 设置计划任务 Fargate.Task 已被码头化,将 运行 通过带有 Fargate 的 AWS ECS。不幸的是,我想要 运行 的服务需要访问需要将 IP 列入白名单的合作伙伴的 API。我看到每次使用 Fargate 执行任务时,都会分配一个具有不同 IP 的新 ENI。
如何将静态 IP 分配给 AWS ECS Fargate 任务?
为了在您的 AWS Fargate 任务上分配一个静态 IP,您必须创建一个静态 IP 地址(AWS 称之为弹性 IP),它将作为从网络外部点发起您的 VPC 的流量的原始地址看法。要实现这一点:
您需要以下内容
- 一个VPC
- 1x 私有子网
- 1x Public 子网
- 连接到 public 子网的 1 个互联网网关
- 弹性IP(将作为私有子网内所有资源的静态IP)
- 1 个 NAT 网关
- 附加到
private
子网的路由 table,路由 0.0.0.0/0
指向 NAT 网关
- 附加到
public
子网的路由 table,路由 0.0.0.0/0
指向互联网网关
然后您需要确保:
- 您的 ECS Fargate 任务正在使用上述 VPC
- 并且选择上述私有子网作为
service task placement
如果我的解释仍然令人困惑,您可以尝试阅读此 guide。
我正在尝试使用 ECS 设置计划任务 Fargate.Task 已被码头化,将 运行 通过带有 Fargate 的 AWS ECS。不幸的是,我想要 运行 的服务需要访问需要将 IP 列入白名单的合作伙伴的 API。我看到每次使用 Fargate 执行任务时,都会分配一个具有不同 IP 的新 ENI。
如何将静态 IP 分配给 AWS ECS Fargate 任务?
为了在您的 AWS Fargate 任务上分配一个静态 IP,您必须创建一个静态 IP 地址(AWS 称之为弹性 IP),它将作为从网络外部点发起您的 VPC 的流量的原始地址看法。要实现这一点:
您需要以下内容
- 一个VPC
- 1x 私有子网
- 1x Public 子网
- 连接到 public 子网的 1 个互联网网关
- 弹性IP(将作为私有子网内所有资源的静态IP)
- 1 个 NAT 网关
- 附加到
private
子网的路由 table,路由0.0.0.0/0
指向 NAT 网关 - 附加到
public
子网的路由 table,路由0.0.0.0/0
指向互联网网关
然后您需要确保:
- 您的 ECS Fargate 任务正在使用上述 VPC
- 并且选择上述私有子网作为
service task placement
如果我的解释仍然令人困惑,您可以尝试阅读此 guide。