Iniciar uma instância de contêiner de GPU para o Amazon ECS
Para usar uma instância de GPU no Amazon ECS, você precisa criar um modelo de execução, um arquivo de dados do usuário e executar a instância.
Em seguida, você pode executar uma tarefa que usa uma definição de tarefa configurada para GPU.
Usar um modelo de execução
Você pode criar um modelo de execução.
-
Crie um modelo de execução que use o ID da AMI de GPU otimizada para o Amazon ECS para a AMI. Para obter informações sobre como criar um modelo de inicialização, consulte Criar um novo modelo de inicialização usando parâmetros definidos por você no Manual do usuário do Amazon EC2.
Use o ID da AMI da etapa anterior na Imagem da máquina da Amazon. Para obter informações sobre como especificar o ID da AMI com o parâmetro do Systems Manager, consulte Especificar um parâmetro do Systems Manager em um modelo de inicialização no Manual do usuário do Amazon EC2.
Adicione os itens a seguir aos Dados do usuário no modelo de execução. Substitua
cluster-name
pelo nome do seu cluster.#!/bin/bash echo ECS_CLUSTER=
cluster-name
>> /etc/ecs/ecs.config; echo ECS_ENABLE_GPU_SUPPORT=true >> /etc/ecs/ecs.config
Usar a AWS CLI
É possível executar uma instância de contêiner usando a AWS CLI.
-
Crie um arquivo chamado
userdata.toml
. Esse arquivo será usado para dados do usuário da instância. Substituacluster-name
pelo nome do seu cluster.#!/bin/bash echo ECS_CLUSTER=
cluster-name
>> /etc/ecs/ecs.config; echo ECS_ENABLE_GPU_SUPPORT=true >> /etc/ecs/ecs.config -
Execute o comando a seguir para obter o ID da AMI de GPU. Você usará isso na etapa a seguir.
aws ssm get-parameters --names /aws/service/ecs/optimized-ami/amazon-linux-2/gpu/recommended --region
us-east-1
-
Execute o comando a seguir para executar a instância de GPU. Lembre-se de substituir os parâmetros a seguir:
-
Substitua
sub-rede
pelo ID da sub-rede pública ou privada na qual sua instância será iniciada. -
Substitua
gpu_ami
pelo ID da AMI da etapa anterior. -
Substitua
t3.large
pelo tipo de instância que você deseja usar. -
Substitua
região
pelo código da região.
aws ec2 run-instances --key-name ecs-gpu-example \ --subnet-id
subnet
\ --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 -
-
Execute o comando a seguir para verificar se a instância de contêiner está registrada no cluster. Ao executar esse comando, lembre-se de substituir os parâmetros a seguir:
-
Substitua
cluster
pelo nome do seu cluster. -
Substitua
região
pelo código da sua região.
aws ecs list-container-instances --cluster
cluster-name
--regionregion
-