Exemple : VPC pour serveurs web et de base de données - Amazon Virtual Private Cloud

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 : VPC pour serveurs web et de base de données

Cet exemple montre comment créer un VPC que vous pouvez utiliser pour une architecture à deux niveaux dans un environnement de production. Pour améliorer la résilience, vous déployez les serveurs dans deux zones de disponibilité.

Présentation

Le schéma suivant fournit un aperçu des ressources incluses dans l'exemple. Le VPC contient des sous-réseaux privés et des sous-réseaux publics dans deux zones de disponibilité. Les serveurs web s'exécutent dans les sous-réseaux publics et reçoivent le trafic des clients via un équilibreur de charge. Le groupe de sécurité pour les serveurs web autorise le trafic en provenance de l'équilibreur de charge. Les serveurs de base de données s'exécutent dans les sous-réseaux privés et reçoivent du trafic en provenance des serveurs web. Le groupe de sécurité pour les serveurs de base de données autorise le trafic en provenance des serveurs web. Les serveurs de base de données peuvent se connecter à Amazon S3 via un point de terminaison d'un VPC de passerelle.

Un VPC avec des sous-réseaux dans deux zones de disponibilité.

Routage

Lorsque vous créez ce VPC à l'aide de la console Amazon VPC, nous créons une table de routage pour les sous-réseaux publics avec des routes locales et des routes vers la passerelle Internet, ainsi qu'une table de routage pour chaque sous-réseau privé avec des routes locales et une route vers le point de terminaison d'un VPC de la passerelle.

Voici un exemple de table de routage pour les sous-réseaux publics, avec des routes pour IPv4 et IPv6. Si vous créez des sous-réseaux IPv4 uniquement au lieu de sous-réseaux double pile, votre table de routage inclut uniquement les routes IPv4.

Destination Cible
10,0.0.0/16 locale
2001:db8:1234:1a00::/56 locale
0.0.0.0/0 igw-id
::/0 igw-id

Voici un exemple de table de routage pour les sous-réseaux privés, avec des routes locales pour IPv4 et IPv6. Si vous avez créé des sous-réseaux IPv4 uniquement, votre table de routage inclut uniquement la route IPv4. La dernière route envoie le trafic destiné à Amazon S3 vers le point de terminaison d'un VPC de la passerelle.

Destination Cible
10,0.0.0/16 locale
2001:db8:1234:1a00::/56 local
s3-prefix-list-id s3-gateway-id

Sécurité

Pour cet exemple de configuration, vous créez un groupe de sécurité pour l'équilibreur de charge, un groupe de sécurité pour les serveurs Web et un groupe de sécurité pour les serveurs de base de données.

Équilibreur de charge

Le groupe de sécurité de votre Application Load Balancer ou Network Load Balancer doit autoriser le trafic entrant provenant des clients sur le port d'écoute de l'équilibreur de charge. Pour accepter du trafic en provenance de n'importe quel endroit sur Internet, spécifiez 0.0.0.0/0 en tant que source. Le groupe de sécurité de l'équilibreur de charge doit également autoriser le trafic sortant de l'équilibreur de charge vers les instances cibles sur le port d'écoute de l'instance et sur le port de surveillance de l'état.

Serveurs Web

Les règles de groupe de sécurité suivantes permettent aux serveurs Web de recevoir le trafic HTTP et HTTPS en provenance de l'équilibreur de charge. Vous pouvez éventuellement autoriser les serveurs web à recevoir du trafic SSH ou RDP en provenance de votre réseau. Les serveurs Web peuvent envoyer du trafic SQL ou MySQL à vos serveurs de base de données.

Entrant
Source Protocole Plage de ports Description
ID du groupe de sécurité pour l'équilibreur de charge TCP 80 Autorise l'accès HTTP entrant depuis l'équilibreur de charge
ID du groupe de sécurité pour l'équilibreur de charge TCP 443 Autorise l'accès HTTPS entrant depuis l'équilibreur de charge
Plage d'adresses IPv4 publiques de votre réseau TCP 22 (Facultatif) Autorise l'accès SSH entrant à partir des adresses IP IPv4 de votre réseau
Plage d'adresses IPv6 de votre réseau TCP 22 (Facultatif) Autorise l'accès SSH entrant à partir des adresses IP IPv6 de votre réseau
Plage d'adresses IPv4 publiques de votre réseau TCP 3389 (Facultatif) Autorise l'accès RDP entrant à partir des adresses IP IPv4 de votre réseau
Plage d'adresses IPv6 de votre réseau TCP 3389 (Facultatif) Autorise l'accès RDP entrant à partir des adresses IP IPv6 de votre réseau
Sortant
Destination Protocole Plage de ports Description
ID du groupe de sécurité pour les instances exécutant Microsoft SQL Server

TCP

1433

Autorise l'accès Microsoft SQL Server sortant aux serveurs de base de données

ID du groupe de sécurité pour les instances exécutant MySQL

TCP

3306

Autorise l'accès MySQL sortant aux serveurs de base de données

Serveurs de base de données

Les règles de groupe de sécurité suivantes autorisent les serveurs de base de données à recevoir des demandes de lecture et écriture depuis les serveurs web.

