11 votes

Comment déplacer la base de données RDS vers un VPC différent

Je n'ai pas sélectionné de VPC lors de la création d'une base de données MySQL RDS, donc elle l'a créée à l'intérieur d'un VPC "par défaut" généré automatiquement. Je suis maintenant incapable de l'ajouter à l'un de mes groupes de sécurité prédéfinis, ou d'y accéder à partir des instances dans mon VPC existant. La solution évidente serait de la déplacer vers le VPC approprié, mais il ne semble pas y avoir d'option pour modifier le VPC sur l'écran "Modifier l'instance de base de données". Existe-t-il un moyen de sélectionner un VPC différent, ou ma seule option est-elle de supprimer la base de données et de la recréer à l'intérieur du VPC correct?

12voto

augustss Points 402

Amazon a récemment publié un communiqué de presse annonçant que vous pouvez désormais changer le VPC pour les instances RDS existantes :

Vous pouvez désormais facilement modifier le Cloud virtuel privé d'Amazon (Amazon VPC) utilisé par votre instance de base de données Amazon RDS. Vous pouvez spécifier un nouveau VPC pour une instance DB existante déployée en configuration Single-AZ en utilisant la Console de gestion Amazon RDS, l'API Amazon RDS ou les outils de ligne de commande AWS. De plus, si vous exécutez votre instance DB dans l'environnement EC2-Classic, vous pouvez passer à l'environnement EC2-VPC en modifiant votre instance DB existante. Si votre compte AWS a été créé avant le 2013-12-04, vous utilisez potentiellement RDS dans l'environnement EC2-Classic.

Cette fonctionnalité est disponible pour toutes les régions prises en charge par Amazon RDS, et est disponible pour toutes les versions prises en charge de MySQL, MariaDB, Microsoft SQL Server, Oracle et PostgreSQL.

Notez que cette fonctionnalité n'est prise en charge que pour les instances DB fonctionnant en déploiement Single-AZ. Si vous souhaitez changer l'environnement VPC d'une instance DB en déploiement Multi-AZ, vous pouvez temporairement modifier votre instance en un déploiement Single-AZ, puis réactiver Multi-AZ une fois que vous avez changé vers l'environnement EC2-VPC.

2 votes

Une chose à noter: Vous pouvez changer le VPC mais la zone de disponibilité de la base de données NE changera PAS. Donc, si votre base de données est dans un VPC sur le sous-réseau us-west-2a mais que l'autre n'a pas de sous-réseau dans cette AZ, il ne vous permettra pas de passer à ce VPC.

9voto

Samat Jain Points 165

Simple - prenez un instantané de votre instance RDS actuelle, puis restaurez cet instantané sur une nouvelle instance dans votre VPC.

2 votes

Le menu déroulant VPC était désactivé pour moi jusqu'à ce que j'ai dit "oui" au déploiement Multi-AZ.

0 votes

Comment dois-je gérer les données qui sont ajoutées pendant le chargement de la snapshot? Y a-t-il un moyen de minimiser le temps d'arrêt ?

0 votes

RDS est parfaitement capable de servir de solace MySQL à un autre système, donc c'est peut-être la voie à suivre.

3voto

MarkAWard Points 153

Pour éviter les temps d'arrêt lors de la migration vers un nouveau VPC, vous devez configurer des instances de base de données Multi-AZ pour votre cluster RDS d'origine afin que la création d'un instantané ne provoque pas une brève suspension d'E/S. Le cluster doit également avoir l'activation du journal binaire afin que lorsque vous chargez votre instantané dans le nouveau VPC, vous pouvez configurer la réplication entre les bases de données pour restaurer les données qui ont pu être insérées ou mises à jour après la création de l'instantané.

Suivez ce guide de la documentation RDS

ÉDITER

J'ai dû faire cela avec RDS Aurora et apporter de légères modifications au guide ci-dessus :

  • Lors de la restauration à partir d'un instantané Aurora, vous ne pouvez pas définir les groupes de paramètres pour que l'instance reçoive automatiquement les paramètres par défaut. Une fois l'instance disponible, modifiez les paramètres pour inclure la journalisation binaire et redémarrez-la.

  • Exécuter SHOW MASTER STATUS\G ne vous donnera pas le bon fichier journal binaire et la position de la base de données originale au moment où l'instantané a été pris, le redémarrage de l'instance créant un nouveau fichier journal binaire. Au lieu de cela, exécutez SHOW BINARY LOGS; pour trouver le fichier journal précédent et la taille du fichier et utilisez ces valeurs lors de la configuration de la réplication.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X