0

Je crée une pile opsworks en utilisant un modèle cloudformation, et j'ai quelques applications dans ma pile qui nécessitent une instance database RDS:Erreur par Opsworks: impossible de trouver rds exemple avec ARN

"WordpressApp": { 
     "Type": "AWS::OpsWorks::App", 
     "Properties": { 
     "AppSource" : { 
      "Type" : "git", 
      "Url" : "git://github.com:myproject/wordpress.git", 
      "Revision" : "master" 
     }, 
     "DataSources":[{ 
      "Arn" : { "Ref" : "RDSInstanceARN" }, 
      "DatabaseName" : "application", 
      "Type" : "RdsDbInstance" 
     }], 
     "Description": "website application", 
     "Name" : "app", 
     "Shortname" : "app", 
     "StackId" : {"Ref": "MyStack"}, 
     "Type" : "php" 
     } 
    }, 

Voici le paramètre RDSInstancARN:

"RDSInstanceARN" : { 
    "Description" : "Arn of the RDS instance", 
    "Type" : "String", 
    "Default" : "arn:aws:rds:eu-west-1:454524154879:db:instanceappdb" 
} 

le bien écrit est ARN. Lorsque je teste le modèle que je reçois cette erreur:

unable to find rds instance with ARN 

Quelle est la cause de cette erreur? Je ne comprends pas, l'arn est écrit correctement et il existe dans le compte aws et en cours d'exécution. Une idée s'il vous plaît? Je vous remercie.

Répondre

0

Avez-vous d'abord registered your RDS instance with your OpsWorks stack?

Selon la section de documentation Amazon RDS Service Layer, la procédure d'utilisation d'une instance RDS avec une pile de OpsWorks est comme suit:

  1. utiliser pour créer une instance de la console Amazon RDS, API ou CLI. Veillez à enregistrer l'ID de l'instance, le nom d'utilisateur principal, le mot de passe principal et le nom de la base de données.
  2. Pour ajouter une couche Amazon RDS à votre pile, enregistrez l'instance Amazon RDS avec la pile.
  3. Attachez la couche à une application, qui ajoute les informations de connexion de l'instance Amazon RDS aux attributs de déploiement de l'application.
  4. Utilisez les fichiers spécifiques à la langue ou les informations contenues dans les attributs de déploiement pour connecter l'application à l'instance Amazon RDS.

Je crois définir la propriété DataSources sur un AWS::OpsWorks::App correspond à 3 ci-dessus, mais # 2 devra être fait en premier. Malheureusement, il semble que l'étape 2 n'est pas officiellement supportée par CloudFormation - voir ma réponse à votre autre question, Create an RDS Opsworks Layer by a Cloudformation template pour plus de détails/discussion sur cette étape.