REL09-BP04 Effectuer une récupération périodique des données pour vérifier l’intégrité et les processus de sauvegarde
Confirmez que l’implémentation de votre processus de sauvegarde répond à vos objectifs de délai de reprise (RTO) et à vos objectifs de point de reprise (RPO) en effectuant un test de reprise.
Résultat souhaité : les données des sauvegardes sont périodiquement récupérées à l’aide de mécanismes bien définis pour garantir que la récupération est conforme à l’objectif de délai de reprise (RTO) établi pour la charge de travail. Vérifiez que la restauration à partir d’une sauvegarde aboutit à une ressource qui contient les données d’origine sans qu’aucune d’entre elles ne soit corrompue ou inaccessible, et avec une perte de données conforme à l’objectif de point de reprise (RPO).
Anti-modèles courants :
-
Restauration d’une sauvegarde, mais sans interroger ou récupérer des données pour vérifier l’utilisation de la restauration.
-
Supposer qu’une sauvegarde existe.
-
Supposer que la sauvegarde d’un système est pleinement opérationnelle et que les données peuvent être récupérées à partir de celle-ci.
-
Supposer que le temps de restauration ou de récupération des données à partir d’une sauvegarde est conforme au RTO de la charge de travail.
-
Supposer que les données contenues dans la sauvegarde sont conformes au RPO de la charge de travail.
-
Effectuez une restauration si nécessaire, sans utiliser de runbook ou en dehors d’une procédure automatisée établie.
Avantages du respect de cette bonne pratique : le test de la récupération des sauvegardes garantit que les données peuvent être restaurées en cas de besoin sans craindre qu’elles soient manquantes ou corrompues, que la restauration et la récupération sont possibles conformément au RTO de la charge de travail et que toute perte de données est conforme au RPO de la charge de travail.
Niveau d’exposition au risque si cette bonne pratique n’est pas respectée : moyen
Directives d’implémentation
Tester la fonctionnalité de sauvegarde et de restauration permet de garantir que ces actions peuvent être effectuées pendant une panne. Restaurez périodiquement les sauvegardes vers un nouvel emplacement et exécutez des tests pour vérifier l’intégrité des données. Certains tests courants doivent être effectués pour vérifier que toutes les données sont disponibles, qu’elles ne sont pas corrompues, qu’elles sont accessibles et que toute perte de données ne dépasse pas le RPO de la charge de travail. Ces tests peuvent également contribuer à déterminer si les mécanismes de récupération sont suffisamment rapides pour s’adapter au RTO de la charge de travail.
Avec AWS, vous pouvez mettre en place un environnement de test et restaurer vos sauvegardes afin d’évaluer le RTO et le RPO, et exécuter des tests sur le contenu et l’intégrité des données.
De plus, Amazon RDS et Amazon DynamoDB permettent une reprise ponctuelle (PITR). Grâce à la sauvegarde continue, vous pouvez restaurer votre jeu de données à l’état dans lequel il était à une date et une heure spécifiées.
Si toutes les données sont disponibles, si elles ne sont pas corrompues, si elles sont accessibles et si toute perte de données est conforme au RPO de la charge de travail. Ces tests peuvent également contribuer à déterminer si les mécanismes de récupération sont suffisamment rapides pour s’adapter au RTO de la charge de travail.
AWS Elastic Disaster Recovery offre des instantanés de récupération ponctuelle et continue des volumes Amazon EBS. Au fur et à mesure que les serveurs source sont répliqués, les états ponctuels sont chroniqués dans le temps en fonction de la politique configurée. Elastic Disaster Recovery vous aide à vérifier l’intégrité de ces instantanés en lançant des instances à des fins de test et d’analyse sans rediriger le trafic.
Étapes d’implémentation
-
Identifiez les sources de données qui sont actuellement sauvegardées et où ces sauvegardes sont stockées. Pour obtenir des conseils de mise en œuvre, consultez REL09-BP01 Identifier et sauvegarder toutes les données qui doivent être sauvegardées, ou reproduire les données à partir de sources.
-
Établissez des critères de validation des données pour chaque source de données. Différents types de données ont des propriétés différentes qui pourraient nécessiter des mécanismes de validation distincts. Réfléchissez à la manière dont ces données pourraient être validées avant de vous assurer que vous pouvez les utiliser en production. Certaines méthodes courantes de validation des données consistent à utiliser des propriétés de données et de sauvegarde telles que le type de données, le format, la somme de contrôle, la taille ou une combinaison de ces propriétés avec une logique de validation personnalisée. Par exemple, il peut s’agir d’une comparaison des valeurs de somme de contrôle entre la ressource restaurée et la source de données au moment de la création de la sauvegarde.
-
Établissez un RTO et un RPO de sorte à restaurer les données en fonction de l’ordre d’importance des données. Pour obtenir des conseils de mise en œuvre, consultez REL13-BP01 Définir les objectifs de reprise pour les temps d’arrêt et les pertes de données.
-
Évaluez votre capacité de récupération. Passez en revue votre stratégie de sauvegarde et de restauration pour déterminer si elle peut répondre au RTO et au RPO, et ajustez la stratégie si nécessaire. À l’aide de AWS Resilience Hub, vous pouvez exécuter une évaluation de votre charge de travail. Celle-ci se concentre sur la configuration de votre application par rapport à la stratégie de résilience et signale si vos objectifs RTO et RPO peuvent être atteints.
-
Effectuez un test de restauration avec les processus établis utilisés en production pour la restauration des données. Ces processus dépendent de la façon dont la source de données d’origine a été sauvegardée, du format et de l’emplacement de stockage de la sauvegarde elle-même, ou ils varient selon que les données sont reproduites à partir d’autres sources. Par exemple, si vous utilisez un service géré tel que AWS Backup, cela peut être aussi simple que de restaurer la sauvegarde dans une nouvelle ressource. Si vous avez utilisé AWS Elastic Disaster Recovery vous pouvez lancer une simulation de récupération.
-
Validez la récupération des données à partir de la ressource restaurée en fonction des critères que vous avez définis précédemment pour la validation des données. Les données restaurées et récupérées contiennent-elles l’enregistrement/l’élément le plus récent au moment de la sauvegarde ? Ces données sont-elles conformes au RPO de la charge de travail ?
-
Mesurez le temps nécessaire à la restauration et à la récupération et comparez-le à votre RTO établi. Ce processus est-il conforme au RTO de la charge de travail ? Par exemple, comparez les horodatages du début du processus de restauration et de la fin de la validation de la récupération pour calculer la durée de ce processus. Tous les appels d’API AWS sont horodatés, et ces informations sont disponibles dans AWS CloudTrail. Bien que ces informations puissent fournir des détails sur le début du processus de restauration, l’horodatage indiquant la fin de la validation doit être enregistré par votre logique de validation. Si vous utilisez un processus automatisé, des services tels qu’Amazon DynamoDB
peuvent être utilisés pour stocker ces informations. En outre, de nombreux services AWS fournissent un historique des événements qui contient des informations horodatées indiquant quand certaines actions se sont produites. Dans AWS Backup, les actions de sauvegarde et de restauration sont appelées tâches, et ces tâches contiennent des informations d’horodatage dans le cadre de leurs métadonnées qui peuvent être utilisées pour mesurer le temps nécessaire à la restauration et à la récupération. -
Informez les parties prenantes si la validation des données échoue ou si le temps requis pour la restauration et la récupération dépasse le RTO établi pour la charge de travail. Lors de la mise en œuvre de l’automatisation à cette fin, comme dans cet atelier
, des services tels qu’Amazon Simple Notification Service (Amazon SNS) peuvent être utilisés pour envoyer des notifications push telles que des e-mails ou des SMS aux parties prenantes. Ces messages peuvent également être publiés sur des applications de messagerie telles qu’Amazon Chime, Slack ou Microsoft Teams ou utilisés pour créer des tâches sous forme d’OpsiTems à l’aide d’AWS Systems Manager OpsCenter. -
Automatisez ce processus pour qu’il s’exécute périodiquement. Par exemple, des services comme AWS Lambda ou une machine d’état dans AWS Step Functions peuvent être utilisés pour automatiser les processus de restauration et de récupération, et Amazon EventBridge peut être utilisé pour invoquer périodiquement ce flux de travail d’automatisation, comme indiqué dans le diagramme d’architecture ci-dessous. Découvrez comment automatiser la validation de récupération de données avec AWS Backup
. De plus, cet atelier Well-Architected apporte une expérience pratique sur une façon d’automatiser plusieurs des étapes indiquées ici.
Niveau d’effort pour le plan de mise en œuvre : modéré à élevé selon la complexité des critères de validation.
Ressources
Documents connexes :
Exemples connexes :