Exemple : Lancement d'un Elastic Beanstalk dans un VPC avec Amazon RDS - AWS Elastic Beanstalk

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.

Exemple : Lancement d'un Elastic Beanstalk dans un VPC avec Amazon RDS

Cette section vous guide à travers les tâches de déploiement d'une application Elastic Beanstalk avec Amazon RDS dans un VPC à l'aide d'une passerelle NAT. Votre infrastructure ressemblera au schéma suivant.

Elastic Beanstalk et topologie VPC avec Amazon RDS
Note

Si vous n'avez pas utilisé une instance de base de données avec votre application auparavant, essayez d'en ajouter une à un environnement de test et d'établir une connexion à une instance de base de données externe avant d'ajouter une configuration VPC au mélange.

Création d'un VPC avec des sous-réseaux public et privé

Vous pouvez utiliser la console Amazon VPC pour créer un VPC.

Pour créer un VPC
  1. Connectez-vous à la console Amazon VPC.

  2. Dans le panneau de navigation, choisissez Tableau de bord du VPC. Ensuite, choisissez Créer VPC.

  3. Choisissez VPC avec des sous-réseaux publics et privés, puis Sélectionner.

    Choisissez VPC avec des sous-réseaux publics et privés, puis Sélectionner.
  4. Votre équilibreur de charge Elastic Load Balancing et vos instances Amazon EC2 doivent se trouver dans la même zone de disponibilité pour pouvoir communiquer ensemble. Choisissez la même zone de disponibilité dans chaque liste Zone de disponibilité.

    Choisissez la même zone de disponibilité pour vos sous-réseaux public et privé.
  5. Choisissez une adresse IP Elastic pour votre passerelle NAT.

  6. Sélectionnez Create VPC (Créer un VPC).

    L'Assistant commence à créer le VPC, les sous-réseaux et la passerelle Internet. Il met également à jour la table de routage principale et crée une table de routage personnalisée. Enfin, il crée une passerelle NAT dans le sous-réseau public.

    Note

    Vous pouvez choisir de lancer une instance NAT dans le sous-réseau public au lieu d'une passerelle NAT. Pour de plus amples informations, veuillez consulter Scénario 2 : VPC avec des sous-réseaux publics et privés (NAT) dans le Guide de l'utilisateur Amazon VPC.

  7. Une fois que le VPC est créé avec succès, vous obtenez un ID de VPC. Vous avez besoin de cette valeur pour l'étape suivante. Pour voir l'ID de votre VPC, choisissez Vos VPC dans le volet gauche de la console Amazon VPC.

    La console Amazon VPC affiche l'ID de votre VPC.

Création d'un groupe de sous-réseaux DB

Un groupe de sous-réseaux DB pour un VPC est un ensemble de sous-réseaux (généralement privés) que vous pouvez désigner pour vos instances backend DB RDS. Chaque groupe de sous-réseau DB doit posséder au moins un sous-réseau pour chaque zone de disponibilité dans une région AWS donnée. Pour de plus amples informations, veuillez consulter Création d'un sous-réseau dans votre VPC.

Création d'un groupe de sous-réseaux DB
  1. Ouvrez la console Amazon RDS.

  2. Dans le panneau de navigation, choisissez Subnet groups (Groupes de sous-réseaux).

  3. Choisissez Create DB Subnet Group (Créer groupe de sous-réseaux de base de données).

  4. Choisissez Name (Nom), puis saisissez le nom de votre groupe de sous-réseaux DB.

  5. Choisissez Description, puis décrivez votre groupe de sous-réseaux DB.

  6. Pour VPC, choisissez l'ID du VPC que vous avez créé précédemment.

  7. Dans Add subnets (Ajouter des sous-réseaux), choisissez Add all the subnets related to this VPC (Ajouter tous les sous-réseaux associés à ce VPC).

    Ajoutez tous les sous-réseaux associés à votre VPC.
  8. Lorsque vous avez terminé, sélectionnez Create.

    Votre nouveau groupe de sous-réseaux DB s'affiche dans la liste des groupes de sous-réseaux de base de données de la console Amazon RDS. Vous pouvez le choisir pour afficher des détails, tels que tous les sous-réseaux associés à ce groupe, dans le volet des détails en bas de la page.

Déploiement sur Elastic Beanstalk

