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á.
Realizar 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. Essa estratégia de atualização leva mais tempo do que escalar as atualizações e exige configurações específicas do perfil de serviço e da estratégia de alocação. As atualizações de infraestrutura fornecem uma maneira de modificar as configurações fundamentais do ambiente computacional e, ao mesmo tempo, manter a disponibilidade do serviço.
Importante
As atualizações de infraestrutura exigem 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. Se seu ambiente não atender a esses requisitos, use atualizações azul/verde.
Mudanças que acionam atualizações de infraestrutura
Quando você modifica qualquer uma das configurações a seguir, AWS Batch realiza uma atualização de infraestrutura. As atualizações de infraestrutura também ocorrem quando você modifica essas configurações junto com as configurações de atualização de escala.
As configurações a seguir acionam atualizações de infraestrutura:
Configuração de computação
-
allocationStrategy— Determina como AWS Batch seleciona os tipos de instância. -
instanceTypes— Especifica quais tipos de instância do EC2 usar. -
bidPercentage— Porcentagem máxima do preço sob demanda para instâncias spot. -
type— Tipo de ambiente computacional (EC2ouSPOT).
Configuração da AMI e lançamento
-
imageId— AMI específica para usar em instâncias. -
ec2Configuration— Configuração do EC2, incluindoimageIdOverride. -
launchTemplate— Configurações do modelo de execução do EC2. -
ec2KeyPair— Par de chaves SSH para acesso a instância. -
updateToLatestImageVersion— Configuração de atualizações automáticas da AMI.
Redes e segurança
-
subnets— sub-redes VPC em que as instâncias são lançadas (para ambientes computacionais EC2). -
securityGroupIds— Grupos de segurança para instâncias (para ambientes computacionais EC2). -
placementGroup— Configuração do grupo de posicionamento do EC2.
Outras configurações
-
instanceRole— Perfil do IAM para instâncias do EC2. -
tags— Tags aplicadas a instâncias do EC2.
Importante
Se você modificar qualquer configuração de atualização de infraestrutura junto com as configurações de atualização de escalabilidade (como desiredvCpus, maxvCpus ou minvCpus), AWS Batch executará uma atualização de infraestrutura. Atualizações de infraestrutura levam mais tempo do que atualizações de escalabilidade.
Seleção da AMI durante atualizações de infraestrutura
Durante uma atualização de infraestrutura, o ID da AMI do ambiente de computação pode mudar, dependendo se as AMIs estão especificadas em qualquer uma dessas três configurações. As AMIs são especificadas em imageId (em computeResources), imageIdOverride (em ec2Configuration) ou no modelo de lançamento especificado em launchTemplate. Suponha que nenhuma ID de AMI seja especificada em nenhuma dessas configurações e a configuração updateToLatestImageVersion seja true. Em seguida, a AMI mais recente otimizada para o Amazon ECS e compatível com AWS Batch é usada para qualquer atualização da infraestrutura.
Se uma ID de AMI for especificada em pelo menos uma dessas configurações, a atualização dependerá de qual configuração forneceu a ID de AMI usada antes da atualização. Quando você cria um ambiente de computação, a prioridade para selecionar uma ID de AMI é primeiro o modelo de execução, depois a configuração imageId e, finalmente, a configuração imageIdOverride. No entanto, se a ID da AMI usado for do modelo de execução, a atualização das configurações imageIdOverride ou imageId não a atualizará. A única maneira de atualizar uma ID de AMI selecionada no modelo de execução é atualizando o modelo de execução. Se o parâmetro de versão do modelo de execução for $Default ou $Latest, a versão padrão ou mais recente do modelo de execução especificado será avaliada. Se uma ID de AMI diferente for selecionada por padrão ou se a versão mais recente do modelo de execução for selecionada, essa ID de AMI será usada na atualização.
Se o modelo de execução não foi usado para selecionar a ID da AMI, a ID da AMI especificada nos parâmetros imageId ou imageIdOverride será usada. Se ambos forem especificados, a ID da AMI especificada no parâmetro imageIdOverride será usada.
Suponha que o ambiente de computação use uma ID de AMI especificada pelos parâmetros imageId, imageIdOverride, ou launchTemplate e você queira usar a AMI otimizada mais recente do Amazon ECS compatível com AWS Batch. Em seguida, a atualização deve remover as configurações que forneceram os IDs de AMI. Para imageId, isso requer a especificação de uma string vazia para esse parâmetro. Para imageIdOverride, isso requer a especificação de uma string vazia para o parâmetro ec2Configuration.
Se a ID da AMI veio do modelo de lançamento, você pode mudar para a AMI otimizada mais recente do Amazon ECS que é suportada AWS Batch por uma das seguintes formas:
-
Remova o modelo de execução especificando uma string vazia para o parâmetro
launchTemplateIdoulaunchTemplateName. Isso remove todo o modelo de lançamento, em vez de apenas a ID da AMI. -
Se a versão atualizada do modelo de lançamento não especificar uma ID de AMI, o parâmetro
updateToLatestImageVersiondeverá ser definido comotrue.
Manuseio de trabalhos durante atualizações
Configure como os trabalhos em execução são tratados durante uma atualização de infraestrutura usando a política de atualização. Quando você define terminateJobsOnUpdate=true, os trabalhos em execução são encerrados imediatamente, a configuração jobExecutionTimeoutMinutes é ignorada e a atualização prossegue assim que as instâncias podem ser substituídas. Quando você define terminateJobsOnUpdate=false, os trabalhos em execução continuam pelo período de tempo limite especificado com um tempo limite padrão de 30 minutos, e os trabalhos são encerrados se excederem o tempo limite.
nota
Para repetir trabalhos que são encerrados durante uma atualização, configure uma estratégia de repetição do trabalho. Para obter mais informações, consulte Repetições de trabalho automatizadas.
Monitorando as atualizações da infraestrutura
Monitore suas atualizações de infraestrutura usando o console AWS Batch para observar a alteração do status do ambiente computacional para UPDATING, monitorar o progresso da substituição da instância e verificar se há falhas nas atualizações. A atualização é bem-sucedida quando o estado do ambiente computacional é VAILD. Você também pode usar o CloudWatch para rastrear eventos de encerramento de instâncias e monitorar os estados do trabalho durante a atualização. Com o AWS CLI, use o comando describe-compute-environments para verificar o status e monitorar os eventos do ciclo de vida da instância.