本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
為傳出流量啟用 VPC 存取
根據預設,您的 AWS App Runner 應用程式可以將訊息傳送到公用端點。這包括您自己的解決方案 AWS 服務,以及任何其他公共網站或 Web 服務。您的應用程式甚至可以從 Amazon 虛擬私有雲端 (Amazon VPC) 將訊息傳送到在 VPC 中執行的應用程式的公有端點。如果您在啟動環境時未設定 VPC,應用程式執行器會使用預設的 VPC,這是公用的。
您可以選擇在自訂 VPC 中啟動環境,以自訂傳出流量的網路和安全性設定。您可以讓 AWS App Runner 服務從 Amazon 虛擬私有雲端 (Amazon VPC) 存取在私有 VPC 中執行的應用程式。執行此操作之後,您的應用程式可以與 Amazon 虛擬私人雲端 (Amazon VPC) 中託管的其他應用程式連接並將訊息傳送到其他應用程式。範例包括 Amazon RDS 資料庫 ElastiCache、Amazon 以及在私有 VPC 中託管的其他私有服務。
VPC 連接器
您可以透過從應用程式執行器主控台 (稱為 VPC 連接器) 建立 VPC 端點,將您的服務與 VPC 建立關聯。若要建立 VPC 連接器,請指定 VPC、一或多個子網路,以及選擇性地指定一或多個安全群組。設定 VPC 連接器之後,您可以將其與一或多個應用程式執行器服務搭配使用。
一次性延遲
如果您將 App Runner 服務設定為輸出流量的自訂 VPC 連接器,則可能會遇到 2 到 5 分鐘的一次性啟動延遲。啟動程序會等到 VPC 連接器已準備好連線至其他資源,然後才會將服務狀態設定為執行中。您可以在第一次建立自訂 VPC 連接器時使用自訂 VPC 連接器來設定服務,也可以稍後執行服務更新來設定服務。
請注意,如果您對其他服務重複使用相同的 VPC 連接器組態,則不會有任何延遲。VPC 連接器組態以安全群組和子網路組合為基礎。對於指定的 VPC 連接器組態,延遲只會在初始建立 VPC 連接器超平面 ENI (彈性網路介面) 期間發生一次。
更多關於自訂 VPC 連接器和 AWS 超平面
應用程式執行器中的 VPC 連接器是以超平面 ( AWS Hyperplane) 為基礎,這是位於多個 AWS 資源 (例如 Net work Load Balancer、NAT 閘道和 AWS) 背後的內部 Amazon 網路系統。 PrivateLink AWS Hyperplane 技術提供高輸送量和低延遲功能,以及更高的共用程度。當您建立 VPC 連接器並將其與服務產生關聯時,會在子網路中建立超平面 ENI。VPC 連接器組態以安全群組和子網路組合為基礎,您可以跨多個 App Runner 服務參考相同的 VPC 連接器。因此,基礎超平面 ENI 會在您的應用程式執行器服務之間共用。即使您擴大處理請求負載所需的任務數量,並使 VPC 中的 IP 空間更有效利用,這種共用也是可行的。如需詳細資訊,請參閱 AWS 容器部落格中的深入探討 AWS 應用程式執行器 VPC 聯網
子網路
每個子網路都位於特定的可用區域中。為了獲得高可用性,建議您至少選取三個可用區域的子網路。如果該區域的可用區域少於三個,建議您在所有支援的可用區域中選取子網路。
為 VPC 選取子網路時,請確定您選擇的是私有子網路,而非公有子網路。這是因為,當您建立 VPC 連接器時,應用程式執行器服務會在每個子網路中建立超平面 ENI。每個超平面 ENI 只會分配一個私有 IP 地址,並標記為AWSAppRunnerManaged密鑰的標籤。如果您選擇公有子網路,執行 App Runner 服務時會發生錯誤。不過,如果您的服務需要存取網際網路或其他公眾上的某些服務 AWS 服務,請參閱選取子網路時的考量 。
選取子網路時的考量
-
當您將服務連線到 VPC 時,輸出流量無法存取公用網際網路。來自應用程式的所有輸出流量都會透過服務所連線的 VPC 導向。VPC 的所有網路規則都適用於應用程式的輸出流量。這表示您的服務無法存取公用網際網路和 AWS API。若要取得存取權,請執行下列其中一個動作:
-
某些可用區域中的某些可用區域 AWS 區域 不支援可與 App Runner 服務搭配使用的子網路。如果您在這些可用區域中選擇子網路,則無法建立或更新服務。在這些情況下,App Runner 會提供詳細的錯誤訊息,指向不支援的子網路和可用區域。發生這種情況時,請從要求中移除不支援的子網路來進行疑難排解,然後再試一次。
安全群組
您可以選擇性地在指定的子網路 AWS 下指定 App Runner 用來存取的安全性群組。如果您未指定安全性群組,應用程式執行器會使用 VPC 的預設安全性群組。預設的安全群組會允許所有傳出流量。
新增安全性群組可為 VCP 連接器提供額外的安全性,讓您可以更好地控制網路流量。VPC 連接器僅用於應用程式的輸出通訊。您可以使用輸出規則來允許與所需目的地端點進行通訊。您還必須確保與目標資源相關聯的任何安全群組都具有適當的輸入規則。否則,這些資源無法接受來自 VPC 連接器安全性群組的流量。
注意
將服務與 VPC 建立關聯時,下列流量不會受到影響:
-
入站流量 — 應用程式接收的內送訊息不會受到關聯 VPC 的影響。郵件會透過與您的服務相關聯的公用網域名稱路由傳送,且不會與 VPC 互動。
-
應用程序運行器流量 — App Runner 代表您管理多個操作,例如提取源代碼和圖像,推送日誌和檢索秘密。這些動作產生的流量不會透過 VPC 路由傳送。
若要深入瞭解如何與 Amazon VPC AWS App Runner 整合,請參閱AWS
應用程式執行器虛擬私人雲
注意
對於傳出流量應用程序運行器目前僅支持 IPv4。
管理 VPC 存取
注意
如果您為服務建立輸出流量 VPC 連接器,接下來的服務啟動程序將會遇到一次性延遲。您可以在建立新服務時或之後使用服務更新設定此組態。如需詳細資訊,請參閱本指南的 < 使用應用程式執行器聯網 > 一章一次性延遲中的。
使用下列其中一種方法管理應用程式執行器服務的 VPC 存取權: