Qu'est-ce que AWS CloudFormation ? - AWS CloudFormation

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Qu'est-ce que AWS CloudFormation ?

AWS CloudFormation est un service qui vous permet de modéliser et de configurer vos ressources AWS de sorte que vous puissiez passer moins de temps à gérer ces ressources et consacrer plus de temps à vos applications exécutées dans AWS. Vous créez un modèle qui décrit toutes les ressources AWS que vous voulez (telles que des instances Amazon EC2 ou des instances de base de données Amazon RDS), et CloudFormation s'occupe de leur allocation et de leur configuration. Vous n'avez pas besoin de créer et de configurer individuellement les ressources AWS ni de déterminer leurs dépendances. CloudFormation se charge de tout. Les scénarios suivants montrent comment CloudFormation peut vous aider.

Simplification de la gestion de l'infrastructure

Pour une application web évolutive qui inclut également une base de données dorsale, vous pouvez utiliser un groupe Auto Scaling, un équilibreur de charge Elastic Load Balancing et une instance de base de données Amazon Relational Database Service. Vous pouvez utiliser chaque service pour configurer ces ressources et une fois que vous créez les ressources, vous devez les configurer afin qu'elles interagissent. Toutes ces tâches peuvent générer des difficultés et vous faire perdre beaucoup de temps avant même que votre application ne soit opérationnelle.

Au lieu de cela, vous pouvez créer un modèle CloudFormation ou en modifier un existant. Un modèle décrit l'ensemble de vos ressources et leurs propriétés. Lorsque vous utilisez ce modèle pour créer une pile CloudFormation, CloudFormation fournit le groupe Auto Scaling, l'équilibreur de charge et la base de données pour vous. Une fois que la pile est créée avec succès, vos ressources AWS sont opérationnelles. Vous pouvez supprimer la pile tout aussi facilement, ce qui supprime toutes les ressources qu'elle contient. Avec CloudFormation, vous gérez facilement un ensemble de ressources comme une seule unité.

Réplication rapide de votre infrastructure

Si votre application nécessite une plus grande disponibilité, vous pouvez la répliquer dans plusieurs régions. Dès lors, si une région devient indisponible, vos utilisateurs peuvent continuer à utiliser votre application dans d'autres régions. La difficulté que présente la réplication de votre application est que vous devez également répliquer les ressources. Non seulement vous devez enregistrer toutes les ressources dont votre application a besoin, mais vous devez également mettre en service et configurer ces ressources dans chaque région.

Réutilisez votre modèle CloudFormation pour créer vos ressources de manière cohérente et réutilisable. Pour réutiliser votre modèle, il vous suffit de décrire les ressources une seule fois, puis de les mettre en service autant de fois que vous le souhaitez dans plusieurs régions.

Contrôle et suivi faciles des modifications apportées à votre infrastructure

Dans certains cas, vous pouvez avoir besoin de mettre à jour des ressources sous-jacentes façon incrémentielle. Par exemple, vous pouvez passer à un type d'instance plus performant dans votre configuration de lancement Auto Scaling afin de réduire le nombre maximal d'instances dans votre groupe Auto Scaling. Si des problèmes surviennent une fois que vous avez terminé la mise à jour, il est parfois nécessaire de rétablir les paramètres d'origine de votre infrastructure. Pour effectuer cela manuellement, vous devez non seulement vous rappeler quelles ressources ont changé, vous devez également vous souvenir des paramètres d'origine.

Lorsque vous mettez en service votre infrastructure via CloudFormation, le modèle CloudFormation décrit exactement quelles ressources sont mises en service, ainsi que leurs paramètres. Etant donné que ces modèles sont des fichiers de texte, il vous suffit d'analyser les différences entre les modèles pour suivre es modifications apportées à votre infrastructure, tout comme les développeurs contrôlent les révisions apportées au code source. Par exemple, vous pouvez utiliser un système de contrôle de versions avec vos modèles afin de déterminer exactement quelles modifications ont eu lieu, qui les a effectuées et quand. Si, à un moment ou un autre, vous avez besoin d'annuler les modifications apportées à votre infrastructure, vous pouvez utiliser une version précédente de votre modèle.