Q : Qu'est-ce qu'AWS CloudFormation ?

AWS CloudFormation est un service qui donne aux développeurs et aux entreprises l'opportunité de créer facilement une collection de ressources AWS liées et de les mettre en service de manière ordonnée et prévisible.

Q : Quelles sont les nouvelles fonctionnalités AWS CloudFormation dont peuvent bénéficier les développeurs ?

AWS CloudFormation automatise et simplifie les tâches répétitives et prévisibles nécessaires à la création de groupes de ressources liées, destinées à soutenir vos applications. Créer et interconnecter toutes les ressources nécessaires à votre application est maintenant aussi simple que de créer une seule instance EC2 ou RDS.

Découvrez gratuitement AWS

Créez un compte gratuit
Vous pouvez également vous connecter à la console

Le niveau gratuit d'AWS inclut 750 heures d'exécution d'un nœud de cache Micro avec Amazon ElastiCache.

Voir les détails relatifs au niveau gratuit d'AWS »

Q : En quoi AWS CloudFormation diffère-t-il d'AWS Elastic Beanstalk ?

Ces deux services sont complémentaires. AWS Elastic Beanstalk fournit un environnement qui permet de déployer et d'exécuter facilement des applications dans le cloud. Il est intégré aux outils dont disposent les développeurs et fournit une solution "tout en un" pour gérer le cycle de vie de vos applications. AWS CloudFormation est un mécanisme de mise en service pratique pour une grande variété de ressources AWS. Il prend en charge les besoins d'infrastructure de beaucoup de types différents d'applications, telles que les applications d'entreprises existantes, les applications héritées, les applications construites en utilisant une variété de ressources AWS et les solutions basées sur les containers (y compris celles utilisant AWS Elastic Beanstalk).

AWS CloudFormation prend en charge les environnements de l'application Elastic Beanstalk en tant que l'un des types de ressource AWS. Cela vous permet, par exemple, de créer et de gérer une application hébergée sur AWS Elastic Beanstalk avec une base de données RDS pour stocker les données d'application. Outre les instances RDS, toutes les autres ressources prises en charge par AWS peuvent être ajoutées à un groupe.

Q : Quels sont les nouveaux concepts introduits par AWS CloudFormation ?

AWS CloudFormation introduit deux nouveaux concepts : celui de template, un fichier texte au format JSON ou YAML qui décrit toutes les ressources AWS dont vous avez besoin pour déployer et exécuter votre application, et celui de stack, l'ensemble de ressources AWS créées et gérées comme une seule unité lorsqu'un template est instancié par AWS CloudFormation.

Q : Comment démarrer avec AWS CloudFormation ?

Vous pouvez accéder facilement à AWS CloudFormation via AWS Management Console, une interface Web de type pointer-cliquer permettant de déployer et de gérer les piles applicatives. Vous pouvez créer une nouvelle pile depuis AWS Management Console en effectuant quelques étapes simples :

  1. Nommez la pile : fournissez un nom unique à la pile.
  2. Sélectionnez un modèle : sélectionnez un modèle depuis votre système de fichier local ou depuis une URL Amazon S3. Il peut s'agir de l'un des exemples de modèles AWS CloudFormation, de votre propre modèle personnalisé, d'un modèle que vous gérez dans un référentiel de contrôle de source ou d'un modèle fourni par un tiers.
  3. Spécifiez tous les paramètres : si le modèle vous permet de configurer le déploiement, renseignez les paramètres nécessaires ou conservez les paramètres définis par défaut.
  4. Cliquez sur Créer : commencez le déploiement. Vous pouvez voir l'état actuel du déploiement, avec tous les noms de ressources et les évènements de piles dans AWS Management Console.

Q : Quelles sont les ressources prises en charge par AWS CloudFormation ?

Pour obtenir la liste complète des ressources AWS prises en charge et leurs fonctionnalités, consultez la page relative aux services AWS pris en charge de l'historique des versions de la documentation.

Les ressources personnalisées AWS CloudFormation permettent de gérer des ressources AWS et tierces supplémentaires.

Q : Puis-je gérer des ressources AWS indépendantes, qui ne font pas partie d'une stack AWS CloudFormation ?

Oui. AWS CloudFormation ne vous empêche pas de gérer vos ressources, vous gardez une maîtrise totale de tous les éléments de votre infrastructure. Vous pouvez continuer à utiliser tous vos outils AWS et de tiers pour gérer vos ressources AWS.

Q : Quels sont les éléments d'un template AWS CloudFormation ?

Les templates AWS CloudFormation sont des fichiers textes au format JSON ou YAML composés de cinq types d'éléments :

  1. Une liste facultative de paramètres de modèles (valeurs d'entrée fournies au moment de la création de la pile)
  2. Une liste facultative de valeurs de sortis (ex : l'URL complète vers une application Web)
  3. Une liste facultative de tables de données utilisées pour vérifier les valeurs de configuration statiques (ex : noms d'AMI)
  4. La liste des ressources AWS et leurs valeurs de configuration
  5. Un numéro de version de format de fichier modèle

Grâce aux paramètres, vous pouvez personnaliser certains aspects de votre modèle lors de l'exécution, une fois la pile conçue. Vous pouvez par exemple transmettre la taille de base de données Amazon RDS, les types d'instance Amazon EC2, la base de données et les numéros de port des serveurs Web à AWS CloudFormation lors de la création de la pile. Chaque paramètre peut avoir une valeur par défaut et une description, et peut être marqué « NoEcho » afin de masquer la valeur actuelle que vous saisissez sur l'écran et dans les journaux d'évènements AWS CloudFormation. Lorsque vous créez une pile AWS CloudFormation, AWS Management Console fera automatiquement la synthèse et présentera un formulaire de dialogue dans un pop-up, afin que vous puissiez modifier les valeurs des paramètres.

Les valeurs de sortie constituent une manière très pratique de présenter les ressources clés d'une pile (comme l'adresse d'un programme d'équilibrage de charge Elastic Load Balancing ou d'une base de données Amazon RDS) à l'utilisateur par le biais d'AWS Management Console ou des outils de ligne de commande. Vous pouvez utilisez des fonctions simples pour concaténer des chaînes et des valeurs d'attributs associées aux ressources AWS réelles.

Q : Comment AWS CloudFormation détermine-t-il les noms des ressources ?

Vous pouvez assigner des noms logiques aux ressources AWS dans un modèle. Quand une pile est créée, AWS CloudFormation lie le nom logique au nom de la ressource AWS réelle correspondante. Les noms de ressources réelles sont une combinaison des noms de pile et de ressources logiques. Cela permet la création de plusieurs piles à partir d'un modèle sans craindre des collisions de nom entre ressources AWS.

Q : Pourquoi ne puis-je pas nommer toutes mes ressources ?

Bien qu'AWS CloudFormation vous permette de nommer certaines ressources (comme les compartiments Amazon S3), CloudFormation ne l'autorise pas pour toutes les ressources. Le nommage de ressources restreint le caractère réutilisable des modèles et provoque des conflits de noms lorsqu'une ressource est remplacée lors d'une mise à jour. Pour minimiser ces problèmes, CloudFormation prendra en charge le nommage des ressources au cas par cas.

Q : Puis-je installer un logiciel au moment de la création de la pile en utilisant AWS CloudFormation ?

Oui. AWS CloudFormation fournit un ensemble de scripts d'amorçage d'application, qui vous permettent d'installer des packages, des fichiers et des services sur vos instances EC2, en les décrivant simplement dans votre modèle CloudFormation. Pour plus de détails et un guide pratique consultez Amorcer des applications via AWS CloudFormation.

Q : Puis-je utiliser AWS CloudFormation avec Chef ?

Oui. AWS CloudFormation peut être utilisé pour amorcer à la fois les logiciels Chef Server et Chef Client sur vos instances EC2. Pour plus de détails et un guide pratique, consultez Integrating AWS CloudFormation with Chef.

Q : Puis-je utiliser AWS CloudFormation avec Puppet ?

Oui. AWS CloudFormation peut être utilisé pour amorcer à la fois les logiciels Puppet Master et Puppet Client sur vos instances EC2. Pour plus de détails et un guide pratique, consultez Integrating AWS CloudFormation with Puppet.

Q : AWS CloudFormation prend-il en charge le balisage Amazon EC2 ?

Oui. Les ressources Amazon EC2 qui prennent en charge la fonction de balisage peuvent aussi être balisées dans un modèle AWS. Les valeurs des balises peuvent faire référence aux paramètres du modèle, aux noms d'autres ressources, à des valeurs d'attributs de ressource (ex. : adresses) ou à des valeurs calculées par des fonctions simples (ex. : une liste concaténée de chaînes).

AWS CloudFormation balise automatiquement les volumes Amazon EBS et les instances Amazon EC2 en indiquant le nom de la pile AWS CloudFormation dont ils font partie.

Q : Ai-je accès aux champs de données utilisateur de la configuration de lancement Auto Scaling ou des instances Amazon EC2 ?

Oui. Vous pouvez utiliser des fonctions simples pour concaténer des chaînes littérales et des valeurs d'attribut des ressources AWS et les passez dans les champs de données utilisateur dans votre modèle. Veuillez vous référer à nos modèles d'exemples pour en apprendre plus sur ces fonctions faciles à utiliser.

Q : Que se passe-t-il quand l'une des ressources de la pile ne peut pas être créée ?

Par défaut, la fonction « restauration automatique sur erreur » est activée. Cela supprimera toutes les ressources AWS que AWS CloudFormation a créées avec succès pour une pile jusqu'au point où une erreur s'est produite. C'est utile quand, par exemple, vous dépassez accidentellement votre limite par défaut d'adresses IP élastique ou que vous n'avez pas accès à une AMI EC2 que vous essayez d'exécuter. Avec cette fonction, vous pouvez être sûr que les piles sont soit totalement créées, soit pas du tout, ce qui simplifie l'administration du système et des solutions superposées construites sur AWS CloudFormation.

Q : Est-ce que la création de pile peut attendre que mon application se lance ?

Oui. AWS CloudFormation fournit une ressource WaitCondition qui agit comme un bouclier, bloquant la création d'autres ressources jusqu'à la réception du signal d'achèvement depuis une source externe comme votre application ou système de gestion.

Q : Puis-je enregistrer mes données lorsqu'une pile est supprimée ?

Oui. AWS CloudFormation vous permet de définir les politiques de suppression pour les ressources dans le modèle. Vous pouvez spécifier que les instantanés doivent être créés pour les instances de volumes EBS Amazon ou de base de données Amazon RDS avant d'être supprimés. Vous pouvez aussi spécifier qu'une ressource doit être conservée et pas supprimée quand la pile est supprimée. C'est utile pour conserver des compartiments Amazon S3 quand la pile est supprimée.

Q : Puis-je mettre à jour ma stack après qu'elle a été créée ?

Oui. Vous pouvez utiliser AWS CloudFormation pour modifier et mettre à jour les ressources incluses dans vos piles existantes de manière contrôlée et prévisible. En utilisant des modèles pour gérer les modifications de votre pile, vous avez la possibilité d'assurer un contrôle de version de votre infrastructure AWS similaire à celui que vous réalisez pour les logiciels qui y sont exécutés.

Q : Puis-je créer des stacks dans un Virtual Private Cloud (VPC) ?

Oui. CloudFormation prend en charge la création de VPC, sous-réseaux, passerelles, tables de routage et ACL réseau ainsi que celle de ressources telles qu'adresses IP élastiques, instances Amazon EC2, groupes de sécurité EC2, groupes Auto Scaling, programmes Elastic Load Balancer, instances de base de données Amazon RDS et groupes de sécurité Amazon RDS dans un VPC.



Q : Comment puis-je m'inscrire à AWS CloudFormation ?

Pour vous inscrire à AWS CloudFormation, cliquez sur Créer un compte gratuit sur la page détaillée d'AWS CloudFormation. Une fois l'inscription terminée, consultez la documentation d'AWS CloudFormation, qui comprend notre Guide de démarrage.

Q : Pourquoi est-ce qu'on me demande de vérifier mon numéro de téléphone lorsque je m'inscris à AWS CloudFormation ?

L'inscription à AWS CloudFormation exige que vous ayez un numéro de téléphone valide ainsi qu'une adresse email sur nos fichiers AWS au cas où nous devons vous contacter. La vérification de votre numéro de téléphone ne prend que quelques minutes. Vous recevrez un appel automatique pendant le processus d'inscription et vous devrez entrer un code d'identification PIN à l'aide des touches de votre téléphone.

Q : Comment démarrer après s'être inscrit ?

La meilleure manière de démarrer avec AWS CloudFormation est de consulter le Guide de démarrage qui est inclus dans notre documentation technique. En quelques minutes, vous pourrez déployer et utiliser l'un de nos exemples de modèles permettant de créer l'infrastructure nécessaire pour exécuter des applications telles que Tracks, WordPress et autres.

Q : Existe-t-il des exemples de modèles que je peux utiliser pour essayer AWS CloudFormation ?

Oui, AWS CloudFormation inclut des exemples de modèles que vous pouvez utiliser pour essayer et explorer ses fonctionnalités. Nos exemples de modèles indiquent comment interconnecter et utiliser plusieurs ressources AWS conjointement, en respectant les bonnes pratiques liées à la redondance sur plusieurs zones de disponibilité, au dimensionnement et aux alarmes. Pour vous lancer, accédez simplement à AWS Management Console, cliquez sur Create Stack et effectuez les différentes étapes pour choisir et lancer l'un des exemples de modèles. Une fois la création terminée, sélectionnez votre pile dans la console et consultez les onglets Template et Parameter pour avoir accès aux informations relatives au fichier de modèle utilisé pour créer cette pile.

Q : Combien coûte AWS CloudFormation ?

AWS CloudFormation est disponible sans frais supplémentaires. Vous ne payez que les ressources AWS que vous créez (ex. : instances Amazon EC2, programmes d'équilibrage de charge Elastic Load Balancing, etc.).

Q : Serai-je facturé pour les ressources restaurées pendant une tentative non réussie de création de pile ?

Oui. Les frais pour les ressources AWS créées pendant l'instanciation d'un modèle s'appliquent, que la pile ait pu ou non être créée.

Q : Le nombre de modèles ou de piles est-il limité ?

Il n'y a pas de limites quant au nombre de templates. Chaque compte AWS CloudFormation est limité à un maximum de 200 stacks. Pour demander une augmentation de cette limite, remplissez le formulaire disponible ici. Nous vous répondrons dans les deux jours ouvrables.

Q : La taille des champs de description est-elle limitée ?

Les champs de description Template, Parameter, Output et Resource sont limités à 4 096 caractères.

Q : Le nombre de paramètres ou de sorties dans un modèle est-il limité ?

Vous pouvez inclure jusqu'à 60 paramètres et 60 sorties dans un modèle.

Q : Quels sont les points d'accès au service AWS CloudFormation dans chaque région ?

Les points de terminaison pour chaque région sont disponibles dans la documentation technique.

Q : Dans quelles régions AWS le service AWS CloudFormation est-il disponible ?

Pour plus d'informations sur la disponibilité de CloudFormation par région, reportez-vous à la section relative aux produits et services régionaux.