Introduction aux modèles AWS CloudFormation

AWS CloudFormation est un service qui gère et définit ensemble différentes ressources AWS afin que le temps nécessaire à leur exécution puisse être réduit et que le temps consacré aux différentes applications dans Amazon Web Services puisse être augmenté. Pour ce faire, un modèle est utilisé qui contient toutes les ressources dont l'utilisateur a besoin. Ces modèles sont appelés modèles CloudFormation. À l'aide de ces modèles, AWS CloudFormation se charge de configurer et de provisionner ces ressources pour l'utilisateur. La structure et le fonctionnement du modèle sont décrits dans la section suivante.

Modèles CloudFormation

Le modèle Amazon CloudFormation est un fichier texte formaté en langage YAML ou JSON. Ces modèles peuvent être créés à l'aide d'une console ou en écrivant un script manuellement. Dans la console, les ressources seront glissées et déposées par l'utilisateur. Une fois terminé, un script JSON ou YAML sera généré automatiquement et l'utilisateur pourra le modifier s'il le souhaite. Pour modifier ou éditer le modèle, l'utilisateur peut utiliser n'importe quel outil d'édition de texte ou concepteur AWS CloudFormation. Pour écrire, un certain format doit être suivi avec les objets suivants. Les principaux objets du modèle CloudFormation sont décrits ci-dessous.

1. Format: la version du modèle AWS CloudFormation est définie ici.

Exemple:

(
"AWSTemplateFormatVersion": "2019-09-09"
)

2. Description: tous les commentaires ou descriptions sur le modèle peuvent être notés dans cet objet.

Exemple:

(
"Description": "An Amazon Redshift cluster is created within a Virtual Private Cloud”
)

3. Métadonnées: des informations supplémentaires sur le modèle sont définies en langage JSON ou YAML.

Exemple:

(
"Metadata":
(
"AWS::CloudFormation::Interface": ()
)

4. Paramètres: la personnalisation des modèles peut être effectuée à l'aide des paramètres. C'est en donnant des valeurs personnalisées au modèle lorsque la pile est créée ou mise à jour.

Exemple:

"Parameters" :
(
"KeyName": ()
"InstanceType" : ()
"DBName" : ()
"DBUser" : ()
"DBPassword" : ()
)

5. Mappages: sur la base d'une valeur du paramètre conditionnel, l'utilisateur sera autorisé à lui mapper la clé. De plus, à partir d'une carte, les utilisateurs peuvent récupérer des valeurs en utilisant une fonction intrinsèque "Fn :: FindInMap".

Exemple:

(
"AWSInstanceType2Arch" :
(
"t1.micro" : ( "Arch" : "HVM64" ),
.
.
"t2.large" : ( "Arch" : "HVM64" ),
"m1.small" : ( "Arch" : "HVM64" ),
.
"m1.large" : ( "Arch" : "HVM64" )
)

6. Ressources: dans la section Ressources du modèle AWS CloudFormation, il est possible de déclarer des ressources telles que le compartiment AWS Simple Storage Services (S3), AWS Lambda. Ces ressources peuvent également être créées et spécifiées dans la pile.

Exemple:

"Resources" :
(
"WebServerSecurityGroup" :
(
"Type" : " ",
"Properties" :
(
"GroupDescription" : "",
"SecurityGroupIngress" :() )
)
)

7. Sortie: la section de sortie contient les valeurs qui doivent être importées dans d'autres piles ou celles qui sont renvoyées pendant que vous affichez vos propres propriétés de pile.

Exemple:

"Outputs" :
(
"Description" : "”
“Value”: “”
)
)

Maintenant, combinons toutes ces sections et voyons à quoi ressemblera un modèle.

Exemple de modèle

(
"AWSTemplateFormatVersion": "2019-09-09"
"Description": "An Amazon Redshift cluster is created within a Virtual Private Cloud”
"Metadata": (
"AWS::CloudFormation::Interface": ()
)
"Parameters" : (
"KeyName": ()
"InstanceType" : ()
"DBName" : ()
"DBUser" : ()
"DBPassword" : ()
)
"Mappings" :
(
"AWSInstanceType2Arch" :
(
"t1.micro" : ( "Arch" : "HVM64" ),
.
.
"t2.large" : ( "Arch" : "HVM64" ),
"m1.small" : ( "Arch" : "HVM64" ),
.
"m1.large" : ( "Arch" : "HVM64" )
)
"Resources" :
(
"WebServerSecurityGroup" :
(
"Type" : " ",
"Properties" :
(
"GroupDescription" : "",
"SecurityGroupIngress" :() )
)
)
"Outputs" :
(
"Description" : "”
“Value”: “”
)
)

Une fois le modèle créé, l'utilisateur peut télécharger le modèle dans la pile.

Configuration de la pile CloudFormation

Une pile dans AWS est une collection de ressources qui peuvent être gérées par une seule unité. Les ressources peuvent être créées, supprimées et mises à jour en créant, supprimant et mettant à jour des piles. Voyons maintenant comment nous lançons cette pile et utilisons le modèle CloudFormation à l'intérieur.

1. Enregistrez le compte AWS si vous n'en avez pas. S'il est déjà présent, connectez-vous à l'aide des informations d'identification.

2. Ouvrez la console d'AWS CloudFormation à l'aide de l'URL https://console.aws.amazon.com/cloudformation.

3. Si vous disposez d'un nouveau compte CloudFormation, cliquez sur Créer une nouvelle pile. Sinon, créez une pile.

4. Sélectionnez Télécharger un modèle sur Amazon S3 dans Choisir un modèle. Téléchargez votre modèle en sélectionnant Choisir un fichier ou en fournissant une URL.

5. Veuillez noter que si le modèle CloudFormation est stocké dans le compartiment S3, l'utilisateur doit avoir accès à celui-ci et les régions du compartiment S3 et de la pile doivent être les mêmes.

6. Donnez un nom de pile approprié dans la section Spécifier les détails à votre pile CloudFormation.

7. Indiquez le nom de la paire de clés EC2 dans KeyName

8. Assurez-vous que la paire de clés EC2 et la pile se trouvent dans la même région.

9. Cliquez sur Next.

10. Une page apparaît avec certains champs de saisie facultatifs comme balise. Les balises aident à identifier les piles car elles contiennent des paires clé-valeur. Mais, maintenant, nous ne créons pas de balises.

11. Vérifiez les détails et sélectionnez Créer.

12. La progression de la création de la pile est maintenant visible dans l'onglet Evénements. Si la création de la pile est en cours, l'état CREATE_IN_PROGRESS sera affiché et si la création est terminée, l'état CREATE_COMPLETED sera affiché.

13. Une fois la pile créée, l'utilisateur peut commencer à utiliser les ressources. Afin d'éviter des frais supplémentaires pour les services indésirables, il est conseillé de supprimer les piles et ses ressources.

Pour supprimer la pile, les étapes suivantes peuvent être utilisées.

  • Accédez à la console CloudFormation et sélectionnez la pile que vous avez créée.
  • Cliquez sur Supprimer la pile.
  • Cliquez sur Oui, Supprimer lorsque le message de confirmation apparaît.

Conclusion

Les modèles CloudFormation aident à provisionner et à configurer les ressources pour l'utilisateur afin que le temps nécessaire pour effectuer des opérations sur plusieurs ressources puisse être réduit et que la concentration sur les différentes applications présentes dans Amazon Web Services puisse être augmentée. La création et l'utilisation de ces modèles sont décrites dans la section ci-dessus.

Article recommandé

Ceci est un guide des modèles AWS CloudFormation. Nous discutons ici de l'introduction et des différents modèles CloudFormation ainsi que des exemples. Vous pouvez également consulter nos autres articles suggérés pour en savoir plus -

  1. Architecture AWS
  2. Services AWS
  3. Qu'est-ce qu'AWS CloudFront
  4. Questions d'entretiens chez AWS
  5. Services de stockage AWS
  6. Concurrents AWS | Les 7 meilleurs concurrents d'AWS avec des fonctionnalités
  7. Cloud privé vs Cloud public
  8. Qu'est-ce que le cloud privé?

Catégorie: