Atualizar um ambiente computacional no AWS Batch - AWS Batch

Atualizar um ambiente computacional no AWS Batch

O AWS Batch fornece várias estratégias para atualizar ambientes computacionais, cada uma projetada para cenários e requisitos específicos de atualização. Essas abordagens usam a mesma API de atualização subjacente, mas representam métodos prescritivos diferentes para gerenciar atualizações de forma eficaz. Você pode gerenciar essas atualizações usando o console AWS Batch ou o AWS CLI. A compreensão dessas estratégias ajuda você a escolher o método mais adequado às suas necessidades e, ao mesmo tempo, minimizar a interrupção de seus workloads.

Este tópico dá uma visão geral das estratégias de atualização disponíveis e dá orientações sobre quando cada abordagem deve ser usada. Para obter procedimentos detalhados, consulte as seções individuais de cada estratégia de atualização.

Importante

O AWS Batch cria e gerencia vários recursos AWS em seu nome e dentro da sua conta, incluindo Amazon EC2 Launch Templates, Amazon EC2 Auto Scaling Groups, Amazon EC2 Frotas Spot e Amazon ECS Clusters. Esses recursos gerenciados são configurados especificamente para garantir a operação ideal do AWS Batch. A modificação manual desses recursos gerenciados pela AWS Batch, a menos que seja explicitamente declarada na documentação AWS Batch, pode resultar em comportamento inesperado, incluindo ambientes computacionais INVALID, comportamento de escalabilidade de instâncias abaixo do ideal, atraso no processamento da workload ou custos inesperados. Essas modificações manuais não podem ser sustentadas de forma determinística pelo serviço AWS Batch. Sempre use as APIs AWS Batch compatíveis ou o console AWS Batch para gerenciar seus ambientes computacionais.

Estratégias de atualização do ambiente computacional

Quando você usa atualizações de escalabilidade ou infraestrutura, seu ambiente computacional é atualizado no local. Para a estratégia de atualização azul/verde, você está criando um novo ambiente computacional (verde) e, em seguida, migrando seu workload do ambiente computacional antigo (azul) para o novo ambiente computacional (verde).

AWS Batch fornece três estratégias diferentes para atualizações do ambiente computacional:

Atualizações de escalabilidade

As atualizações de escalabilidade ajustam a capacidade do seu ambiente computacional adicionando ou removendo instâncias sem substituir as existentes. Esse é o cenário de atualização mais rápido e não requer tempo de inatividade. Use atualizações de escalabilidade quando precisar alterar as configurações de capacidade (vCPUs). Essas atualizações geralmente são concluídas em minutos.

As atualizações Fargate são realizadas usando os mesmos procedimentos das atualizações de escalabilidade. Para obter mais informações, consulte Executar atualizações de escalabilidade.

Atualizações da infraestrutura

As atualizações de infraestrutura substituem as instâncias em seu ambiente computacional por novas instâncias com configurações atualizadas. Essas atualizações exigem configurações específicas de perfil de serviço e estratégia de alocação, mas oferecem um tempo de inatividade mínimo, com a possibilidade de interrupção dos trabalhos em execução. Use atualizações de infraestrutura quando precisar modificar tipos de instância, configuração de AMI, configurações de rede, perfil de serviço, estado do ambiente ou outros componentes da infraestrutura. Essas atualizações geralmente são concluídas em 10 a 30 minutos, dependendo da conclusão do trabalho.

Para obter mais informações, consulte Realizar atualizações da infraestrutura.

Atualizações azul/verdes

As atualizações azul/verde criam um novo ambiente computacional junto com o ambiente existente, permitindo uma transição gradual do workload sem tempo de inatividade. Essa abordagem fornece o caminho de atualização mais seguro, mas exige a execução temporária de dois ambientes. Use atualizações azul/verdes quando precisar de tempo de inatividade zero, quiser testar as alterações antes da implantação completa, precisar de capacidade de reversão rápida ou estiver usando configurações não compatíveis com atualizações de infraestrutura. O tempo de conclusão é variável e controlado por você.

Para obter mais informações, consulte Realizar atualizações em azul/verde para ambientes computacionais.

Escolhendo a estratégia de atualização correta

Use este guia de decisão para selecionar a estratégia de atualização mais adequada às suas necessidades:

Escolha atualizações de escalabilidade quando

Escolha a estratégia de atualização de escalabilidade quando precisar apenas ajustar a capacidade computacional (vCPUs). As atualizações de escalabilidade são ideais quando você precisa de atualizações rápidas, sem tempo de inatividade e sem necessidade de alterações na configuração da infraestrutura.

Para ver os procedimentos detalhados, consulte Executar atualizações de escalabilidade.

Escolha atualizações de infraestrutura quando

Escolha a estratégia de atualização da infraestrutura quando precisar modificar tipos de instância, configurações de AMI, perfil de serviço, estado do ambiente ou configuração de rede. Seu ambiente deve usar o perfil vinculado ao serviço AWSServiceRoleForBatch e uma estratégia de alocação de BEST_FIT_PROGRESSIVE, SPOT_CAPACITY_OPTIMIZED ou SPOT_PRICE_CAPACITY_OPTIMIZED. As atualizações de infraestrutura funcionam bem quando alguma interrupção do trabalho é aceitável durante a atualização e você deseja atualizações automáticas para a AMI mais recente otimizada para Amazon ECS.

Para ver os procedimentos detalhados, consulte Realizar atualizações da infraestrutura.

Escolha atualizações azuis/verdes quando

Escolha a estratégia de atualização azul/verde quando for necessário tempo de inatividade zero para seus workloads ou quando você precisar testar as alterações antes de fazer a transição dos workloads de produção. Essa abordagem é essencial quando a capacidade de reversão rápida é importante, seu ambiente usa a estratégia de alocação BEST_FIT ou seu ambiente não usa o perfil vinculado ao serviço AWSServiceRoleForBatch. As atualizações azul/verde também são a melhor opção quando você usa AMIs personalizadas que exigem atualizações manuais ou precisam fazer grandes alterações na configuração.

Para ver os procedimentos detalhados, consulte Realizar atualizações em azul/verde para ambientes computacionais.

Considerações sobre a atualização AMI

AWS Batch pode atualizar para a AMI otimizada para Amazon ECS mais recente durante as atualizações de infraestrutura quando todas essas condições forem atendidas:

nota

Após a conclusão da atualização da infraestrutura, updateToLatestImageVersion é definido como false. Para iniciar outra atualização, updateToLatestImageVersion deve ser definido como true.

  • O ambiente computacional usa o perfil vinculado ao serviço AWSServiceRoleForBatch

  • A estratégia de alocação está definida como BEST_FIT_PROGRESSIVE, SPOT_CAPACITY_OPTIMIZED ou SPOT_PRICE_CAPACITY_OPTIMIZED

  • Nenhum ID AMI está explicitamente especificado em imageId, imageIdOverride ou no modelo de lançamento

  • updateToLatestImageVersion é definido como true

Atualizações AMI usando implantações azul/verde

Você deve usar a implantação azul/verde para atualizar as AMIs nesses cenários:

  • Ao usar uma versão específica da AMI otimizada para Amazon ECS

  • Quando o ID AMI é especificado em qualquer um dos seguintes:

    • Modelo de execução (é necessário atualizar o modelo ou removê-lo)

    • O parâmetro imageId

    • O parâmetro imageIdOverride na configuração EC2

  • Ao usar a estratégia de alocação BEST_FIT (não suporta atualizações de infraestrutura)

  • Quando não estiver usando o perfil vinculado ao serviço AWSServiceRoleForBatch.