【问题标题】:Is a NAT Gateway needed when configuring an AWS API Gateway?配置 AWS API 网关时是否需要 NAT 网关?
【发布时间】:2021-09-25 18:28:20
【问题描述】:

我已经为API Gateway 配置了lambda 函数。 lambda 函数位于具有私有子网的 VPC 中。我还使用路由表将 Internet 网关连接到 VPC,将所有流量路由到 Internet 网关。据我了解,我仍然无法访问任何 API 端点,因为 lambda 函数位于私有子网中,并且需要在 Internet 网关和私有子网之间使用 NAT 网关。

但是,由于分配给 lambda 函数的安全组允许传入流量,我能够访问所有端点。

【问题讨论】:

  • 您提到的“API 端点”是什么?您指的是连接到 Amazon S3 等 AWS 服务的能力吗?此外,您说 VPC 仅包含私有子网,但附加 Internet 网关并更新路由表以使用它会将这些子网变成公共子网。或者这些 不同 子网是附加 Lambda 函数的子网吗?安全组上的入站规则将被 Lambda 函数使用,因为它不通过网络接收请求,或者您指的是出站规则?
  • 如果 Lambda 函数需要从 VPC 进行 API 调用,例如访问 Internet 上的内容,您只需要一个 NAT 网关。 NAT 网关用于出站连接,它们根本不用于入站连接。另外,Lambda 函数的安全组的入站规则是没有意义的,它们根本没有使用,因为 Lambda 函数根本不接受入站网络请求,API Gateway 接受入站网络请求,然后使用该请求调用 Lambda 函数数据。

标签: amazon-web-services aws-lambda aws-api-gateway amazon-vpc nat


【解决方案1】:

API 网关用于入站通信,而 NAT 网关用于出站通信。

因此对于入站流量,一旦您将 API 网关路由配置为 lambda,并使用适当的安全策略,您就可以访问该 api。

对于出站通信,您的私有服务需要访问 NAT 网关,该网关会将流量路由到 Internet 网关并进一步向外发送到 Internet。

【讨论】:

    猜你喜欢
    • 2019-08-09
    • 1970-01-01
    • 2021-11-23
    • 1970-01-01
    • 2017-08-23
    • 1970-01-01
    • 2020-11-07
    • 1970-01-01
    • 2016-12-06
    相关资源
    最近更新 更多