Entrant
Source Protocole Plage de ports Commentaires
ID du groupe de sécurité du serveur web TCP 1433 Autorise l'accès entrant Microsoft SQL Server depuis les serveurs web
ID du groupe de sécurité du serveur web TCP 3306 Autorise l'accès entrant MySQL Server depuis les serveurs web
Sortant
Destination Protocole Plage de ports Commentaires
0.0.0.0/0 TCP 80 Autorise l'accès HTTP sortant à Internet sur IPv4
0.0.0.0/0 TCP 443 Autorise l'accès HTTPS sortant à Internet sur IPv4

Pour de plus amples informations sur les groupes de sécurité pour les instances DB Amazon RDS, veuillez consulter Contrôle d'accès par groupes de sécurité dans le Guide de l'utilisateur Amazon RDS.

Créer le VPC

Utilisez la procédure suivante pour créer un VPC avec un sous-réseau public et un sous-réseau privé dans deux zones de disponibilité.

Pour créer le VPC
  1. Ouvrez la console Amazon VPC à l’adresse https://console.aws.amazon.com/vpc/.

  2. Sur le tableau de bord, choisissez Créer un VPC.

  3. Sous Ressources à créer, choisissez VPC et plus encore.

  4. Configurez le VPC :

    1. Maintenez la génération automatique de balises de nom sélectionnée pour créer des balises de nom pour les ressources VPC ou désactivez-la pour fournir vos propres balises de nom pour les ressources VPC.

    2. Pour Bloc d'adresse CIDR IPv4, vous pouvez conserver la suggestion par défaut ou saisir le bloc d'adresse CIDR requis par votre application ou votre réseau. Pour plus d’informations, consultez Blocs CIDR VPC.

    3. (Facultatif) Si votre application communique à l'aide d'adresses IPv6, choisissez Bloc d'adresse CIDR IPv6, Bloc d'adresse CIDR IPv6 fourni par Amazon.

    4. Choisissez une option de location. Cette option définit si les instances EC2 que vous lancez dans le VPC s'exécuteront sur du matériel partagé avec d'autres Comptes AWS ou sur du matériel dédié à votre seul usage. Si vous choisissez la location du VPC, les instances EC2 Default lancées dans ce VPC utiliseront l'attribut de location spécifié lors du lancement de l'instance. Pour plus d'informations, consultez Lancer une instance à l'aide de paramètres définis dans le guide de l'utilisateur Amazon EC2. Si vous choisissez que la location du VPC est Dedicated, les instances s'exécutent toujours en tant qu'instances dédiées sur du matériel dédié à votre utilisation.

  5. Configurez les sous-réseaux :

    1. Pour Nombre de zones de disponibilité, choisissez 2 afin de pouvoir lancer des instances dans deux zones de disponibilité et améliorer ainsi la résilience.

    2. Pour Number of public subnets (Nombre de sous-réseaux publics), choisissez 2.

    3. Pour Number of private subnets (Nombre de sous-réseaux privés), choisissez 2.

    4. Vous pouvez conserver les blocs d'adresse CIDR par défaut pour les sous-réseaux, ou bien vous pouvez étendre les blocs d'adresse CIDR personnalisés des sous-réseaux et entrer un bloc d'adresse CIDR. Pour plus d’informations, consultez Blocs d'adresse CIDR de sous-réseau.

  6. Pour Passerelles NAT, conservez la valeur par défaut, Aucune.

  7. Pour Points de terminaison des VPC, conservez la valeur par défaut, Passerelle S3. Bien que cela n'ait aucun effet (sauf si vous accédez à un compartiment S3), l'activation de ce point de terminaison d'un VPC n'entraîne aucuns frais.

  8. Pour Options DNS, conservez les deux options sélectionnées. Vos serveurs web recevront des noms d'hôtes DNS publics qui correspondent à leurs adresses IP publiques.

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

Déploiement de votre application

Idéalement, vous avez déjà testé vos serveurs web et de base de données dans un environnement de développement ou de test et créé les scripts ou les images que vous utiliserez pour déployer votre application en production.

Vous pouvez utiliser des instances EC2 pour vos serveurs web. Il existe plusieurs façons de déployer des instances EC2. Par exemple :

Afin d'améliorer la disponibilité, vous pouvez utiliser Amazon EC2 Auto Scaling pour déployer des serveurs dans plusieurs zones de disponibilité et maintenir la capacité de serveur minimale requise par votre application.

Vous pouvez utiliser Elastic Load Balancing pour répartir le trafic de manière uniforme entre vos serveurs. Vous pouvez attacher un équilibreur de charge à un groupe Auto Scaling.

Vous pouvez utiliser des instances EC2 pour vos serveurs de base de données ou l'un de nos types de bases de données sur mesure. Pour plus d'informations, voir Bases de données sur AWS : Comment choisir.

Tester votre configuration

Après avoir terminé le déploiement de votre application, vous pouvez la tester. Si votre application ne parvient pas à envoyer ou à recevoir le trafic que vous attendez, vous pouvez utiliser Reachability Analyzer pour résoudre les problèmes. Par exemple, Reachability Analyzer peut identifier les problèmes de configuration liés à vos tables de routage ou à vos groupes de sécurité. Pour plus d'informations, reportez-vous au Guide de l'Analyseur d'accessibilité.

Nettoyage

Lorsque vous avez terminé avec cette configuration, vous pouvez le supprimer. Avant de supprimer le VPC, vous devez résilier vos instances et supprimer l'équilibreur de charge. Pour plus d'informations, voir Supprimer votre VPC.