Iniciar uma instância de contêiner de GPU para o Amazon ECS
Para usar uma instância de GPU no Amazon ECS no Amazon EC2, você precisa criar um modelo de inicialização, um arquivo de dados do usuário e inicializar 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-namepelo 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-namepelo 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 --regionus-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-redepelo ID da sub-rede pública ou privada na qual sua instância será iniciada. -
Substitua
gpu_amipelo ID da AMI da etapa anterior. -
Substitua
t3.largepelo tipo de instância que você deseja usar. -
Substitua
regiãopelo código da região.
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 -
-
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
clusterpelo nome do seu cluster. -
Substitua
regiãopelo código da sua região.
aws ecs list-container-instances --clustercluster-name--regionregion -