本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
為 Amazon ECS 啟動 GPU 容器執行個體
若要在 Amazon EC2 上的 Amazon ECS 中使用 GPU 執行個體,您需要建立啟動範本、使用者資料檔案並啟動執行個體。
然後,您便可執行使用為 GPU 設定之任務定義的任務。
使用啟動範本
您可以建立啟動範本。
-
建立使用 AMI 的 Amazon ECS 最佳化 GPU AMI ID 的啟動範本。如需有關如何建立啟動範本的資訊,請參閱 Amazon EC2 User Guide 中的 Create a new launch template using parameters you define。
將從前一步驟取得的 AMI ID 用於 Amazon Machine Image。如需有關如何使用 Systems Manager 參數指定 AMI ID 的資訊,請參閱 Amazon EC2 User Guide 中的 Specify a Systems Manager parameter in a launch template。
將下列內容新增至啟動範本中的使用者資料。以您的叢集名稱取代
cluster-name。#!/bin/bash echo ECS_CLUSTER=cluster-name>> /etc/ecs/ecs.config; echo ECS_ENABLE_GPU_SUPPORT=true >> /etc/ecs/ecs.config
使用 AWS CLI
您可以使用 AWS CLI 來啟動容器執行個體。
-
建立稱為
userdata.toml的檔案。此檔案會用於執行個體使用者資料。以您的叢集名稱取代cluster-name。#!/bin/bash echo ECS_CLUSTER=cluster-name>> /etc/ecs/ecs.config; echo ECS_ENABLE_GPU_SUPPORT=true >> /etc/ecs/ecs.config -
執行下列命令,取得 GPU AMI ID。您會在以下步驟中使用此 ID。
aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended --regionus-east-1 -
執行下列命令,啟動 GPU 執行個體。請記得替換以下參數:
-
將
子網路替換為執行個體將在其中啟動的私有或公有子網路的 ID。 -
將
bottlerocket_ami取代為從前一步驟取得的 AMI ID。 -
將
t3.large替換為您要使用的執行個體類型。 -
將
region替換為區域代碼。
aws ec2 run-instances --key-name ecs-gpu-example \ --subnet-idsubnet\ --image-idgpu_ami\ --instance-typet3.large\ --regionregion\ --tag-specifications 'ResourceType=instance,Tags=[{Key=GPU,Value=example}]' \ --user-data file://userdata.toml \ --iam-instance-profile Name=ecsInstanceRole -
-
執行下列命令來驗證容器執行個體是否已註冊至叢集。當您執行此命令時,請記得替代下列參數:
-
將
cluster替代為叢集名稱。 -
將
region替換為您的區域代碼。
aws ecs list-container-instances --clustercluster-name--regionregion -