Une fois que vous avez configuré votre VPC, vous pouvez y créer votre environnement et déployer votre application sur Elastic Beanstalk. Vous pouvez le faire à l'aide de la console Elastic Beanstalk ou utiliser les boîtes à outils AWS, AWS CLI, la CLI EB ou l'API Elastic Beanstalk. Si vous utilisez la console Elastic Beanstalk, il vous suffit de télécharger votre fichier .war ou .zip et de sélectionner les paramètres VPC dans l'assistant. Elastic Beanstalk crée ensuite votre environnement dans votre VPC et déploie votre application. Vous pouvez également utiliser les boîtes à outils AWS, AWS CLI, la CLI EB ou l'API Elastic Beanstalk pour déployer votre application. Pour ce faire, vous devez définir vos paramètres VPC dans un fichier de configuration et déployer ce fichier avec votre groupe source. Cette rubrique fournit des instructions pour les deux méthodes.

Déploiement avec la console Elastic Beanstalk

La console Elastic Beanstalk vous guide à travers la création de votre nouvel environnement dans votre VPC. Vous devez fournir un fichier .war (pour les applications Java) ou un fichier .zip (pour toutes les autres applications). Sur la page Configuration VPC de l'assistant d'environnement Elastic Beanstalk, vous devez effectuer les sélections suivantes :

VPC

Sélectionnez votre VPC.

Groupe de sécurité VPC

Sélectionnez le groupe de sécurité d'instance que vous avez créé précédemment.

Visibilité ELB

Sélectionnez External si votre équilibreur de charge doit être publiquement disponible, ou Internal si l'équilibreur de charge ne doit être disponible que dans votre VPC.

Sélectionnez les sous-réseaux pour votre équilibreur de charge et les instances EC2. Veillez à sélectionner le sous-réseau public pour l'équilibreur de charge et le sous-réseau privé pour vos instances Amazon EC2. Par défaut, l'assistant de création de VPC crée le sous-réseau public dans 10.0.0.0/24 et le sous-réseau privé dans 10.0.1.0/24.

Vous pouvez afficher les ID de vos sous-réseaux en cliquant sur Subnets (Sous-réseaux) dans la console Amazon VPC.

ID des sous-réseaux de votre VPC

Déploiement avec les boîtes à outils AWS, la CLI EB, AWS CLI ou l'API

Lorsque vous déployez votre application sur Elastic Beanstalk à l'aide des boîtes à outils AWS, de la CLI EB, de AWS CLI ou de l'API, vous pouvez spécifier vos paramètres VPC dans un fichier et déployer ce dernier avec votre solution groupée de fichiers source. Pour plus d'informations, consultez Personnalisation d'environnement avancée avec fichiers de configuration (.ebextensions).

Lorsque vous mettez à jour les paramètres de l'option, vous devez spécifier au moins les éléments suivants :

  • VPCId – Contient l'ID du VPC.

  • Subnets (Sous-réseaux) – Contient l'ID du sous-réseau du groupe Auto Scaling. Dans cet exemple, il s'agit de l'ID du sous-réseau privé.

  • ELBSubnets – Contient l'ID du sous-réseau pour l'équilibreur de charge. Dans cet exemple, il s'agit de l'ID du sous-réseau public.

  • SecurityGroups – Contient l'ID des groupes de sécurité.

  • DBSubnets – Contient l'ID des sous-réseaux de base de données.

    Note

    Lorsque vous utilisez des sous-réseaux DB, vous devez créer des sous-réseaux supplémentaires dans votre VPC afin de couvrir toutes les zones de disponibilité dans la région AWS.

Le cas échéant, vous pouvez également spécifier les informations suivantes :

  • ELBScheme – Spécifiez internal pour créer un équilibreur de charge interne dans votre VPC afin qu'aucun accès à votre application Elastic Beanstalk ne soit possible en dehors de votre VPC.

Voici un exemple des paramètres d'options que vous pouvez utiliser lors du déploiement de votre application Elastic Beanstalk à l'intérieur d'un VPC. Pour de plus amples informations sur les paramètres d'options VPC (y compris les exemples pour savoir comment les spécifier, les valeurs par défaut et les valeurs valides), veuillez consulter le tableau d'espace de noms aws:ec2:vpc dans Options de configuration.

option_settings: - namespace: aws:autoscaling:launchconfiguration option_name: EC2KeyName value: ec2keypair - namespace: aws:ec2:vpc option_name: VPCId value: vpc-170647c - namespace: aws:ec2:vpc option_name: Subnets value: subnet-4f195024 - namespace: aws:ec2:vpc option_name: ELBSubnets value: subnet-fe064f95 - namespace: aws:ec2:vpc option_name: DBSubnets value: subnet-fg148g78 - namespace: aws:autoscaling:launchconfiguration option_name: InstanceType value: m1.small - namespace: aws:autoscaling:launchconfiguration option_name: SecurityGroups value: sg-7f1ef110
Note

Lorsque vous utilisez des sous-réseaux DB, assurez-vous que vous avez des sous-réseaux dans votre VPC afin de couvrir toutes les zones de disponibilité dans la région AWS.