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

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

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

Amazon Elastic Container Service (Amazon ECS) 是一種高度可擴展、快速的容器管理服務,可讓您輕鬆執行、停止和管理容器。您可以在 上ECS啟動服務或任務,在 Amazon 管理的無伺服器基礎設施上託管容器 AWS Fargate。如需 Fargate 的詳細資訊,請參閱 AWS Fargate 適用於 Amazon ECS

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

請完成下列步驟,以在 ECS上開始使用 Amazon AWS Fargate。

必要條件

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

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

重要

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

  • 類型: HTTP

  • 通訊協定: TCP

  • 連接埠範圍:80

  • 來源:Anywhere (0.0.0.0/0)

步驟 1:建立叢集

建立使用預設 的叢集VPC。

在開始之前,請指派適當的IAM許可。如需詳細資訊,請參閱Amazon ECS叢集範例

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

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

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

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

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

    名稱可以包含最多 255 個字母 (大小寫)、數字與連字號。

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

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

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

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

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

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

  8. 選擇 Create (建立)。

步驟 2:建立任務定義

任務定義就像您應用程式的藍圖。每次在 Amazon 中啟動任務時ECS,您都會指定任務定義。服務接著會知道要為容器使用哪個 Docker 映像、要在任務中使用多少個容器,以及每個容器的資源配置。

  1. 在導覽窗格中,選擇 Task Definitions (任務定義)。

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

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

    { "family": "sample-fargate", "networkMode": "awsvpc", "containerDefinitions": [ { "name": "fargate-app", "image": "public.ecr.aws/docker/library/httpd:latest", "portMappings": [ { "containerPort": 80, "hostPort": 80, "protocol": "tcp" } ], "essential": true, "entryPoint": [ "sh", "-c" ], "command": [ "/bin/sh -c \"echo '<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> </div></body></html>' > /usr/local/apache2/htdocs/index.html && httpd-foreground\"" ] } ], "requiresCompatibilities": [ "FARGATE" ], "cpu": "256", "memory": "512" }
  4. 選擇 Create (建立)。

步驟 3:建立服務

使用任務定義來建立服務。

  1. 在導覽窗格中,選擇 Clusters (叢集),然後選取您在 步驟 1:建立叢集 中建立的叢集。

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

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

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

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

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

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

  5. 選擇 Create (建立)。

步驟 4:檢視服務

  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 (刪除)。或者,您可以使用 Force delete選項,讓 Amazon 在刪除服務之前代您縮減服務ECS規模。

    等到刪除該服務。

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