AWS PrivateLink 概念 - Amazon Virtual Private Cloud

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

AWS PrivateLink 概念

您可以使用 Amazon VPC 來定義虛擬私有雲端 (VPC),這是一個邏輯上隔離的虛擬網路。您可以在 VPC 中啟動 AWS 資源。您可以允許 VPC 中的資源連接至該 VPC 外部的資源。例如,將網際網路閘道新增至 VPC 以允許存取網際網路,或新增 VPN 連線以允許存取您的內部部署網路。或者,使用 AWS PrivateLink 以允許 VPC 中的資源使用私有 IP 地址連接到其他 VPC 中的服務,就好像這些服務直接託管在您的 VPC 中一樣。

以下是開始使用 AWS PrivateLink 時需要了解的重要概念。

架構圖

下圖顯示 AWS PrivateLink 運作方式的高階概觀。服務消費者可建立介面 VPC 端點,以連接至服務提供者託管的端點服務。


        			服務消費者可建立介面 VPC 端點,以連接至服務提供者託管的端點服務。

服務提供者

服務所有者是服務提供者。服務提供者包括 AWS、AWS 合作夥伴及其他 AWS 帳戶。服務提供者可以使用 AWS 資源 (例如 EC2 執行個體) 或使用內部部署伺服器來託管其服務。

端點服務

服務提供者建立端點服務,使其服務在區域中可用。建立端點服務時,服務提供者必須指定負載平衡器。負載平衡器會收到來自服務消費者的請求,並將它們傳送至您的服務。

根據預設,服務消費者無法使用您的端點服務。您必須新增權限,該權限會允許特定 AWS 主體連接到您的端點服務。

服務名稱

每個端點服務均由服務名稱識別。服務消費者在建立 VPC 端點時必須指定服務名稱。服務消費者可以查詢 AWS 服務 的服務名稱。服務提供者必須向服務消費者分享其服務名稱資訊。

服務狀態

以下是端點服務的可能狀態:

  • Pending - 正在建立端點服務。

  • Available - 端點服務可用。

  • Failed - 無法建立端點服務。

  • Deleting - 服務提供者已刪除端點服務,且正在進行刪除。

  • Deleted - 端點服務已刪除。

服務消費者

服務的使用者是服務消費者。服務消費者可以從 AWS 資源 (例如 EC2 執行個體) 或者從內部部署伺服器中存取端點服務。

VPC 端點

服務消費者可以建立 VPC 端點,將其 VPC 連接到端點服務。服務消費者在建立 VPC 端點時必須指定端點服務的服務名稱。有多種類型的 VPC 端點。您必須建立端點服務需要的 VPC 端點類型。

  • Interface – 建立介面端點以將 TCP 流量傳送至端點服務。使用 DNS 來解析目的地為端點服務的流量。

  • GatewayLoadBalancer - 建立 Gateway Load Balancer 端點,使用私有 IP 地址將流量傳送至虛擬設備機群。您可以使用路由表將流量從您的 VPC 路由至 Gateway Load Balancer 端點。Gateway Load Balancer 會將流量分配給虛擬設備,並可隨需擴展。

還有另一種 Gateway VPC 端點類型,這種類型的端點會建立閘道端點,將流量傳送至 Amazon S3 或 DynamoDB。與其他類型的 VPC 端點不同,閘道端點不會使用 AWS PrivateLink。如需更多詳細資訊,請參閱 閘道端點

端點網路介面

端點網路介面是一個由請求者管理的網路介面,可作為目的地為端點服務的流量進入點。對於您在建立 VPC 端點時指定的每個子網,我們會在子網中建立端點網路介面。

如果 VPC 端點支援 IPv4,其端點網路介面具有 IPv4 地址。如果 VPC 端點支援 IPv6,其端點網路介面具有 IPv6 地址。無法從網際網路連線端點網路界面的 IPv6 地址。如果您使用 IPv6 地址描述端點網路介面,請注意 denyAllIgwTraffic 已啟用。

端點網路介面的 IP 地址在其 VPC 端點的存留期間不會變更。

端點政策

VPC 端點政策為 IAM 資源政策,您可將其連接至 VPC 端點。它會決定哪些主體可以使用 VPC 端點存取端點服務。預設的 VPC 端點政策允許 VPC 端點上所有資源的所有主體進行所有操作。

端點狀態

建立 VPC 端點時,端點服務會收到連線請求。服務提供者可以接受或拒絕該請求。如果服務提供者接受該請求,服務消費者可以在 VPC 端點進入 Available 狀態後使用它。

以下是 VPC 端點的可能狀態:

  • PendingAcceptance - 連線請求處於待處理狀態。這是手動接受請求的初始狀態。

  • Pending - 服務提供者接受連線請求。這是自動接受請求的初始狀態。如果服務消費者修改 VPC 端點,則 VPC 端點會回到此狀態。

  • Available - VPC 端點可供使用。

  • Rejected - 服務提供者拒絕連線請求。服務提供者也可以在其可供使用之後拒絕連線。

  • Expired - 連線請求已過期。

  • Failed - 無法使 VPC 端點可用。

  • Deleting - 服務消費者已刪除 VPC 端點,且正在進行刪除。

  • Deleted - 已刪除 VPC 端點。

VPC 的流量會使用 VPC 端點與端點服務之間的連線,傳送到端點服務。VPC 端點和端點服務之間的流量會保留在 AWS 網路中,而不會遍歷公用網際網路。

服務提供者會新增權限,供服務取用者存取端點服務。服務取用者會啟動連線,而服務提供者會接受或拒絕連線請求。

有了介面 VPC 端點,服務取用者可以使用端點政策控制哪些 IAM 主體可以使用 VPC 端點存取端點服務。

私有託管區域

託管區域是一個 DNS 記錄容器,它定義如何路由網域或子網域的流量。對於公有託管區域,記錄指定如何在網際網路上路由流量。對於私有託管區域,記錄指定如何在您的 VPC 中路由流量。

您可以設定 Amazon Route 53,將網域流量路由到 VPC 端點。如需詳細資訊,請參閱使用網域名稱將流量路由到 VPC 端點

您可以使用 Route 53 來設定水平分割 DNS,在其中您可對公有網站和 AWS PrivateLink 支援的端點服務使用相同的網域名稱。來自消費者 VPC 的公有主機名稱的 DNS 請求會解析為端點網路介面的私有 IP 地址,但來自 VPC 外部的請求仍會繼續解析為公有端點。如需詳細資訊,請參閱檢閱路由流量的 DNS 機制並對 AWS PrivateLink 部署啟用容錯移轉