MédiaMúltipla escolha

Questão de prática de CLF-C02

Uma empresa gerencia uma aplicação web que consiste em instâncias do Amazon EC2, um banco de dados do Amazon RDS e um bucket do Amazon S3. A equipe implanta a aplicação em ambientes separados de desenvolvimento, teste e produção. Atualmente, a equipe configura manualmente cada ambiente, o que levou a desvios de configuração e erros de implantação. A empresa deseja definir toda a infraestrutura como código, armazenar a definição em um sistema de controle de versão e implantá-la de forma consistente em todos os ambientes com um único modelo. Qual serviço da AWS a empresa deve usar para atender a esses requisitos?

Escolha a melhor resposta.

Resposta correta

  • AAWS CloudFormation

Explicação

O AWS CloudFormation é a escolha correta porque permite definir toda a sua infraestrutura — incluindo instâncias do EC2, bancos de dados do RDS e buckets do S3 — como código em um modelo JSON ou YAML. Esse modelo pode ser armazenado em um sistema de controle de versão e implantado de forma consistente em ambientes de desenvolvimento, teste e produção usando um único modelo, eliminando o desvio de configuração e os erros manuais.

Por que cada alternativa está certa ou errada

A

Correta

AWS CloudFormation

O AWS CloudFormation é a resposta correta porque é o serviço nativo de Infraestrutura como Código (IaC) na AWS. Ele permite definir toda a sua pilha — instâncias do EC2, VPCs, bancos de dados do RDS, buckets do S3, funções do IAM e qualquer outra coisa — em um modelo declarativo JSON ou YAML. O CloudFormation então provisiona e atualiza esses recursos de maneira controlada e repetível, rastreando-os como uma única pilha e revertendo as alterações em caso de falha. Isso o torna a ferramenta dedicada para tratar a infraestrutura como código, garantindo ambientes consistentes entre desenvolvimento, teste e produção, e permitindo o controle de versão de suas definições de infraestrutura.

B

Incorreta

AWS Elastic Beanstalk

Incorreto. O AWS Elastic Beanstalk é uma Plataforma como Serviço (PaaS) que automatiza a implantação e o dimensionamento de aplicações, mas gerencia a infraestrutura subjacente para você. Ele não fornece a abordagem granular de modelo de infraestrutura como código que permite definir recursos arbitrários da AWS, como buckets do S3 ou bancos de dados do RDS, em um único modelo.

C

Incorreta

AWS OpsWorks

O AWS OpsWorks fornecia Chef e Puppet gerenciados para configurar servidores e aplicações, sendo uma ferramenta de gerenciamento de configuração em vez de uma forma de definir toda a infraestrutura, como bancos de dados do RDS e buckets do S3, em um único modelo. A AWS também encerrou o OpsWorks. Para declarar toda a pilha como código, mantida em controle de versão e implantada de forma idêntica em cada ambiente, o CloudFormation é o serviço nativo.

D

Incorreta

AWS CodeDeploy

O AWS CodeDeploy automatiza a implantação de código de aplicação em instâncias do EC2, servidores locais, funções do Lambda ou serviços do ECS que já existem. Ele não cria instâncias do EC2, bancos de dados do RDS ou buckets do S3, portanto, não pode remover o desvio de configuração na própria infraestrutura. Ele geralmente funciona junto com o CloudFormation, que provisiona o ambiente, enquanto o CodeDeploy envia novas versões de aplicações para ele.

Para se aprofundar

O AWS CloudFormation é o serviço nativo de infraestrutura como código (IaC) da AWS. Você descreve recursos, como instâncias do EC2, bancos de dados do RDS, buckets do S3, grupos de segurança e funções do IAM, em um modelo JSON or YAML, e o CloudFormation os cria, atualiza e exclui juntos como uma pilha (stack), calculando a ordem correta a partir das dependências. Um modelo pode ser usado para desenvolvimento, teste e produção adicionando parâmetros, por exemplo, o tamanho da instância ou o nome do ambiente, e mapeamentos ou condições para valores que diferem. Como o modelo é um arquivo de texto, ele fica no Git como o código da aplicação, de modo que cada alteração é revisada e versionada. Os conjuntos de alterações (change sets) pré-visualizam o que uma atualização fará antes de ser executada, a detecção de desvios (drift detection) relata recursos alterados manualmente fora do CloudFormation, que é exatamente o problema descrito, e uma atualização com falha é revertida automaticamente. O StackSets implanta o mesmo modelo em várias contas e regiões. O AWS CDK permite que os desenvolvedores escrevam CloudFormation em linguagens de programação como Python ou TypeScript. Os distratores resolvem problemas diferentes. O AWS Elastic Beanstalk implanta e executa aplicações web em uma plataforma gerenciada, criando parte da infraestrutura para você, mas não é uma maneira geral de definir toda a infraestrutura como código. O AWS OpsWorks fornecia Chef e Puppet gerenciados para gerenciamento de configuração e atingiu o fim da vida útil. O AWS CodeDeploy automatiza a implantação de código de aplicação em EC2, Lambda, ECS ou servidores locais; ele não cria infraestrutura. No exame Cloud Practitioner, termos como 'infraestrutura como código', 'modelos', 'ambientes repetíveis' ou 'provisionar recursos de forma consistente' apontam para o CloudFormation.

Sobre estas questões de prática

Esta é uma das questões de prática originais de CLF-C02 da Courseiva, escrita para o aprendizado e nunca copiada de provas reais nem de dumps.

Traduzida do original em inglês com IA e conferida quanto ao sentido. Códigos de exame, comandos e nomes de produtos são mantidos como aparecem na prova.