Criação de um grupo de nós de computação no AWS PCS - AWS PCS

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Criação de um grupo de nós de computação no AWS PCS

Este tópico fornece uma visão geral das opções disponíveis e descreve o que considerar ao criar um grupo de nós de computação no AWS Parallel Computing Service (AWS PCS). Se esta é a primeira vez que você cria um grupo de nós de computação em AWS PCS, recomendamos que você siga o tutorial emComeçando com AWS PCS. O tutorial pode ajudá-lo a criar um HPC sistema funcional sem expandir para todas as opções disponíveis e arquiteturas de sistema possíveis.

Pré-requisitos

  • Cotas de serviço suficientes para iniciar o número desejado de EC2 instâncias em seu Região da AWS. Você pode usar o AWS Management Consolepara verificar e solicitar aumentos em suas cotas de serviço.

  • Uma sub-rede existente VPC e uma (s) que atendam aos requisitos AWS PCS de rede. Recomendamos que você entenda completamente esses requisitos antes de implantar um cluster para uso em produção. Para obter mais informações, consulte AWS PCSVPCe requisitos e considerações de sub-rede. Você também pode usar um CloudFormation modelo para criar sub-redes VPC e. AWS fornece uma HPC receita para o CloudFormation modelo. Para obter mais informações, consulte aws-hpc-recipesem GitHub.

  • Um perfil de IAM instância com permissões para chamar a AWS PCS RegisterComputeNodeGroupInstance API ação e acessar quaisquer outros AWS recursos necessários para as instâncias do seu grupo de nós. Para obter mais informações, consulte IAMperfis de instância para o AWS Parallel Computing Service.

  • Um modelo de lançamento para suas instâncias de grupos de nós. Para obter mais informações, consulte Usando modelos de EC2 lançamento da Amazon com AWS PCS.

  • Para criar um grupo de nós computacionais que usa instâncias Amazon EC2 Spot, você deve ter a função AWSServiceRoleForEC2Spotvinculada ao serviço em seu. Conta da AWS Para obter mais informações, consulte Função do Amazon EC2 Spot para AWS PCS.

Crie um grupo de nós de computação no AWS PCS

Você pode criar um grupo de nós de computação usando o. AWS Management Console ou o. AWS CLI

AWS Management Console
Para criar seu grupo de nós de computação usando o console
  1. Abra o AWS PCSconsole.

  2. Selecione o cluster em que você deseja criar um grupo de nós de computação. Navegue até grupos de nós de computação e escolha Criar.

  3. Na seção Configuração do grupo de nós de computação, forneça um nome para seu grupo de nós. O nome só pode conter caracteres alfanuméricos e hífens que diferenciem maiúsculas e minúsculas. Ele deve começar com um caractere alfabético e não pode ter mais de 25 caracteres. O nome deve ser exclusivo dentro do cluster.

  4. Em Configuração de computação, insira ou selecione estes valores:

    1. EC2modelo de execução — Selecione um modelo de execução personalizado para usar nesse grupo de nós. Os modelos de execução podem ser usados para personalizar configurações de rede, como sub-rede e grupos de segurança, configuração de monitoramento e armazenamento em nível de instância. Se você não tiver um modelo de lançamento preparado, consulte Usando modelos de EC2 lançamento da Amazon com AWS PCS para saber como criar um.

      Importante

      AWS PCScria um modelo de lançamento gerenciado para cada grupo de nós de computação. Esses são nomeadospcs-identifier-do-not-delete. Não os selecione ao criar ou atualizar um grupo de nós de computação, ou o grupo de nós não funcionará corretamente.

    2. EC2versão do modelo de lançamento — Selecione uma versão do seu modelo de lançamento personalizado. Você pode escolher uma versão específica, que pode melhorar a reprodutibilidade. Se você alterar a versão posteriormente, deverá atualizar o grupo de nós de computação para detectar alterações no modelo de execução. Para obter mais informações, consulte Atualização de um grupo de nós AWS PCS de computação.

    3. AMIID — se seu modelo de lançamento não incluir um AMI ID ou se você quiser substituir o valor no modelo de lançamento, forneça um AMI ID aqui. Observe que o AMI usado para o grupo de nós deve ser compatível com AWS PCS. Você também pode selecionar uma amostra AMI fornecida por AWS. Para obter mais informações sobre esse tópico, consulteAmazon Machine Images (AMIs) para AWS PCS.

    4. IAMperfil de instância — Escolha um perfil de instância para o grupo de nós. Um perfil de instância concede à instância permissões para acessar AWS recursos e serviços com segurança. Se você não tiver um preparado, veja IAMperfis de instância para o AWS Parallel Computing Service para aprender como criar um.

    5. Sub-redes — Escolha uma ou mais sub-redes no local em VPC que seu AWS PCS cluster está implantado. Se você selecionar várias sub-redes, as EFA comunicações não estarão disponíveis entre os nós, e a comunicação entre nós em sub-redes diferentes poderá aumentar a latência. Certifique-se de que as sub-redes especificadas aqui correspondam às que você define no modelo de EC2 execução.

    6. Instâncias — escolha um ou mais tipos de instância para atender às solicitações de escalabilidade no grupo de nós. Todos os tipos de instância devem ter a mesma arquitetura de processador (x864_64 ou arm64) e número de. vCPUs Se as instâncias tiveremGPUs, todos os tipos de instância deverão ter o mesmo número deGPUs.

    7. Configuração de escalabilidade — especifique o número mínimo e máximo de instâncias para o grupo de nós. Você pode definir uma configuração estática, na qual há um número fixo de nós em execução, ou uma configuração dinâmica, na qual até a contagem máxima de nós pode ser executada. Para uma configuração estática, defina o mínimo e o máximo para o mesmo número, maior que zero. Para uma configuração dinâmica, defina o mínimo de instâncias como zero e o máximo de instâncias como um número maior que zero. AWS PCSnão oferece suporte a grupos de nós de computação com uma combinação de instâncias estáticas e dinâmicas.

  5. (Opcional) Em Configurações adicionais, especifique o seguinte:

    1. Opção de compra — selecione entre instâncias spot e sob demanda.

    2. Estratégia de alocação — se você selecionou a opção de compra spot, pode especificar como os pools de capacidade spot são escolhidos ao iniciar instâncias no grupo de nós. Para obter mais informações, consulte Estratégias de alocação para instâncias spot no Guia do usuário do Amazon Elastic Compute Cloud. Essa opção não tem efeito se você tiver selecionado a opção de compra sob demanda.

  6. (Opcional) Na seção de configurações Slurm personalizadas, forneça os seguintes valores:

    1. Peso — Esse valor define a prioridade dos nós no grupo para fins de agendamento. Os nós com pesos mais baixos têm maior prioridade e as unidades são arbitrárias. Para obter mais informações, consulte Peso na Slurm documentação.

    2. Memória real — Esse valor define o tamanho (em GB) da memória real nos nós do grupo de nós. Ele deve ser usado em conjunto com a CR_CPU_Memory opção na Slurm configuração do cluster em AWS PCS. Para obter mais informações, consulte RealMemorya Slurm documentação.

  7. (Opcional) Em Tags, adicione qualquer tag ao seu grupo de nós de computação.

  8. Escolha Criar grupo de nós de computação. O campo Status mostra Creating enquanto AWS PCS provisiona o grupo de nós. Isso pode demorar vários minutos.

Próxima etapa recomendada
  • Adicione seu grupo de nós a uma fila AWS PCS para permitir que ele processe trabalhos.

AWS CLI
Para criar seu grupo de nós de computação usando AWS CLI

Crie sua fila com o comando a seguir. Antes da execução do comando, realize as seguintes substituições:

  1. Substituir regioncom o ID do Região da AWS para criar seu cluster, comous-east-1.

  2. Substituir my-cluster com o nome ou clusterId do seu cluster.

  3. Substituir my-node-groupcom o nome do seu grupo de nós de computação. O nome só pode conter caracteres alfanuméricos (sensíveis a maiúsculas e minúsculas) e hifens. Ele deve começar com um caractere alfabético e não pode ter mais de 25 caracteres. O nome deve ser exclusivo dentro do cluster.

  4. Substituir subnet-ExampleID1 com uma ou mais sub-redes IDs do seu cluster. VPC

  5. Substituir lt-ExampleID1 com o ID do seu modelo de lançamento personalizado. Se você não tiver um preparado, veja Usando modelos de EC2 lançamento da Amazon com AWS PCS para aprender como criar um.

    Importante

    AWS PCScria um modelo de lançamento gerenciado para cada grupo de nós de computação. Esses são nomeadospcs-identifier-do-not-delete. Não os selecione ao criar ou atualizar um grupo de nós de computação, ou o grupo de nós não funcionará corretamente.

  6. Substituir launch-template-version com uma versão específica do modelo de lançamento se você quiser associar seu grupo de nós a uma versão específica.

  7. Substituir arn:InstanceProfilecom o perfil ARN da sua IAM instância. Se você não tiver um preparado, consulte Usando modelos de EC2 lançamento da Amazon com AWS PCS para obter orientação.

  8. Substituir min-instances e max-instances com valores inteiros. Você pode definir uma configuração estática, na qual há um número fixo de nós em execução, ou uma configuração dinâmica, na qual até a contagem máxima de nós pode ser executada. Para uma configuração estática, defina o mínimo e o máximo para o mesmo número, maior que zero. Para uma configuração dinâmica, defina o mínimo de instâncias como zero e o máximo de instâncias como um número maior que zero. AWS PCSnão oferece suporte a grupos de nós de computação com uma combinação de instâncias estáticas e dinâmicas.

  9. Substituir t3.large com outro tipo de instância. Você pode adicionar mais tipos de instância especificando uma lista de instanceType configurações. Por exemplo, --instance-configs instanceType=c6i.16xlarge,instanceType=c6a.16xlarge. Todos os tipos de instância devem ter a mesma arquitetura de processador (x864_64 ou arm64) e número de. vCPUs Se as instâncias tiveremGPUs, todos os tipos de instância deverão ter o mesmo número deGPUs.

aws pcs create-compute-node-group --region region \ --cluster-identifier my-cluster \ --compute-node-group-name my-node-group \ --subnet-ids subnet-ExampleID1 \ --custom-launch-template id=lt-ExampleID1,version='launch-template-version' \ --iam-instance-profile arn=arn:InstanceProfile \ --scaling-config minInstanceCount=min-instances,maxInstanceCount=max-instance \ --instance-configs instanceType=t3.large

Há várias configurações opcionais que você pode adicionar ao create-compute-node-group comando.

  • Você pode especificar --amiId se seu modelo de lançamento personalizado não inclui uma referência a um AMI ou se você deseja substituir esse valor. Observe que o AMI usado para o grupo de nós deve ser compatível com AWS PCS. Você também pode selecionar uma amostra AMI fornecida por AWS. Para obter mais informações sobre esse tópico, consulteAmazon Machine Images (AMIs) para AWS PCS.

  • Você pode selecionar entre instâncias sob demanda (ONDEMAND) e spot (SPOT) usando--purchase-option. Sob demanda é o padrão. Se você escolher instâncias spot, você também pode usar --allocation-strategy para definir como AWS PCS escolhe os pools de capacidade spot quando executa instâncias no grupo de nós. Para obter mais informações, consulte Estratégias de alocação para instâncias spot no Guia do usuário do Amazon Elastic Compute Cloud.

  • É possível fornecer opções de Slurm configuração para os nós no grupo de nós usando--slurm-configuration. Você pode definir o peso (prioridade de agendamento) e a memória real. Os nós com pesos mais baixos têm maior prioridade e as unidades são arbitrárias. Para obter mais informações, consulte Peso na Slurm documentação. A memória real define o tamanho (em GB) da memória real nos nós do grupo de nós. Ele deve ser usado em conjunto com a CR_CPU_Memory opção do cluster AWS PCS em sua Slurm configuração. Para obter mais informações, consulte RealMemorya Slurm documentação.

Importante

A criação do grupo de nós de computação pode levar vários minutos.

Você pode consultar o status do seu grupo de nós com o comando a seguir. Você não poderá associar o grupo de nós a uma fila até que seu status chegueACTIVE.

aws pcs get-compute-node-group --region region \ --cluster-identifier my-cluster \ --compute-node-group-identifier my-node-group