了解如何為 Fargate 啟動類型建立 Amazon ECS Windows 任務 - Amazon Elastic Container Service

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

了解如何為 Fargate 啟動類型建立 Amazon ECS Windows 任務

在 Amazon ECS支援 Fargate 的區域中ECS AWS Fargate ,使用 Fargate 啟動類型的任務,開始使用 Amazon AWS on。

完成下列步驟以開始使用 Amazon ECS on AWS Fargate。

必要條件

開始之前,請先完成 中的步驟,設定 以使用 Amazon ECS並確定您的 AWS 使用者具有AdministratorAccessIAM政策範例中指定的許可。

主控台會嘗試自動建立 Fargate 任務所需的任務執行IAM角色。為了確保主控台能夠建立此IAM角色,下列其中一項必須為 true:

重要

使用任務定義建立服務時選取的安全群組,必須為入站流量開放連接埠 80。將下列傳入規則新增至安全群組。如需如何建立安全群組的詳細資訊,請參閱《Amazon 使用者指南》中的為您的 Amazon EC2執行個體建立安全群組 EC2

  • 類型:HTTP

  • 通訊協定: TCP

  • 連接埠範圍:80

  • 來源:Anywhere (0.0.0.0/0)

步驟 1:建立叢集

您可以使用預設 來建立新的叢集,稱為 WindowsVPC。

使用 建立叢集 AWS Management Console
  1. https://console.aws.amazon.com/ecs/v2 開啟主控台。

  2. 從導覽列中選取要使用的「區域」。

  3. 在導覽窗格中,選擇叢集

  4. Clusters (叢集) 頁面上,選擇 Create cluster (建立叢集)。

  5. Cluster configuration (叢集組態) 下的 Cluster name (叢集名稱) 中,輸入 windows

  6. (選用) 若要開啟 Container Insights,請展開 Monitoring (監控),然後開啟 Use Container Insights (使用 Container Insights)。

  7. (選用) 為協助識別您的叢集,請展開 Tags (標籤),然後設定標籤。

    [新增標籤] 選擇新增標籤,並執行下列動作:

    • 對於 Key (金鑰),輸入金鑰名稱。

    • 對於 Value (值),進入金鑰值。

    [移除標籤] 選擇標籤「金鑰」和「值」右側的移除

  8. 選擇 Create (建立)。

步驟 2:註冊 Windows 任務定義

您必須先註冊任務定義,才能在 Amazon ECS叢集中執行 Windows 容器。以下任務定義範例會在具有 mcr.microsoft.com/windows/servercore/iis 容器映像之容器執行個體的連接埠 8080 顯示一個簡單的網頁。

向 註冊範例任務定義 AWS Management Console
  1. 在導覽窗格中,選擇 Task Definitions (任務定義)。

  2. 選擇建立新的任務定義使用 建立新的任務定義JSON

  3. 複製下列任務定義範例並貼到方塊中,然後選擇 Save (儲存)

    { "containerDefinitions": [ { "command": ["New-Item -Path C:\\inetpub\\wwwroot\\index.html -Type file -Value '<html> <head> <title>Amazon ECS Sample App</title> <style>body {margin-top: 40px; background-color: #333;} </style> </head><body> <div style=color:white;text-align:center> <h1>Amazon ECS Sample App</h1> <h2>Congratulations!</h2> <p>Your application is now running on a container in Amazon ECS.</p>'; C:\\ServiceMonitor.exe w3svc"], "entryPoint": [ "powershell", "-Command" ], "essential": true, "cpu": 2048, "memory": 4096, "image": "mcr.microsoft.com/windows/servercore/iis:windowsservercore-ltsc2019", "name": "sample_windows_app", "portMappings": [ { "hostPort": 80, "containerPort": 80, "protocol": "tcp" } ] } ], "memory": "4096", "cpu": "2048", "networkMode": "awsvpc", "family": "windows-simple-iis-2019-core", "executionRoleArn": "arn:aws:iam::012345678910:role/ecsTaskExecutionRole", "runtimePlatform": {"operatingSystemFamily": "WINDOWS_SERVER_2019_CORE"}, "requiresCompatibilities": ["FARGATE"] }
  4. 驗證您的資訊,然後選擇 Create (建立)。

步驟 3:以您的任務定義建立服務

註冊您的任務定義之後,即可用以放置任務到您的叢集中。下列程序會以您的任務定義建立一項服務,並在您的叢集放置一項任務。

使用主控台從您的任務定義建立服務
  1. 在導覽窗格中,選擇 Clusters (叢集),然後選取您在 步驟 1:建立叢集 中建立的叢集。

  2. Services (服務) 索引標籤上,選擇 Create (建立)。

  3. Deployment configuration (部署組態),指定應用程式的部署方式。

    1. Task Definitions (任務定義) 中,選擇您在 步驟 2:註冊 Windows 任務定義 中建立的任務定義。

    2. 針對 Service name (服務名稱),輸入服務的名稱。

    3. Desired tasks (所需任務) 中,請輸入 1

  4. Networking (聯網) 下,您可以建立新的安全群組,或選擇現有的安全群組。請確定您使用的安全群組已在 必要條件 下方列出傳入規則。

  5. 選擇 Create (建立)。

步驟 4:檢視服務

在您的服務在您的叢集中啟動任務後,您可以檢視服務並在瀏覽器中開啟IIS測試頁面,以確認容器正在執行中。

注意

您的容器執行個體約需 15 分鐘來下載和解壓縮 Windows 容器基礎層。

檢視服務
  1. https://console.aws.amazon.com/ecs/v2 開啟主控台。

  2. 在導覽窗格中,選擇叢集

  3. 選擇您執行服務的叢集。

  4. Services (服務) 索引標籤中,Service name (服務名稱) 下,選擇您在 步驟 3:以您的任務定義建立服務 中建立的服務。

  5. 選擇 Tasks (任務) 索引標籤,然後選擇服務中的任務。

  6. 在任務頁面 Configuration (組態) 區段的 Public IP (公有 IP) 中,選擇 Open address (開放地址)。

步驟 5:清除

使用 Amazon ECS叢集完成後,您應該清除與其相關聯的資源,以避免對您未使用的資源產生費用。

某些 Amazon ECS 資源,例如任務、服務、叢集和容器執行個體,會使用 Amazon ECS主控台進行清理。其他資源,例如 Amazon EC2執行個體、Elastic Load Balancing 負載平衡器和 Auto Scaling 群組,都必須在 Amazon EC2主控台中手動清除或刪除建立它們的 AWS CloudFormation 堆疊。

  1. 在導覽窗格中,選擇叢集

  2. Clusters (叢集) 頁面,選取您為本教學課程建立的叢集。

  3. 選擇 Services (服務) 索引標籤。

  4. 選取服務,然後選擇 Delete (刪除)。

  5. 在確認提示中,輸入 delete (刪除),然後選擇 Delete (刪除)。

    等到刪除該服務。

  6. 選擇 Delete Cluster (刪除叢集)。在確認提示中輸入 Delete cluster-name,然後選擇 Delete。刪除叢集會清除使用叢集建立的相關資源,包括 Auto Scaling 群組VPCs、 或負載平衡器。