提问者:小点点

从在 VPC 中创建的 ECS-fargate 任务调用 AWS 服务 [s3、DynamoDB、kinsesis]


我在VPC中创建了一个ECS-Fargate集群。如果我想从Fargate任务访问上述AWS服务,需要做什么?我从我阅读的不同文档中看到以下选项:

  1. 创建指向每个AWS服务的私有链接
  2. 创建NAT网关

不确定哪个是正确的和推荐的选项?


共1个答案

匿名用户

明确地说,ECS群集是一个抽象的实体,并不决定您将在其中运行的工作负载连接到哪里。如果我们坚持Fargate启动类型,这意味着任务可以在私有子网或公共子网中启动:

>

  • 如果在公有子网中启动它们(并为任务分配公有 IP),则这些任务可以到达你提到的服务的公共终结点,并且不需要任何其他内容(从网络路由角度来看)。

    如果您在私有子网中启动它们,则有两个选项,即您在问题中提到的选项。

    我不认为什么是最好的黄金法则。决定是多方面的(成本、设置的难易程度、功能、可观察性和控制等)。我认为,无论您需要添加多少服务,NAT GW路由都更容易设置,但您可能会失去一点可见性,您的所有流量都将在VPC之外(对一些客户来说这是可以的,对其他客户来说不是)。私人链接将为您提供更严格的控制,但它们可能需要更多的设置工作(尤其是如果您需要访问许多服务)。