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.
Utilisation de CloudFormation modèles
Un AWS CloudFormation modèle définit les AWS ressources que vous souhaitez créer, mettre à jour ou supprimer dans le cadre d'une pile. Il se compose de plusieurs sections, mais la seule section obligatoire est la section Resources, qui doit déclarer au moins une ressource.
Vous pouvez créer des modèles à l’aide des méthodes suivantes :
-
AWS Infrastructure Composer : une interface visuelle pour concevoir des modèles.
-
Éditeur de texte : écrivez des modèles directement dans la syntaxe JSON ou YAML.
-
Générateur IaC : générez des modèles à partir des ressources fournies dans votre compte qui ne sont pas actuellement gérées par CloudFormation. Le générateur IaC fonctionne avec un large éventail de types de ressources pris en charge par l’API Cloud Control dans votre région.
Cette section fournit un guide complet expliquant comment utiliser les différentes sections d'un CloudFormation modèle et comment commencer à créer des modèles de pile. Elle couvre les rubriques suivantes :
Rubriques
Où sont stockés les modèles
Compartiment Amazon S3
Vous pouvez stocker CloudFormation des modèles dans un compartiment Amazon S3. Lorsque vous créez ou mettez à jour une pile, vous pouvez spécifier l’URL S3 du modèle au lieu de le charger directement.
Si vous chargez des modèles directement via le AWS Management Console ou AWS CLI, un compartiment S3 est automatiquement créé pour vous. Pour de plus amples informations, veuillez consulter Création d’une pile à partir de la console CloudFormation.
Référentiel Git
Avec Git sync, vous pouvez stocker des modèles dans un référentiel Git. Lorsque vous créez ou mettez à jour une pile, vous pouvez spécifier l'emplacement du dépôt Git et la branche contenant le modèle au lieu de le télécharger directement ou de faire référence à une URL S3. CloudFormation surveille automatiquement le référentiel et la branche spécifiés pour détecter les modifications du modèle. Pour de plus amples informations, veuillez consulter Créez une pile à partir du code source du référentiel avec la synchronisation Git.
Validation des modèles
Validation de la syntaxe
Vous pouvez vérifier la syntaxe JSON ou YAML de votre modèle à l’aide de la commande CLI validate-template ou en spécifiant votre modèle sur la console. La console effectue automatiquement la validation. Pour de plus amples informations, veuillez consulter Création d’une pile à partir de la console CloudFormation.
Cependant, ces méthodes vérifient uniquement la syntaxe de votre modèle et ne valident pas les valeurs de propriété que vous avez spécifiées pour une ressource.
Outils de validation supplémentaires
Pour des validations plus complexes et des vérifications de la bonne pratique, vous pouvez utiliser des outils supplémentaires tels que :
-
CloudFormation Linter (cfn-lint)
— Validez les modèles par rapport aux schémas du CloudFormation fournisseur de ressources. Comprend la vérification des valeurs valides pour les propriétés des ressources et les bonnes pratiques. -
CloudFormation Rain (rain fmt)
— Formatez vos CloudFormation modèles selon une norme cohérente ou reformatez un modèle de JSON en YAML (ou de YAML en JSON). Il conserve les commentaires lors de l’utilisation de YAML et passe à la syntaxe courte lorsque cela est possible pour l’utilisation des fonctions intrinsèques.
Premiers pas avec les modèles
Pour commencer à créer un CloudFormation modèle, procédez comme suit :
-
Choisissez les ressources : identifiez les AWS ressources que vous souhaitez inclure dans votre pile, telles que EC2 les instances VPCs, les groupes de sécurité, etc.
-
Rédiger le modèle : rédigez le modèle au format JSON ou YAML, en définissant les ressources et leurs propriétés.
-
Enregistrer le modèle : enregistrez le modèle localement avec une extension de fichier telle que :
.json,.yamlou.txt. -
Valider le modèle : validez le modèle à l’aide des méthodes décrites dans la section Validation des modèles.
-
Créer une pile : créez une pile à l’aide du modèle validé.
Prévoyez d'utiliser la référence du CloudFormation modèle
Lorsque vous rédigez vos modèles, vous pouvez trouver la documentation relative à la syntaxe détaillée des différents types de ressources dans la Référence des types de ressources et de propriétés AWS.
Souvent, vos modèles de pile nécessiteront des fonctions intrinsèques pour attribuer des valeurs de propriété qui ne sont pas disponibles avant l’exécution et des attributs spéciaux pour contrôler le comportement des ressources. Lorsque vous rédigez votre modèle, veuillez vous référer aux ressources suivantes pour obtenir des conseils :
-
Référence des fonctions intrinsèques : voici quelques fonctions intrinsèques couramment utilisées :
-
Ref: récupère la valeur d’un paramètre ou l’ID physique d’une ressource. -
Sub: remplace les espaces réservés dans les chaînes par des valeurs réelles. -
GetAtt: renvoie la valeur d’un attribut d’une ressource dans le modèle. -
Join: joint un ensemble de valeurs dans une seule chaîne.
-
-
Référence des attributs de ressource : voici quelques attributs spéciaux couramment utilisés :
-
DependsOn: utilisez cet attribut pour spécifier qu’une ressource doit être créée après une autre. -
DeletionPolicy— Utilisez cet attribut pour spécifier CloudFormation comment gérer la suppression d'une ressource.
-
Exemples de modèle
CloudFormation fournit des modèles de stack open source que vous pouvez utiliser pour démarrer. Pour plus d'informations, consultez la section CloudFormation Exemples de modèles
Veuillez noter que ces modèles ne sont pas destinés à être utilisés en production. Il est recommandé de prendre le temps de comprendre leur fonctionnement, de les adapter à vos besoins et de vous assurer qu’ils répondent aux normes de conformité de votre entreprise.
Chaque modèle de ce référentiel passe les tests CloudFormation Linter