Tenho 6 ambientes Elastic Beanstalk Python 3.7 executando o mesmo aplicativo. Ao longo do fim de semana, 5 deles foram atualizados automaticamente e com sucesso para a atualização mais recente da plataforma:
Atualização da plataforma do Amazon Linux 2 de 64 bits executando Python 3.7 3.3.4 para Amazon Linux 2 de 64 bits executando Python 3.7 3.3.5
A atualização automática tem funcionado com sucesso durante todo o ano, mas, hoje, recusa-se firmemente a atualizar e apenas relata:
FAILED - RollbackSuccessful Anulação bem-sucedida da ação gerenciada.
Parece que a nova instância foi implantada com êxito e as instâncias novas e antigas chegam a um ponto em que dizem OK
No entanto, em vez de a instância antiga ser encerrada, após alguns minutos, a nova instância reporta repentinamente:
Versão incorreta do aplicativo "app-bd432-13735_111407" (implantação 280). Versão esperada "app-bd432-13735_111407" (implantação 277).
e a atualização é revertida.
Até agora eu tentei:
- Apenas tentando atualizar novamente
- Reimplantar a versão mais recente do aplicativo e tentar atualizar novamente
- Executando
Rebuild environment
antes de tentar a atualização
Mas o resultado é o mesmo. Não consigo ver nenhuma indicação nos logs de nenhuma instância (antiga, sobrevivente ou nova, com falha) que ofereça qualquer ajuda, mas ficarei feliz em adicionar informações de log se alguém puder sugerir um log específico para extrair.
Responder1
Parece que uma configuração de parâmetro estava incorreta. Eu estava tentando fazer com que o AutoUpdate da versão da plataforma fosse executado e isso estava falhando silenciosamente, mas quando tentei aplicar manualmente uma versão diferente da plataforma, recebi a seguinte mensagem:
Exceção de validação de configuração: valor de opção inválido: '100' (Namespace:'aws:autoscaling:lanunchconfiguration', OptionName:'RootVolumeIOPS'): '100' não é um IOPS de volume válido. Deve estar entre 3.000 e 16.000.
A atualização deste parâmetro permitiu que a atualização da plataforma fosse concluída com sucesso. O parâmetro não foi alterado por vários meses, então só posso assumir que ele foi permitido/ignorado em versões anteriores da plataforma, mas aplicado com mais rigor na 3.3.5.