Uma aplicação multi-tier armazena dados temporários em objetos S3 que são válidos por 45 minutos e devem ser excluídos após 24 horas. Cada versão da aplicação é implantada via uma stack do CloudFormation e, quando uma stack mais antiga é excluída, o CloudFormation falha ao excluir um S3 bucket, fazendo com que a exclusão da stack falhe. Sem grandes mudanças arquitetônicas, como isso pode ser resolvido?
Escolha uma resposta
Toque em uma opção para verificar sua resposta.
Resposta correta: Implementar uma função Lambda que exclui todos os objetos no S3 bucket especificado. Integrar essa Lambda como um custom resource no template do CloudFormation e adicionar um DependsOn que referencia o recurso do S3 bucket..
Por que esta é a resposta
A opção correta resolve o problema de exclusão do bucket S3. O CloudFormation falha ao excluir um bucket S3 que não está vazio. A implementação de uma função Lambda como um recurso personalizado (Custom Resource) permite que o CloudFormation invoque essa função antes de tentar excluir o bucket. A Lambda pode ser programada para esvaziar o bucket, removendo todos os objetos, o que então permite que o CloudFormation exclua o bucket com sucesso. O DependsOn garante que a Lambda seja executada antes da exclusão do bucket. A opção de usar EFS não é uma solução sem grandes mudanças arquitetônicas, pois exige reconfiguração de toda a aplicação. A regra de ciclo de vida do S3 (S3 Lifecycle rule) não garante que o bucket estará vazio no momento da exclusão da stack, pois os objetos podem ter sido criados recentemente. Adicionar DeletionPolicy: Delete ao recurso do S3 bucket não resolve o problema, pois essa política apenas permite a exclusão do bucket se ele estiver vazio; ela não o esvazia.
Passe no seu exame — sem a busca interminável por respostas
Obtenha todas as perguntas e explicações verificadas para este exame em um só lugar e economize horas de preparação. Mais de 1.000 certificações · Mais de 20 idiomas · Grátis para começar.
Passe no seu exame mais rápido → Não é necessário cartão