Migrer une base de données PostgreSQL locale vers Aurora PostgreSQL - Recommandations AWS

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.

Migrer une base de données PostgreSQL locale vers Aurora PostgreSQL

Créée par Baji Shaik (AWS) et Jitender Kumar (AWS)

Environnement : PoC ou pilote

Source : base de données PostgreSQL locale

Cible : compatible avec Aurora PostgreSQL

Type R : Replateforme

Charge de travail : Open source

Technologies : migration ; bases de données

Services AWS : Amazon Aurora ; AWS DMS

Récapitulatif

L'édition compatible avec Amazon Aurora PostgreSQL associe les performances et la disponibilité des bases de données commerciales haut de gamme à la simplicité et à la rentabilité des bases de données open source. Aurora offre ces avantages en étendant le stockage sur trois zones de disponibilité dans la même région AWS et en prenant en charge jusqu'à 15 instances de réplication en lecture pour augmenter les charges de travail de lecture et fournir une haute disponibilité au sein d'une même région. En utilisant une base de données globale Aurora, vous pouvez répliquer des bases de données PostgreSQL dans un maximum de cinq régions pour un accès en lecture à distance et une reprise après sinistre en cas de défaillance d'une région. Ce modèle décrit les étapes de migration d'une base de données source PostgreSQL locale vers une base de données compatible Aurora PostgreSQL. Le modèle inclut deux options de migration : à l'aide d'AWS Data Migration Service (AWS DMS) ou à l'aide d'outils PostgreSQL natifs (tels que pg_dump, pg_restore et psql) ou d'outils tiers. 

Les étapes décrites dans ce modèle s'appliquent également aux bases de données PostgreSQL cibles sur les instances Amazon Relational Database Service (Amazon RDS) et Amazon Elastic Compute Cloud (Amazon EC2).

Conditions préalables et limitations

Prérequis

Limites

Versions du produit

Architecture

Pile technologique source

  • Base de données PostgreSQL locale

Pile technologique cible

  • Instance de base de données compatible avec Aurora PostgreSQL

Architecture de la source

Architecture source pour la base de données PostgreSQL locale

Architecture cible

Architecture cible pour la base de données PostgreSQL sur Amazon Aurora

Architecture de migration des données

Utilisation d'AWS DMS

Migration d'une base de données PostgreSQL locale vers Aurora à l'aide d'AWS DMS

Utilisation des outils PostgreSQL natifs

Migration d'une base de données PostgreSQL locale vers Aurora à l'aide de pg_dump et pg_restore

Outils

  • AWS Database Migration Service (AWS DMS) vous aide à migrer des magasins de données vers le cloud AWS ou entre des combinaisons de configurations cloud et sur site. Ce service prend en charge différentes sources et bases de données cibles. Pour plus d'informations sur la façon de valider les versions et éditions des bases de données source et cible PostgreSQL prises en charge pour une utilisation avec AWS DMS, consultez la section Utilisation d'une base de données PostgreSQL comme source AWS DMS. Nous vous recommandons d'utiliser la dernière version d'AWS DMS pour bénéficier du support le plus complet en termes de versions et de fonctionnalités.

  • Les outils natifs de PostgreSQL incluent pg_dump, pg_restore et psql.

Épopées

TâcheDescriptionCompétences requises

Validez les versions de base de données source et cible.

Si vous utilisez AWS DMS, assurez-vous que vous utilisez une version compatible de PostgreSQL.

DBA

Identifiez le type de stockage et les exigences en matière de capacité.

  1. Calculez le stockage alloué à l'instance de base de données source.

  2. Rassemblez les mesures de croissance historiques pour l'instance de base de données source.

  3. Anticipez les prévisions de croissance futures pour l'instance de base de données cible.

  4. Allouez le stockage en calculant le nombre total d'IOPS en lecture et en écriture sur la base de données source. Un volume SSD à usage général (gp2) fournit 3 IOPS pour chaque Go de stockage.

DBA, administrateur système

Choisissez le type d'instance, la capacité, les fonctionnalités de stockage et les fonctionnalités réseau appropriés.

Déterminez les exigences de calcul de l'instance de base de données cible. Passez en revue les problèmes de performances connus susceptibles de nécessiter une attention supplémentaire. Tenez compte des facteurs suivants pour déterminer le type d'instance approprié :

  • Utilisation du processeur de l'instance de base de données source

  • IOPS (opérations de lecture et d'écriture) pour l'instance de base de données source

  • Empreinte mémoire sur l'instance de base de données source

Pour plus d'informations, consultez les classes d'instance de base de données Aurora dans la documentation Aurora.

DBA, administrateur système

Identifiez les exigences de sécurité d'accès au réseau pour les bases de données source et cible.

Déterminez les groupes de sécurité appropriés qui permettraient à l'application de communiquer avec la base de données.

DBA, administrateur système

Identifiez la stratégie de migration des applications.

  • Déterminez la stratégie de migration en fonction de la complexité de votre application. 

  • Déterminez l'objectif de temps de restauration (RTO) et l'objectif de point de restauration (RPO) pour l'application, et planifiez le passage en conséquence.

DBA, propriétaire de l'application, administrateur système
TâcheDescriptionCompétences requises

Créez un VPC.

Créez un nouveau cloud privé virtuel (VPC) pour l'instance de base de données cible.

Administrateur de systèmes

Créez des groupes de sécurité.

Créez un groupe de sécurité au sein du VPC (comme indiqué dans l'épopée précédente) pour autoriser les connexions entrantes à l'instance de base de données.

Administrateur de systèmes

Configurez et démarrez le cluster de base de données Aurora.

Créez l'instance de base de données cible avec le nouveau VPC et le nouveau groupe de sécurité, puis démarrez l'instance.

Administrateur de systèmes
TâcheDescriptionCompétences requises

Effectuez les étapes préalables à la migration.

  1. Nettoyez les données de la base de données source.

  2. Créez une instance de réplication.

  3. Créez des points de terminaison source et cible.

  4. Identifiez le nombre de tables et d'objets disponibles à migrer.

DBA

Terminez les étapes de migration.

  1. Supprimez les contraintes et les déclencheurs de clé étrangère sur la base de données cible.

  2. Supprimez les index secondaires de la base de données cible.

  3. Utilisez une tâche de chargement complet pour migrer les données de la base de données source vers la base de données cible.

  4. Activez les clés étrangères.

  5. Si vous utilisez la migration instantanée et que votre application nécessite un temps d'arrêt minimal, activez la capture des données relatives aux modifications (CDC) pour répliquer les modifications en cours

  6. Activez les déclencheurs.

  7. Mettez à jour les séquences.

  8. Validez les données source et cible.

DBA

Validez les données.

Pour vous assurer que vos données ont été migrées correctement de la source vers la cible, suivez les étapes de validation des données décrites dans la documentation AWS DMS.

DBA
TâcheDescriptionCompétences requises

Préparez la base de données source.

  1. Créez un répertoire pour stocker la sauvegarde pg_dump si elle n'existe pas déjà.

  2. Créez un utilisateur de migration autorisé à exécuter pg_dump sur des objets de base de données.

  3. Connectez-vous à l'instance EC2 et exécutez la sauvegarde pg_dump.

Pour plus d'informations, consultez la documentation pg_dump et la procédure pas à pas dans la documentation AWS DMS.

DBA

Préparez la base de données cible.

  1. Créez un utilisateur de migration autorisé à utiliser pg_restore sur les objets de base de données.

  2. Importez le dump de la base de données à l'aide de pg_restore.

Pour plus d'informations, consultez la documentation pg_restore et la procédure pas à pas dans la documentation AWS DMS.

DBA

Validez les données.

  1. Comparez le nombre d'objets de base de données entre les bases de données source et cible.

  2. Résolvez les écarts constatés entre le nombre d'objets.

DBA
TâcheDescriptionCompétences requises

Suivez la stratégie de migration des applications.

Mettez en œuvre la stratégie de migration des applications que vous avez créée dans le premier épisode épique.

DBA, propriétaire de l'application, administrateur système
TâcheDescriptionCompétences requises

Basculez les clients de l'application vers la nouvelle infrastructure.

  1. Arrêtez tous les services applicatifs et les connexions client qui pointent vers la base de données PostgreSQL locale.

  2. Exécutez les tâches AWS DMS.

  3. Configurez une tâche de restauration (inverse CDC de la base de données compatible Aurora PostgreSQL à la base de données PostgreSQL locale) si nécessaire.

  4. Validez les données.

  5. Démarrez les services d'application sur la nouvelle cible en configurant Amazon Route 53 sur la nouvelle instance de base de données compatible Aurora PostgreSQL.

  6. Ajoutez la surveillance Amazon CloudWatch et Performance Insights à votre nouvelle instance de base de données compatible Aurora PostgreSQL.

DBA, propriétaire de l'application, administrateur système

Si vous devez annuler la migration.

  1. Arrêtez tous les services d'application qui pointent vers la base de données compatible Aurora PostgreSQL.

  2. Annulez les modifications apportées à la base de données PostgreSQL locale source à l'aide de la tâche AWS DMS que vous avez créée dans l'article précédent.

  3. Arrêtez les tâches AWS DMS exécutées depuis la base de données PostgreSQL locale vers la base de données compatible Aurora PostgreSQL.

  4. Configurez l'application de manière à ce qu'elle pointe vers la base de données PostgreSQL locale source.

  5. Vérifiez que tous les déploiements de restauration sont terminés.

DBA, propriétaire de l'application
TâcheDescriptionCompétences requises

Arrêtez les ressources.

Arrêtez les ressources AWS temporaires.

DBA, administrateur système

Validez les documents.

Passez en revue et validez les documents du projet.

DBA, propriétaire de l'application, administrateur système

Collectez des statistiques.

Collectez des indicateurs concernant le délai de migration, le pourcentage d'économies réalisées manuellement par rapport aux coûts liés aux outils, etc.

DBA, propriétaire de l'application, administrateur système

Fermez le projet.

Clôturez le projet et faites part de vos commentaires.

DBA, propriétaire de l'application, administrateur système

Ressources connexes

Références

Ressources supplémentaires