啟動 Amazon 的GPU容器執行個體 ECS - Amazon Elastic Container Service

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

啟動 Amazon 的GPU容器執行個體 ECS

若要在 Amazon 上使用GPU執行個體ECS,您需要建立啟動範本、使用者資料檔案,以及啟動執行個體。

然後,您可以執行使用為 設定之任務定義的任務GPU。

使用啟動範本

您可以建立啟動範本。

  • 建立使用 Amazon ECS最佳化 GPU AMI ID 的啟動範本AMI。如需如何建立啟動範本的詳細資訊,請參閱《Amazon EC2使用者指南》中的使用您定義的參數建立新的啟動範本

    使用 Amazon Machine 映像上一個步驟的 AMI ID。如需如何使用 Systems Manager 參數指定 AMI ID 的詳細資訊,請參閱《Amazon EC2使用者指南》中的在啟動範本中指定 Systems Manager 參數

    將下列項目新增至啟動範本中的使用者資料。使用您叢集的名稱取代 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 來啟動容器執行個體。

  1. 建立稱為 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
  2. 執行下列命令以取得 GPU AMI ID。您會在以下步驟中使用此 ID。

    aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended --region us-east-1
  3. 執行下列命令以啟動 GPU 執行個體。請記得替換以下參數:

    • subnet 以執行個體將在其中啟動的私有或公有子網路 ID 取代 。

    • gpu_ami 將 取代為上一個步驟的 AMI ID。

    • t3.large 將 取代為您想要使用的執行個體類型。

    • region 以區域碼取代 。

    aws ec2 run-instances --key-name ecs-gpu-example \ --subnet-id subnet \ --image-id gpu_ami \ --instance-type t3.large \ --region region \ --tag-specifications 'ResourceType=instance,Tags=[{Key=GPU,Value=example}]' \ --user-data file://userdata.toml \ --iam-instance-profile Name=ecsInstanceRole
  4. 執行下列命令來驗證容器執行個體是否已註冊至叢集。當您執行此命令時,請記得替代下列參數:

    • 使用您的叢集名稱取代 cluster

    • 將 取代region為您的區域碼。

    aws ecs list-container-instances --cluster cluster-name --region region