簡體   English   中英

API Gateway 如何與 Firehose VPC 端點通信

[英]How API Gateway talk to Firehose VPC endpoint

將 Amazon Kinesis Data Firehose 與 AWS PrivateLink 結合使用告訴 Firehose VPC 終端節點將 VPC 和 Firehose 之間的流量保持在 AWS 內。

您可以使用接口 VPC 終端節點來防止 Amazon VPC 和 Kinesis Data Firehose 之間的流量離開 Amazon 網絡。

當 API Gateway 通過 AWS 集成調用 Firehose 的 PutRecord API 時,流量是通過 Firehose VPC 端點還是進入 Internet?

更新

Introducing Amazon API Gateway Private Endpoints顯示了 EC2 和 Lambda 在 VPC 中的圖表。 “所有公開可用的端點”轉到 Internet,並且不確定 API Gateway 是否識別 Firehose 私有端點是否存在並將流量路由到那里。

在此處輸入圖片說明

DynamoDBEC2的示例是關於網關 VPC 端點的 對於API Gateway沒有Gateway VPC Endpoint。 取而代之的是接口 VPC 終端節點 (AWS PrivateLink)網關私有集成

在我開始之前,需要提到的是,在使用 VPC 時,API 網關端點類型的選擇會產生三種 API 端點類型的重要影響。

API 網關的接口 VPC 終端節點

它允許例如私有和公共子網中的 EC2 實例使用 AWS 內部網絡訪問您的 API 網關,而無需通過 Internet。 為此,必須將 API 網關端點配置為private

在這種情況下,API Gateway 像往常一樣使用 kinesis。 除了為其設置 AWS 集成之外,無需執行任何操作。 例如,私有 EC2 實例(在私有子網中)將能夠通過接口 VPC 端點訪問private API 網關端點,然后訪問 Kinesis:

私有 EC2 實例 -> API 網關的接口 VPC 端點 -> API 網關(私有) -> Kinesis

這里要知道的重要一點是,一旦您在 VPC 中為 API 網關創建接口 VPC 終端節點,您將無法連接到regionaledge-optimized API 網關,即使在公共子網中也是如此。 當接口存在時,只能從 VPC 內部訪問private API 網關。

網關私有集成

這允許您的公共(即regionaledge-optimized )API 網關訪問私有子網中的私有 EC2 實例。 這是通過在您的 VPC 中創建(例如內部) NLB來完成的,您將連接到VPC Link ,該VPC Link又與 API 網關中的 API 方法相關聯。

VPC Link在方法級別工作,因此您的公共 API 可以使用一種方法(例如 /private)通過VPCLink訪問私有 EC2 實例,以及第二種方法(例如 /kinesis)使用 AWS 集成像往常一樣訪問 kinesis。

訪問私有 EC2 實例如下所示:

API 網關(/private 方法)-> VPCLink -> NLB -> 私有 EC2 實例。

訪問 Kinesis:

API 網關 (/kinesis) -> Kinesis(通過 AWS 集成)

您還可以讓您的私有 EC2 實例與 Kinesis 通信。 在這種情況下,如果您不使用NAT gateway則需要 Kinesis 的 VPC 接口端點:

API 網關 (/private) -> VPCLink -> NLB -> 私有 EC2 實例 -> Kinesis 的接口 VPC 端點 -> Kinesis(AWS 集成)

希望這能闡明 API Gateway 和 Kinesis 如何交互。

ps AWS 約定以類似的方式命名不同的東西會引起很多頭痛。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM