View a markdown version of this page

Execute scripts personalizados com ações do ciclo de vida do nó no AWS PEÇAS - AWS PEÇAS

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á.

Execute scripts personalizados com ações do ciclo de vida do nó no AWS PEÇAS

As ações do ciclo de vida do nó executam scripts personalizados em pontos definidos no ciclo de vida de um nó de computação. Use-os para montar sistemas de arquivos, ingressar em serviços de diretório, instalar software ou configurar o monitoramento. Você define scripts na configuração do grupo de nós de computação e os reutiliza em grupos e clusters de nós de computação.

Uma ação do ciclo de vida do nó é um script que o AWS PCS executa automaticamente em um ponto específico do ciclo de vida de um nó de computação. Você define scripts na configuração do seu grupo de nós de computação: onde cada script reside (Amazon S3 ou HTTPS), quais argumentos devem ser transmitidos, o estágio em que ele é executado, quando é executado novamente na reinicialização e o que fazer em caso de falha. AWS O PCS recupera o script, o armazena em cache na instância, o executa como root e grava sua saída em um arquivo de log dedicado.

As ações do ciclo de vida dos nós fornecem:

  • Reutilização — Faça referência ao mesmo script de vários grupos de nós de computação com argumentos diferentes.

  • Per-script tratamento de erros — Encerre o nó, interrompa a sequência ou continue em caso de falha.

  • API-native configuração — defina e atualize as ações do ciclo de vida por meio de. UpdateComputeNodeGroup As alterações de configuração drenam e substituem os nós existentes. Para obter mais informações, consulte Configure as ações do ciclo de vida do nó no AWS PEÇAS.

Estágios do ciclo de vida

AWS Atualmente, o PCS suporta dois estágios. Em cada estágio, os scripts são executados na ordem em que você os define. Por padrão, um script é executado somente na primeira inicialização; defina-o como executionPolicy EVERY_BOOT para também executá-lo novamente na reinicialização. Para obter mais informações, consulte Configure as ações do ciclo de vida do nó no AWS PEÇAS.

Estágio

Quando funciona

Serviços disponíveis

Uso típico

Node inicializado () nodeBootstrapped

É executado após o AWS PCS concluir a configuração do nó e antes de slurmd iniciar.

A rede e o Amazon S3 estão ativos, e SSH, SSM, NTP (chrony) e cron estão ativos para depuração. AWS PCS-managed a configuração está concluída (o Slurm está configurado, Hyper-Threading desativado), para que você possa confiar nele. Os comandos do cliente Slurm ainda não estão disponíveis.

Tarefas que devem ser concluídas antes que o nó aceite trabalhos, como montar armazenamento compartilhado, configurar redes ou instalar pacotes de software.

Node pronto (nodeReady)

É executado após slurmd a inicialização e o nó se registra no controlador Slurm.

Tudo no nodeBootstrapped palco, além dos comandos do cliente Slurm (sinfo,scontrol).

Tarefas que exigem que o Slurm esteja em execução.

NodeReady e a janela de despacho de tarefas

nodeReadyos scripts são executados após slurmd a inicialização, portanto, há uma breve janela na qual o agendador pode enviar um trabalho para o nó antes que seus nodeReady scripts terminem. Se um script precisar ser concluído antes da execução de qualquer trabalho:

  • Mova-o para o nodeBootstrapped palco, se não precisar dos comandos do Slurm.

  • Use um prólogo do Slurm.

Como a execução funciona

No primeiro lançamento:

  1. O nó é inicializado e o agente AWS PCS ligaRegisterComputeNodeGroupInstance.

  2. O agente armazena em cache a configuração do ciclo de vida e baixa os scripts.

  3. A fase de configuração do AWS PCS é executada (o Slurm está configurado, Hyper-Threading está desativado e assim por diante).

  4. Os scripts bootstrapped do Node são executados na ordem em que você os definiu.

  5. slurmdinicia e o nó se registra no controlador Slurm. Nesse ponto, o nó está disponível para aceitar trabalhos.

  6. Os scripts prontos para o Node são executados na ordem em que você os definiu. Esses scripts são executados depois que o nó está disponível para aceitar trabalhos, portanto, o agendador pode despachar um trabalho antes que eles terminem (consulteEstágios do ciclo de vida).

Na reinicialização, a mesma nodeReady sequência nodeBootstrappedslurmd → é executada. Somente scripts marcados como EVERY_BOOT reexecutados. Os scripts definidos como FIRST_BOOT_ONLY (o padrão) são ignorados. scriptCachingPolicyControla se os scripts são baixados novamente. Para obter mais informações, consulte Configure as ações do ciclo de vida do nó no AWS PEÇAS.

Para saber os limites do número de scripts por estágio, do tamanho do argumento e do nome do script e do tamanho máximo do script, consulte UpdateComputeNodeGroup a Referência da API AWS PCS.