10

我的任务是配置 API Gateway 以将流量路由到 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 和端点路径。这可行,但对我来说看起来太丑了。可能有任何漂亮的解决方案。

4

2 回答 2

1

标记为正确的答案已过时。现在可以使用 VPC 链接通过 HTTP 私有集成将 API 网关与面向内部的 ALB 集成。有关分步配置,请参阅https://stackoverflow.com/a/67413951/2948212 。

于 2021-05-06T07:56:49.263 回答
0

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

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

于 2020-04-24T18:29:45.873 回答