Kai vous montre comment
référencer des ressources dans différentes
piles CloudFormation lors de la
création d'un modèle

kai_dynamic_port_mapping

Référencer une ressource d'une autre pile AWS CloudFormation lors de la création d'un modèle

Tandis que votre utilisation d'AWS CloudFormation se fait plus intense, vous pouvez créer des piles statiques pour héberger les ressources d'infrastructure. Cela vous permettra ensuite de créer une nouvelle pile de consommateurs qui fera référence aux ressources dont vous avez besoin, plutôt que d'avoir à gérer des piles de façon individuelle.

La pile de ressources fonctionne comme un service statique indépendant de votre application. Le point de référence fonctionne comme une interface afin d'autoriser l'interaction avec les consommateurs. Les références entre piles utilisent une conception d'architecture similaire à celle des SOA (architectures orientées services).

Pour créer une référence entre piles, utilisez le champ sortie Export pour signaler la valeur d'une sortie de ressource pour l'exportation. Ensuite, utilisez la fonction intrinsèque Fn::ImportValue pour importer la valeur en question. Les valeurs exportées sont identifiées selon les noms indiqués dans le modèle, lesquels doivent être propres à votre région.

Remarque : cet article fournit un exemple de création de référence entre piles. Pour connaître l'ensemble des instructions, consultez la page Procédure pas à pas : création de références à des sorties de ressources dans une autre pile AWS CloudFormation.

Création d'une instance à partir d'un sous-réseau importé et d'un groupe de sécurité

1.    Ouvrez la console CloudFormation AWS, sélectionnez Créer une pile, puis Concevoir modèle.

2.    En bas de la page, choisissez l'onglet Modèle.

3.    Copiez un exemple de modèle tel que Fn::ImportValue, ou utilisez l'exemple suivant :

{
   "Parameters":{
        "NetworkStackNameParameter":{
              "Type":"String"
      }
    },
"Resources" : {
  "WebServerInstance" : {
    "Type" : "AWS::EC2::Instance",
    "Properties" : {
      "InstanceType" : "t2.micro",
      "ImageId" : "ami-a1b23456",
      "NetworkInterfaces" : [{
        "GroupSet" : [{"Fn::ImportValue" : {"Fn::Sub" : "${NetworkStackNameParameter}-SecurityGroupID"}}],
        "AssociatePublicIpAddress" : "true",
        "DeviceIndex" : "0",
        "DeleteOnTermination" : "true",
        "SubnetId" : {"Fn::ImportValue" : {"Fn::Sub" : "${NetworkStackNameParameter}-SubnetID"}}
      }]
    }
  }
}

Remarque : mettez le modèle à jour de façon à reprendre les noms de vos ressources.

4.    Sélectionnez l'icône Créer une pile, puis Suivant et saisissez le nom.

5.    Pour les Paramètres, saisissez le nom de pile de réseau à laquelle vous souhaitez faire référence.

6.    Sélectionnez Suivant, puis à nouveau Suivant.

7.    Dans le menu déroulant CloudFormation, sélectionnez Exportations pour afficher les noms et valeurs des exportations.

8.    Ouvrez la console Amazon EC2.

9.    Dans le panneau de navigation, sous Instances, sélectionnez l'ID d'instance que vous avez créée.

10.  Dans Description, vérifiez que le groupe de sécurité et le sous-réseau ont été configurés correctement.

Remarque : une pile de ressources ne peut pas être supprimée tant que ses valeurs exportées sont utilisées dans d'autres piles. Le nom de l'exportation doit être propre au compte par région.


Cette page vous a-t-elle été utile ? Oui | Non

Retour au Centre de connaissances AWS Support

Vous avez besoin d'aide ? Consultez le site du Centre AWS Support

Date de publication : 09/01/2018