本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
應用程序運行架構和概念
AWS App Runner 從儲存庫中取得原始程式碼或來源映像檔,並在中為您建立和維護執行中的 Web 服務 AWS 雲端。通常情況下,您只需要調用一個應用程序運行器操作 CreateService,以創建您的服務。
透過來源映像檔儲存庫,您可以提供 ready-to-use 容器映像檔,讓 App Runner 可以部署以執行 Web 服務。使用原始程式碼儲存庫,您可以提供建置和執行 Web 服務的程式碼和指示,並以特定的執行階段環境為目標。App Runner 支持多種編程平台,每個平台主要版本都具有一個或多個託管運行時。
此時,應用程式執行程式可以從 Bit GitHub
下圖顯示了應用程序運行器服務體系結構的概述。在圖中,有兩個範例服務:一個是從部署原始程式碼 GitHub,另一個從 Amazon ECR 部署來源映像。相同的流程適用於比特桶存儲庫。
應用程序運行器
以下是與在 App Runner 中運行的 Web 服務相關的關鍵概念:
-
應用程式執行器服務 — App Runner 使用的 AWS 資源,根據其原始程式碼儲存庫或容器映像來部署和管理您的應用程式。應用程序運行服務是應用程序的運行版本。如需建立服務的詳細資訊,請參閱建立 App Runner 服務。
-
儲存庫提供者 — 包含應用程式來源 (例如 GitHub,Bitbucket 或 Amazon ECR) 的儲存庫服務。
-
應用程式執行器連線 — 可讓 App Runner 存取儲存庫提供者帳戶 (例如, GitHub 帳戶或組織) 的 AWS 資源。如需連線的相關資訊,請參閱管理 App Runner 連線。
-
執行階段 — 用於部署原始程式碼儲存庫的基本影像。App Runner 為不同的編程平台和版本提供了各種託管運行時。如需詳細資訊,請參閱 基於源代碼的應用程序運行服務。
-
部署 — 將原始碼儲存庫 (程式碼或影像) 的版本套用至 App Runner 服務的動作。服務的第一次部署會在建立服務的過程中進行。稍後的部署可以透過下列兩種方式之一進行:
-
自動部署 — CI/CD 功能。您可以將 App Runner 服務設定為自動建置 (針對原始程式碼),並在儲存庫中顯示的每個應用程式版本部署。這可以是源代碼存儲庫中的新提交,也可以是源圖像存儲庫中的新映像版本。
-
手動部署 — 您明確啟動的應用程式執行器服務的部署。
-
-
自定義域-您與應用程序運行器服務關聯的域。您的 Web 應用程序的用戶可以使用此域訪問您的 Web 服務,而不是默認的應用程序運行器子域。如需詳細資訊,請參閱 管理 App Runner 服務的自訂網域名稱。
注意
為了增強應用程式執行器應用程式的安全性,*.awsapprunner.com 網域註冊在公用尾碼清單 (PSL) 中。
為了進一步的安全性,如果您需要在 App Runner 應用程式的預設網域名稱中設定敏感性 Cookie,建議您使用 __Host-
前置詞的 Cookie。此做法將有助於保護您的網域免受跨站請求偽造 (CSRF) 攻擊。如需更多資訊,請參閱 Mozilla 開發人員網路中的設定 Cookie頁面。 -
維護 — App Runner 偶爾在執行 App Runner 服務的基礎結構上執行的活動。維護進行中時,服務狀態會暫時變更為
OPERATION_IN_PROGRESS
(主控台中的作業進行中)幾分鐘。在此期間,會封鎖對您服務的動作 (例如部署、組態更新、暫停/繼續或刪除)。當服務狀態回到時,請在幾分鐘後再次嘗試此動作RUNNING
。注意
如果您的操作失敗,並不意味著您的應用程序運行器服務已關閉。您的應用程序處於活動狀態並繼續處理請求 您的服務不太可能遇到任何停機時間。
特別是,如果 App Runner 檢測到託管服務的基礎硬件中的問題,則會遷移您的服務。為了防止任何服務停機時間,App Runner 會將您的服務部署到一組新的執行個體,並將流量轉移給它們(藍綠色部署)。您可能偶爾會看到費用略有暫時增加。
應用程序運行器支持
設定 App Runner 服務時,您可以指定要配置給服務的虛擬 CPU 和記憶體組態。您可以根據選取的運算組態付費。如需定價的詳細資訊,請參閱 AWS Resource Groups
定價
下表提供 App Runner 支援的 vCPU 和記憶體組態的相關資訊:
CPU | 記憶體 |
---|---|
0.25 vCPU |
0.5 GB |
0.25 vCPU |
1 GB |
0.5 vCPU |
1 GB |
1 vCPU |
2 GB |
1 vCPU |
3 GB |
1 vCPU |
4 GB |
2 vCPU |
4 GB |
2 vCPU |
6 GB |
4 vCPU |
8 GB |
4 vCPU |
10 GB |
4 vCPU |
十二 GB |
應用程序運行器
當您使用 App Runner 時,您可以在 AWS 帳戶. 這些資源可用來存取您的程式碼和管理您的服務。
下表提供這些資源的概觀:
資源名稱 | Description |
---|---|
Service |
代表應用程式的執行中版本。本指南的其餘部分內容描述了服務類型、管理、組態和監控。 ARN: |
Connection |
為您的 App Runner 服務提供訪問存儲在第三方提供商的私有存儲庫。作為單獨的資源存在,用於跨多個服務共享。如需連線的相關資訊,請參閱管理 App Runner 連線。 ARN: |
AutoScalingConfiguration |
為您的 App Runner 服務提供控制應用程式自動擴展的設定。作為單獨的資源存在,用於跨多個服務共享。如需自動擴展的相關資訊,請參閱管理 App Runner 自動擴展。 ARN: |
ObservabilityConfiguration |
為您的應用程式執行器服務設定其他應用程式可觀察性功能。作為單獨的資源存在,用於跨多個服務共享。若要取得有關觀察性組態的更多資訊,請參閱〈為您的服務設定可觀測性 ARN: |
VpcConnector |
為您的應用程式執行器服務設定 VPC 設定。作為單獨的資源存在,用於跨多個服務共享。如需 VPC 功能的詳細資訊,請參閱為傳出流量啟用 VPC 存取 。 ARN: |
VpcIngressConnection |
它是用來設定傳入流量的 AWS App Runner 資源。它會在 VPC 介面端點和應用程式執行器服務之間建立連線,讓您的應用程式執行器服務只能在 Amazon VPC 內存取。如需 VPC 功能的詳細資訊IngressConnection,請參閱為傳入流量啟用私有端點。 ARN: |
應用運行器資源配額
AWS 對您的帳號強加一些配額 (也稱為限制),以便在每個 AWS 區域帳號中使用 AWS 資源。下表列出與應用程式執行器資源相關的配額。配額也會列在中的AWS App Runner 端點和配額中AWS 一般參考。
資源配額 | Description | 預設值 | 可調節? | |
---|---|---|---|---|
Services |
您可以在帳戶中為每個服務創建的最大數量 AWS 區域。 |
30 |
|
|
Connections |
您可以在帳戶中為每個連接創建的最大連接數 AWS 區域。您可以在多個服務中使用單一連線。 |
10 |
|
|
Auto scaling configurations |
名稱 |
您在帳戶中針對每個 auto 擴展設定建立的唯一名稱的最大數量 AWS 區域。您可以在多個服務中使用單一 auto 擴展設定。 |
10 |
|
每個名稱的修訂 |
您可以在帳戶中為每個 AWS 區域 唯一名稱建立的 auto 擴展組態修訂數目上限。您可以在多個服務中使用單一 auto 擴展組態修訂版本。 |
5 |
|
|
Observability configurations |
名稱 |
您在每 AWS 區域個帳戶中建立的可觀察性設定中可以擁有的唯一名稱的最大數目。您可以在多個服務中使用單一可觀察性組態。 |
10 |
|
每個名稱的修訂 |
您可以在帳戶中為每 AWS 區域 個唯一名稱建立的可觀察性組態修訂數目上限。您可以在多個服務中使用單一可觀察性組態修訂版本。 |
10 |
|
|
VPC connectors |
您可以在帳戶中為每 AWS 區域個連接器建立的最大 VPC 連接器數目。您可以在多個服務中使用單一 VPC 連接器。 |
10 |
|
|
VPC Ingress Connection |
您可以在帳戶中為每個連線建立的最大 VPC 輸入連線數目。 AWS 區域您可以使用單一 VPC 入口連線來存取多個應用程式執行器服務。 |
1 |
|
大多數配額都是可調整的,您可以要求提高配額。如需詳細資訊,請參閱《Service Quotas 使用者指南》中的請求提高配額。