Connexion d'une application à un serveur de base de données - AWS OpsWorks

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.

Connexion d'une application à un serveur de base de données

Important

AWS OpsWorks Stacksn'accepte plus de nouveaux clients. Les clients existants pourront utiliser la OpsWorks console, l'API, l'interface de ligne de commande et les CloudFormation ressources normalement jusqu'au 26 mai 2024, date à laquelle elles seront abandonnées. Pour préparer cette transition, nous vous recommandons de migrer AWS Systems Manager vos piles vers. Pour plus d'informations, consultez AWS OpsWorks StacksFAQ sur la fin de vie et Migration de vos AWS OpsWorks Stacks applications vers AWS Systems Manager Application Manager.

Vous pouvez associer un serveur de base de données Amazon RDS à une application lorsque vous créez l'application ou ultérieurement en modifiant l'application. Votre application peut ensuite utiliser les informations de connexion à la base de données : nom d'utilisateur, mot de passe,... —pour se connecter au serveur de base de données. Lorsque vous déployez une application, AWS OpsWorks Stacks fournit les informations aux applications de deux façons :

  • Pour les piles Linux, AWS OpsWorks Stacks crée un fichier sur chacune des instances du serveur d'applications intégré contenant les données de connexion que l'application peut utiliser pour se connecter au serveur de base de données.

  • AWS OpsWorks Stacks inclut les informations de connexion dans les attributs de configuration et de déploiement de pile qui sont installés sur chaque instance.

    Vous pouvez implémenter une recette personnalisée pour extraire les informations de connexion de ces attributs et les placer dans un fichier selon votre format préféré. Pour plus d'informations, veuillez consulter Transmission de données aux applications.

Important

Pour les piles Linux, si vous souhaitez associer une couche de service Amazon RDS à votre application, vous devez ajouter le package de pilotes approprié à la couche de serveur d'applications associée, comme suit :

  1. Cliquez sur Layers (Couches) dans le panneau de navigation et ouvrez l'onglet Recipes (Recettes) du serveur d'applications.

  2. Cliquez sur Edit (Modifier) et ajoutez le package de pilotes approprié aux OS Packages (Packages de SE). Par exemple, vous devez spécifier mysql si la couche contient des instances Amazon Linux et mysql-client si la couche contient des instances Ubuntu.

  3. Enregistrez les modifications et redéployez l'application.

Utilisation d'une recette personnalisée

Vous pouvez implémenter une recette personnalisée qui extrait les données de connexion des attributs deploy de l'application et les enregistre sous une forme que l'application peut lire, telle qu'un fichier YAML, par exemple.

Vous attachez un serveur de base de données à une application lorsque vous créez l'application ou ultérieurement en modifiant l'application. Lorsque vous déployez l'application, AWS OpsWorks Stacks installe les attributs de configuration et de déploiement de pile sur chaque instance qui inclut les informations de connexion de base de données. Votre application peut ensuite récupérer les attributs appropriés. Les détails varient selon que vous utilisez une pile Linux ou Windows.

Connexion à un serveur de base de données pour une pile Linux

Pour les piles Linux, l'deployespace de noms des attributs de configuration et de déploiement de la pile inclut un attribut pour chaque application déployée, nommé selon le nom abrégé de l'application. Lorsque vous attachez un serveur de base de données à une application, AWS OpsWorks Stacks remplit l'attribut [:database] de l'application avec les informations de connexion et l'installe sur les instances de la pile pour chaque déploiement suivant. Les valeurs d'attribut sont fournies par l'utilisateur ou générées par AWS OpsWorks Stacks.

Note

AWS OpsWorks Stacks permet d'attacher un serveur de base de données à plusieurs applications, mais chaque application ne peut avoir qu'un seul serveur de base de données attaché. Si vous souhaitez connecter une application à plusieurs serveurs de base de données, attachez l'un des serveurs à l'application et utilisez les informations des attributs deploy de l'application pour vous connecter au serveur. Utilisez le JSON personnalisé pour transmettre les informations de connexion des autres serveurs de base de données à l'application. Pour plus d'informations, veuillez consulter Transmission de données aux applications.

Une application peut utiliser les informations de connexion des attributs deploy de l'instance pour se connecter à une base de données. Toutefois, les applications ne peuvent pas accéder directement à ces informations : seules les recettes peuvent accéder aux attributs. deploy Vous pouvez résoudre ce problème en mettant en œuvre une recette personnalisée qui extrait les informations de connexion à partir des attributs deploy et les place dans un fichier qui peut être lu par l'application.