连接 AWS Api Gateway 和私有 ALB

Ale*_*gak 10 amazon-web-services amazon-vpc aws-api-gateway aws-load-balancer

我有一个任务来配置 API 网关以将流量路由到 Lambda 或负载均衡器(内部,在 VPC 下)。我认为可以使用简单的 HTTP 集成或 AWS 服务为 ALB 创建简单的集成。但是经过一段时间的谷歌搜索后,我发现只有一种解决方案 - 是配置 NLB,然后使用VPC_Link 集成。在这种情况下,一切看起来都在工作。

但是我仍然找到了一些像这样的文章,其中人们描述了如何在没有 VPC_links 的情况下集成 Api Gateway 和 LB。就我而言invalid endpoint address,将内部 ALB 与 apigateway 集成时,我总是看到错误。我想这仅适用于公共资源(面向 LB 的互联网)?

问题的第二部分。当我配置 VPC_link 时,我仍然需要在集成中提供一些端点以进行证书检查和其他事情。但是看起来这个端点仍然必须可以公开访问?问题是我在 ALB 下的服务有多个端点,我需要在这个端点提供路径Endpoint URL,这个端点应该是公开的,就像我现在看到的那样。因此,出于测试原因,我提供了我们需要执行的公共资源的 url 和端点路径。这有效,但对我来说看起来太丑了。可能有任何漂亮的解决方案。

ibe*_*dev 5

标记为正确的答案已过时。现在可以使用 VPC Link 通过 HTTP 私有集成将 API 网关与面向内部的 ALB 集成。请参阅/sf/answers/4718976601/了解分步配置。

  • 已接受的评论中究竟有哪些过时的内容?对于 REST API,APIGW 和 ALB 之间仍然无法直接集成。是的,它应该适用于 HTTP API,官方文档中也有概述:https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-vs-rest.html (2认同)

Eri*_*ick 1

我也一直在为此苦苦挣扎。对于 REST API,您可以创建指向 NLB 的 VPC 链接,但不能创建指向 ALB 的 VPC 链接(这是invalid endpoint address您一直看到的问题)。可以将 HTTP API 直接连接到 API 网关(大约一个月前发布 - API 网关提供与 AWS ELB 和 AWS CloudMap 的私有集成,作为 HTTP API GA 版本的一部分)。这令人沮丧,我希望他们能为 REST API 的 VPC 链接添加 ALB 支持,但目前这是不可能的。

至于你问题的第二部分,我不确定你所说的“端点集成”是什么意思,所以恐怕我无法帮助你。

  • 这事有进一步更新吗 ?我们还有限制吗?不想让我们共享的 ALB 面向互联网。 (2认同)