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 ?

Date de la dernière mise à jour : 09/12/2020

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 fourni pas d'option pour modifier le groupe de sous-réseaux de votre instance de base de données, avec le 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é et rendre votre instance de base de données privée.

Les avantages de l'utilisation de cette méthode comprennent :

  • Évite la nécessité de créer une nouvelle instance de base de données
  • Évite d'utiliser le processus de restauration d'instantané
  • Minimise les temps d'arrêt liés à 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.

Ré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à définie sur Single-AZ avec le paramètre d'accessibilité publique défini sur Non, vous pouvez ignorer cette étape et passer à l'étape suivante pour découvrir votre adresse IP. 

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 AWS RDS.
  2. Dans le panneau de navigation, choisissez Bases de données,puis choisissez l'instance de base de données que vous souhaitez modifier.
  3. Choisissez Modifier.
  4. Dans la page Modifier l'instance de base de données, pour le déploiement multi-AZ et l'accessibilité publique, choisissez Non.
  5. Choisissez Continuer, puis passez en revue le résumé des modifications.
  6. Choisissez 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écouvrez 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 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>

File d'attente:

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 qu'il utilise. Il s'agit du 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.

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

Ajoutez tous les sous-réseaux privés obligatoires 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 ci-dessus, vous supprimez tout sauf 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 de route 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 Modifier.
  4. Dans la section Ajouter des sous-réseaux , choisissez la zone de disponibilité et les sous-réseaux privés que vous souhaitez ajouter.
  5. Sélectionnez les sous-réseaux publics à supprimer, puis choisissez Supprimer.
  6. Sélectionnez Save (Enregistrer).

Activez 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émarrez votre instance de base de données avec basculement et désactivez 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, vous devez supprimer le secondaire qui se trouve maintenant dans le sous-réseau public. Pour ce faire, modifiez votre instance de base de données pour désactiver Multi-AZ, à nouveau. Pour ce faire, définissez le déploiement Multi-AZ sur 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 présents 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-la.

Cette solution implique le basculement et la désactivation/l'activation de Multi-AZ, il y a donc peu de choses à considérer. Pour plus d'informations, voir Modifier une instance de base de données pour qu'elle soit un déploiement multi-AZ.

Remarque : cette méthode est très spécifique pour les 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 ?


Besoin d'aide pour une question technique ou de facturation ?