Comment déplacer une instance de base de données Amazon RDS d'un sous-réseau public vers un sous-réseau privé au sein du même VPC ?

Dernière mise à jour : 23/06/2022

J'ai une instance de base de données Amazon Relational Database Service (Amazon RDS) qui se trouve dans un sous-réseau public. Je souhaite déplacer mon instance de base de données d'un sous-réseau public vers un sous-réseau privé au sein du même VPC et rendre mon instance de base de données complètement privée. Comment dois-je procéder ?

Brève description

Amazon RDS ne fournit pas d'option pour changer le groupe de sous-réseau de votre instance de base de données, au sein du même VPC. Toutefois, vous pouvez utiliser la méthode de contournement de cet article pour déplacer votre instance de base de données d'un sous-réseau public vers un sous-réseau privé. En effectuant cette action, votre instance de la base de données devient privée.

Cette méthode présente un certain nombre d'avantages, notamment :

  • Vous n'avez pas besoin de créer une nouvelle instance de base de données
  • Vous n'avez pas besoin d'utiliser le processus d'instantané-restauration
  • Elle minimise le temps d'arrêt lié à la création d'une nouvelle instance et au détournement du trafic. Le seul temps d'arrêt que vous voyez est le temps de basculement.

Solution

Désactiver les déploiements multi-AZ et l'accessibilité publique sur votre instance de base de données

Si votre instance de base de données est déjà configurée sur Single-AZ avec le paramètre Public accessibility (Accessibilité publique) défini sur No (Non), passez cette étape.

Pour modifier votre instance de base de données afin de désactiver les déploiements Multi-AZ, procédez comme suit :

  1. Connectez-vous à la console Amazon RDS.
  2. Dans le panneau de navigation, choisissez Databases (Bases de données),puis choisissez l'instance de base de données que vous voulez modifier.
  3. Choisissez Modify (Modifier).
  4. Dans la page Modify DB Instance (Modifier l'instance de base de données), pour Multi-AZ deployment (Déploiement multi-AZ) et Public accessibility (Accessibilité publique), choisissez No (Non).
  5. Choisissez Continue (Continuer), puis passez en revue le résumé des modifications.
  6. Choisissez Apply immediately (Appliquer immédiatement) pour appliquer vos modifications.
  7. Vérifiez vos modifications et, si elles sont correctes, choisissez Modifier l'instance de base de données à enregistrer.

Découvrir l'adresse IP de votre instance de base de données

Une fois que votre instance de base de données est revenue à l'état Available (Disponible), exécutez dig sur le point de terminaison de l'instance de base de données pour trouver son adresse IP sous-jacente :

dig <rds-endpoint>

Sortie :

db-RDS-instance.xxxxxxxx.us-east-1.rds.amazonaws.com. 5 IN A 172.39.5.213

À partir de l'adresse IP privée, vous pouvez trouver le sous-réseau utilisé par votre instance principale.

Dans cet exemple, la liste des CIDR de sous-réseau est la suivante :

  • sous-réseau1 -> 172.39.5.0/24
  • sous-réseau2 -> 172.39.4.0/24

Étant donné que l'adresse IP tombe sous 179.39.5.0/24, vous pouvez conclure que l'instance est placée dans sous-réseau1.

Supprimer les sous-réseaux publics et ajouter des sous-réseaux privés sur votre instance de base de données

Ajoutez tous les sous-réseaux privés requis dans le groupe de sous-réseaux. Supprimez également tous les sous-réseaux publics du groupe de sous-réseaux à l'exception de celui qui est utilisé par votre principal. Dans l'exemple précédent, vous supprimez tout sauf subnet1 (sous-réseau1) car il est utilisé par votre instance de base de données.

Remarque : un sous-réseau privé est un sous-réseau associé à une table de routage qui n'a pas d'acheminement pour une passerelle Internet.

  1. Connectez-vous à la console Amazon RDS.
  2. Dans le panneau de navigation, choisissez Groupes de sous-réseaux, puis choisissez le groupe de sous-réseaux associé à votre instance de base de données.
  3. Choisissez Edit (Modifier).
  4. Dans la section Add subnets (Ajouter des sous-réseaux), choisissez la zone de disponibilité et les sous-réseaux privés que vous voulez ajouter.
  5. Sélectionnez les sous-réseaux publics que vous voulez supprimer, puis choisissez Remove (Supprimer).
  6. Choisissez Save (Enregistrer).

Activer Multi-AZ sur votre instance de base de données

Modifiez l'instance de base de données pour activer le déploiement Multi-AZ. Le nouveau secondaire est lancé dans l'un des sous-réseaux privés restants.

Redémarrer votre instance de base de données avec basculement et désactiver le déploiement Multi-AZ

Lorsque votre instance de base de données bascule, le secondaire, qui utilise l'adresse IP privée, devient le principal et le sous-réseau public devient le secondaire.

Après avoir redémarré votre instance de base de données avec basculement, supprimez le secondaire qui se trouve maintenant dans le sous-réseau public. Pour ce faire, modifiez l'instance de base de données afin de désactiver à nouveau la fonction Multi-AZ. Pour ce faire, définissez Multi-AZ deployment (Déploiement Multi-AZ) sur No (Non).

Supprimer le sous-réseau public

  1. Supprimez le sous-réseau public restant du groupe de sous-réseaux.
    Remarque : la suppression de sous-réseaux du groupe de sous-réseaux est une configuration du côté RDS. Cela n'implique pas la suppression de sous-réseaux du VPC.
  2. Vérifiez qu'il n'y a que des sous-réseaux privés dans le groupe de sous-réseaux.
  3. Si votre instance de base de données était auparavant en déploiement multi-AZ, réactivez le déploiement multi-AZ.

Cette solution implique le basculement et l'activation/désactivation de Multi-AZ. Il y a donc peu de choses à considérer. Pour plus d'informations, consultez Déploiements d'instances de base de données multi-AZ.

Remarque : cette méthode est spécifique aux instances de base de données RDS. Si votre instance de base de données fait partie du cluster Aurora, vous pouvez utiliser l'option de clonage. Ou vous pouvez suivre les étapes de cet article, mais au lieu de désactiver Multi-AZ, vous devez supprimer et recréer les lecteurs.


Cet article vous a-t-il été utile ?


Avez-vous besoin d'aide pour une question technique ou de facturation ?