使用 Elastic Beanstalk 創建示例應用程序 - AWS Elastic Beanstalk

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

使用 Elastic Beanstalk 創建示例應用程序

在此步驟中,您會從預先存在的範例應用程式開始建立新的應用程式。Elastic Beanstalk 支援各種程式設計語言、應用程式伺服器及 Docker 容器的平台。您可以在建立應用程式時選擇平台。

建立應用程式和環境

您將會使用 Create application (建立應用程式) 主控台精靈建立範例應用程式。它會建立 Elastic Beanstalk 應用程式,並在其中啟動環境。環境是的集合 AWS 執行應用程式程式碼所需的資源。

建立範例應用程式
  1. 開啟 Elastic Beanstalk 主控台

  2. 選擇建立應用程式

  3. Application name (應用程式名稱) 中,輸入 getting-started-app

  4. 選擇性新增應用程式標籤

  5. 關於 Platform (平台),選擇一個平台。

  6. 選擇 Next (下一步)

  7. 畫面上會顯示設定服務存取頁面。

  8. 針對服務角色,選擇使用現有服務角色

  9. 接下來,我們將重點介紹EC2執行個體設定檔下拉式清單。此下拉式清單中顯示的值可能會有所不同,視您的帳戶是否先前已建立新環境而定。

    根據清單中顯示的值,選擇下列其中一項。

    • 如果下拉式清單中aws-elasticbeanstalk-ec2-role顯示,請從EC2執行個體設定檔下拉式清單中選取。

    • 如果清單中顯示另一個值,而且這是適用於您環境的預設EC2執行個體設定檔,請從EC2執行個體設定檔下拉式清單中選取該值。

    • 如果EC2執行個體設定檔下拉式清單未列出任何可供選擇的值,請展開下列程序:建立EC2執行個體IAM角色設定檔

      完成建立EC2執行個體IAM角色設定檔中的步驟,以建立您隨後可為EC2執行個體設定檔選取的IAM角色。然後,請返回此步驟。

      現在您已建立IAM角色並重新整理清單,它會在下拉式清單中顯示為選項。從EC2執行個體設定檔下拉式清單中選取您剛建立的IAM角色。

  10. Configure service access (設定服務存取)頁面上選擇 Skip to Review (略過以檢閱)。

    這會略過選擇性步驟。

  11. Review (檢閱)頁面會顯示您所有選擇的摘要。

    選擇頁面底部的 Submit (提交) 。

設定裝置存取
建立執行個EC2體設定檔選取的IAM角色
  1. 選擇檢視許可詳細資料。這會顯示在執行個EC2體設定檔下拉式清單中。

    畫面上會顯示標題為檢視執行個體設定檔許可的模態視窗。此視窗會列出您需要附加至您建立的新EC2執行個體設定檔的受管理設定檔。它還提供了啟動IAM控制台的鏈接。

  2. 選擇顯示在視窗頂端的IAM主控台連結。

  3. 在IAM主控台瀏覽窗格中,選擇 [角色]。

  4. 選擇建立角色

  5. 在 [信任實體類型] 下,選擇 AWS 服務

  6. Use case (使用案例) 中,選擇 EC2

  7. 選擇 Next (下一步)

  8. 附加合適的受管政策。在檢視執行個體設定檔許可模態視窗中捲動,查看受管政策。這些政策也會列在此處:

    • AWSElasticBeanstalkWebTier

    • AWSElasticBeanstalkWorkerTier

    • AWSElasticBeanstalkMulticontainerDocker

  9. 選擇 Next (下一步)

  10. 輸入角色的名稱。

  11. (選用) 附加標籤至角色。

  12. 選擇建立角色

  13. 返回開啟的 Elastic Beanstalk 主控台視窗。

  14. 關閉檢視執行個體設定檔許可模態視窗

    重要

    請勿關閉顯示 Elastic Beanstalk 主控台的瀏覽器頁面。

  15. 選擇EC2執行個體設定檔下拉式清單旁邊的 refresh icon (重新整理)。

    這會重新整理下拉式清單,讓您剛建立的「角色」會顯示在下拉式清單中。

Elastic Beanstalk 工作流程

若要部署和執行範例應用程式 AWS 資源,Elastic Beanstalk 採取以下操作。完成這些動作約需 5 分鐘。

  1. 創建一個名為 Elastic Beanstalk 應用程序。getting-started-app

  2. 使用這些啟動一個名為 GettingStartedApp-env 的環境 AWS 資源:

    • Amazon 彈性運算雲(AmazonEC2)實例(虛擬機)

    • Amazon EC2 安全組

    • 一個 Amazon Simple Storage Service (Amazon S3) 儲存貯體

    • Amazon CloudWatch 警報

    • 同時 AWS CloudFormation 堆疊

    • 網域名稱

    有關這些的詳細信息 AWS 資源,請參閱AWS 為範例應用程式建立的資源

  3. 建立名為 Sample Application 的新應用程式版本。這是預設的 Elastic Beanstalk 範例應用程式檔案。

  4. 將範例應用程式的程式碼部署至 GettingStartedApp-env 環境

在環境建立程序期間,主控台會追蹤進度,並在「事件」索引標籤中顯示事件狀態。啟動所有資源且執行應用程式的EC2執行個體通過健康狀態檢查後,環境的健康狀態會變更為Ok。您現在可以使用您 Web 應用程式的網站。

AWS 為範例應用程式建立的資源

當您創建示例應用程序,Elastic Beanstalk 創建以下內容 AWS 資源:

  • EC2執行個 — 設定為在您選擇的平台上執行 Web 應用程式的 Amazon EC2 虛擬機器。

    每個平台會執行不同一套軟體、設定檔和指令碼,來支援特定的語言版本、架構、Web 容器或其組合。大多數的平台會使用 Apache 或 nginx 做為反向代理,處理您 Web 應用程式前端的網路流量、向它轉送請求、提供靜態資產,並產生存取和錯誤日誌。

  • 執行個體安全群組 — 設定為允許連接埠 80 傳入流量的 Amazon EC2 安全群組。此資源可讓負載平衡器的HTTP流量到達EC2執行 Web 應用程式的執行個體。在預設情況下,不允許傳輸資料從其他通訊埠傳送。

  • Amazon S3 儲存貯體 - 儲存位置,用來儲存當您使用 Elastic Beanstalk 時所建立的原始程式碼、日誌和其他成品。

  • Amazon CloudWatch 警示 — 兩個 CloudWatch 警示,用於監控環境中執行個體的負載,並在負載過高或過低時觸發。當警示觸發時,您的 Auto Scaling 群組會擴展或縮減以進行回應。

  • AWS CloudFormation 堆棧 -Elastic Beanstalk 用途 AWS CloudFormation 以啟動環境中的資源並傳播配置更改。資源在範本中定義,您可以在 AWS CloudFormation 控制台

  • 域名稱 — 在表單中路由到 Web 應用程式的網域名稱 subdomain.region. 彈性無線網站.

    注意

    為了增強 Elastic Beanstalk 應用程式的安全性,在公用尾碼清單 () 中註冊了彈性豆莖網域。PSL為了加強安全性,如果您需要在 Elastic Beanstalk 應用程式的預設網域名稱中設定敏感性 Cookie,我們建議您使用具 __Host- 前置詞的 Cookie。此做法將有助於保護您的網域免受跨網站要求偽造嘗試 () 的侵害。CSRF如需更多資訊,請參閱 Mozilla 開發人員網路中的設定 Cookie 頁面。