MoyenneChoix unique

Question d'entraînement CLF-C02

Une entreprise gère une application web composée d'instances Amazon EC2, d'une base de données Amazon RDS et d'un compartiment Amazon S3. L'équipe déploie l'application dans des environnements de développement, de test et de production séparés. Actuellement, l'équipe configure manuellement chaque environnement, ce qui a entraîné des dérives de configuration et des erreurs de déploiement. L'entreprise souhaite définir l'ensemble de l'infrastructure sous forme de code, stocker la définition dans un système de contrôle de version et la déployer de manière cohérente dans tous les environnements avec un seul modèle. Quel service AWS l'entreprise doit-elle utiliser pour répondre à ces exigences ?

Choisissez la meilleure réponse.

Bonne réponse

  • AAWS CloudFormation

Explication

AWS CloudFormation est le bon choix car il vous permet de définir l'ensemble de votre infrastructure — y compris les instances EC2, les bases de données RDS et les compartiments S3 — sous forme de code dans un modèle JSON ou YAML. Ce modèle peut être stocké dans un système de contrôle de version et déployé de manière cohérente dans les environnements de développement, de test et de production à l'aide d'un seul modèle, éliminant ainsi la dérive de configuration et les erreurs manuelles.

Pourquoi chaque option est juste ou fausse

A

Juste

AWS CloudFormation

AWS CloudFormation est la bonne réponse car c'est le service natif d'Infrastructure as Code (IaC) sur AWS. Il vous permet de définir l'ensemble de votre pile — instances EC2, VPC, bases de données RDS, compartiments S3, rôles IAM et tout le reste — dans un modèle JSON ou YAML déclaratif. CloudFormation provisionne et met ensuite à jour ces ressources de manière contrôlée et répétable, les suivant comme une seule pile et annulant les modifications en cas d'échec. Cela en fait l'outil dédié pour traiter l'infrastructure comme du code, garantissant des environnements cohérents entre le développement, le test et la production, et permettant le contrôle de version de vos définitions d'infrastructure.

B

Fausse

AWS Elastic Beanstalk

Incorrect. AWS Elastic Beanstalk est une plateforme en tant que service (PaaS) qui automatise le déploiement et la mise à l'échelle des applications, mais elle gère l'infrastructure sous-jacente pour vous. Elle ne fournit pas l'approche granulaire de modèle d'infrastructure en tant que code qui permet de définir des ressources AWS arbitraires telles que des compartiments S3 ou des bases de données RDS dans un seul modèle.

C

Fausse

AWS OpsWorks

AWS OpsWorks fournissait Chef et Puppet gérés pour configurer les serveurs et les applications, un outil de gestion de configuration plutôt qu'un moyen de définir toute l'infrastructure, telle que les bases de données RDS et les compartiments S3, dans un seul modèle. AWS a également retiré OpsWorks. Pour déclarer toute la pile comme du code, conservée dans le contrôle de version et déployée de manière identique dans chaque environnement, CloudFormation est le service natif.

D

Fausse

AWS CodeDeploy

AWS CodeDeploy automatise le déploiement de code d'application sur des instances EC2, des serveurs sur site, des fonctions Lambda ou des services ECS qui existent déjà. Il ne crée pas d'instances EC2, de bases de données RDS ou de compartiments S3, il ne peut donc pas supprimer la dérive de configuration dans l'infrastructure elle-même. Il fonctionne souvent aux côtés de CloudFormation, qui provisionne l'environnement, tandis que CodeDeploy y pousse de nouvelles versions d'application.

Pour aller plus loin

AWS CloudFormation est le service natif d'infrastructure as code (IaC) d'AWS. Vous décrivez des ressources, telles que des instances EC2, des bases de données RDS, des compartiments S3, des groupes de sécurité et des rôles IAM, dans un modèle JSON ou YAML, et CloudFormation les crée, met à jour et supprime ensemble sous forme de pile (stack), en déterminant le bon ordre à partir des dépendances. Un modèle peut être utilisé pour le développement, le test et la production en ajoutant des paramètres, par exemple la taille d'instance ou le nom d'environnement, ainsi que des mappages ou des conditions pour les valeurs qui diffèrent. Étant donné que le modèle est un fichier texte, il réside dans Git comme le code d'application, de sorte que chaque modification est examinée et versionnée. Les jeux de modifications (change sets) prévisualisent ce qu'une mise à jour fera avant son exécution, la détection de dérive (drift detection) signale les ressources modifiées manuellement en dehors de CloudFormation, ce qui correspond exactement au problème décrit, et une mise à jour échouée est annulée automatiquement. StackSets déploie le même modèle sur plusieurs comptes et régions. L'AWS CDK permet aux développeurs d'écrire CloudFormation dans des langages de programmation tels que Python ou TypeScript. Les distracteurs résolvent différents problèmes. AWS Elastic Beanstalk déploie et exécute des applications web sur une plateforme gérée, créant une partie de l'infrastructure pour vous, mais ce n'est pas un moyen général de définir toute l'infrastructure sous forme de code. AWS OpsWorks fournissait Chef et Puppet gérés pour la gestion de configuration et a atteint sa fin de vie. AWS CodeDeploy automatise le déploiement de code d'application sur EC2, Lambda, ECS ou des serveurs sur site ; il ne crée pas d'infrastructure. À l'examen Cloud Practitioner, des termes tels que 'infrastructure as code', 'modèles', 'environnements répétables' ou 'provisionner des ressources de manière cohérente' désignent CloudFormation.

À propos de ces questions d'entraînement

Cette question fait partie des questions d'entraînement CLF-C02 originales de Courseiva, rédigées pour apprendre et jamais copiées d'examens réels ou de dumps.

Traduite de l'original anglais avec l'IA et vérifiée pour le sens. Les codes d'examen, les commandes et les noms de produits sont conservés tels qu'ils apparaissent à l'examen.