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

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

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

Amazon Elastic Container Service (Amazon ECS) 是具高可擴展性且快速的容器管理服務,可讓您輕鬆執行、停止和管理容器。您可以在 AWS Fargate上啟動服務或任務,以在受 Amazon ECS 管理的無伺服器基礎設施上託管容器。若要取得有關 Fargate 的更多資訊,請參閱AWS Fargate對於 Amazon ECS

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

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

必要條件

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

主控台會嘗試自動建立任務執行 IAM 角色,該角色是 Fargate 任務的必要項目。若要確保主控台可成功建立此 IAM 角色,下列其中一項必須為 True:

重要

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

  • Type (類型):HTTP

  • Protocol (通訊協定):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. 選擇建立

步驟 2:建立任務定義

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

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

  2. 選擇 Create new Task Definition (建立新任務定義),以及 Create new revision with JSON (使用 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. 選擇建立

步驟 3:建立服務

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

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

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

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

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

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

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

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

  5. 選擇建立

步驟 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 (刪除叢集)。在確認提示中,輸入 delete cluster-name,然後選擇 Delete (刪除)。刪除叢集會清除與叢集一起建立的相關聯資源,包括 Auto Scaling 群組、VPC 或負載平衡器。