Présentation des sauvegardes

Cette page décrit ce qu'est une sauvegarde, comment elle fonctionne, certains cas d'utilisation fréquents, et présente les bonnes pratiques à suivre pour créer et utiliser des sauvegardes. Pour savoir comment créer et gérer des sauvegardes, ainsi que pour restaurer une instance Filestore à partir d'une sauvegarde, consultez la page Sauvegarder les données pour la reprise après sinistre.

Qu'est-ce qu'une sauvegarde ?

Une sauvegarde Filestore est une copie d'un partage de fichiers qui inclut toutes les données et métadonnées de celui-ci à partir du moment où la sauvegarde est créée. Une fois la sauvegarde d'un partage de fichiers créée, le partage de fichiers d'origine peut être modifié ou supprimé sans affecter la sauvegarde. Un partage de fichiers peut être restauré à partir d'une sauvegarde en tant que nouvelle instance Filestore ou sur un partage de fichiers existant.

Les sauvegardes sont des ressources régionales qui restent dans la région que vous spécifiez au moment de la création. Vous pouvez créer des sauvegardes dans la même région que l'instance Filestore ou dans une autre région pour la redondance interrégionale. Les sauvegardes sont adressables à l'échelle mondiale et peuvent être utilisées pour restaurer des partages de fichiers dans n'importe quelle région, mais elles ne peuvent pas être partagées entre plusieurs projets.

Créer une sauvegarde

Les sauvegardes au sein d'une région sont créées de manière incrémentielle à partir des sauvegardes précédentes. La première sauvegarde que vous créez est une copie complète du partage de fichiers. Les sauvegardes suivantes n'incluent que les modifications non contenues dans la sauvegarde précédente. Les données non modifiées contenues dans des sauvegardes précédentes sont référencées dans des sauvegardes plus récentes, mais pas copiées dans celles-ci. Si une sauvegarde plus ancienne est supprimée, ses données uniques sont copiées sur la sauvegarde la plus récente et toutes les références de données internes sont automatiquement mises à jour.

La création de la sauvegarde est instantanée, mais son délai est proportionnel à la quantité de données copiées avant que la sauvegarde ne soit disponible. Au cours de cette période, la sauvegarde passe par trois états :

État Durée Description
Création Quelques secondes Capturez l'état actuel du partage de fichiers. Toute nouvelle modification des données de partage de fichiers peut ou non être incluse dans la sauvegarde. Les écritures stables confirmées par l'instance avant le lancement de la sauvegarde sont incluses.
Finalisation… Selon la taille Importer des données dans la sauvegarde Les nouvelles modifications apportées aux données de partage de fichiers ne seront pas incluses dans la sauvegarde.
Ready Jusqu'à la suppression de la sauvegarde La sauvegarde est prête à l'emploi.

Les sauvegardes sont automatiquement compressées une fois créées afin de réduire le coût. Effectuer une sauvegarde n'a aucune incidence sur la disponibilité ou les performances de l'instance Filestore.

Cohérence des sauvegardes

Les sauvegardes Filestore ont une sémantique de cohérence NFSv3. Avant le lancement d'une sauvegarde, toute écriture que l'instance Filestore reconnaît comme étant écrite dans un espace de stockage stable ou suivie d'un COMMIT confirmé est incluse dans la sauvegarde. Pour plus d'informations, consultez la section 3.3.7 du document RFC 811 NFSv3.

Cas d'utilisation courants

Sauvegarder des données pour la reprise après sinistre

Imaginons que vous disposiez d'une instance Filestore dans la région us-west1-c et que vous souhaitiez protéger vos données contre les sinistres qui affectent cette région. Vous pouvez programmer une tâche qui crée régulièrement des sauvegardes de cette instance vers une région distante, par exemple us- east1. Si un sinistre concerne us-west1-c, vous pouvez créer une instance dans un autre emplacement à partir d'une sauvegarde précédente.

Sauvegarder des données pour vous protéger contre les modifications accidentelles

Si vous souhaitez protéger vos données Filestore contre les modifications inattendues, vous pouvez planifier une tâche qui crée régulièrement des sauvegardes de l'instance. Si vous perdez des données, vous pouvez parcourir la liste des sauvegardes pour identifier celle avec la version du fichier nécessaire. Vous pouvez ensuite créer une instance Filestore à partir de la sauvegarde, l'installer sur le même client que l'instance d'origine et copier le fichier.

Vous pouvez également exécuter la commande diff sur les deux points d'installation pour vérifier les différences entre les données de l'instance d'origine et celles qui sont restaurées à partir de la sauvegarde. Une fois les données récupérées, vous pouvez supprimer l'instance restaurée. La sauvegarde est conservée pour une utilisation ultérieure.

Vous pouvez également effectuer une restauration sur place où les données de sauvegarde sont directement restaurées dans l'instance Filestore d'origine, en remplaçant toutes les données dessus par celles de la sauvegarde. Nous vous recommandons de créer une sauvegarde des données les plus récentes avant d'effectuer une restauration sur place, car vous risquez de perdre les données non sauvegardées.

Créer des clones de développement et de test

Imaginez que vous ayez une base de données configurée sur une instance Filestore qui diffuse le trafic de production. Si vous souhaitez exécuter un test avec une base de données comme entrée, vous pouvez créer une instance Filestore à partir d'une sauvegarde de l'instance de production pour le test. Ainsi, l'utilisation du test n'interfère pas avec l'environnement de production.

De même, vous pouvez utiliser des sauvegardes pour une analyse et une enquête hors connexion sans affecter la production.

Migrer des données

Une fois que vous avez créé une instance Filestore, vous ne pouvez plus modifier son emplacement ni son niveau de service. Pour migrer vos données vers une autre région, vous pouvez créer une sauvegarde de celle-ci, puis utiliser la sauvegarde pour créer une instance Filestore ou la restaurer sur une instance existante.

En outre, lorsque vous créez une instance Filestore à partir d'une sauvegarde, vous pouvez choisir entre les niveaux HDD de base et SDD de base, quel que soit le niveau de l'instance source.

Bonnes pratiques

Préparer votre partage de fichiers pour une meilleure cohérence des sauvegardes

La qualité d'une sauvegarde dépend de la capacité de votre application à effectuer la récupération à partir de sauvegardes créées lors d'importantes charges de travail d'écriture. Dans la plupart des cas, vous pouvez créer des sauvegardes avec une bonne cohérence même lorsque vos applications écrivent des données dans le partage de fichiers. Toutefois, si vos applications nécessitent une cohérence stricte, nous vous recommandons d'effectuer l'une ou plusieurs des opérations suivantes :

  • Utilisez l'installation de synchronisation. Pour en savoir plus, consultez la section "Option d'installation de synchronisation" dans nfs(5). Vous pouvez également ouvrir des fichiers avec les options O_DIRECT|O_SYNC. Pour en savoir plus, consultez open(2).
  • Mettez en veille les applications ou les processus du système d'exploitation qui écrivent des données dans le partage de fichiers, et forcez leur modification au partage de fichiers avant de lancer la sauvegarde. Pour en savoir plus, consultez fsync(2).
  • Si vos applications nécessitent une cohérence entre plusieurs partages, mettez en pause toutes les applications sur toutes les instances qui écrivent dans tous les partages de fichiers et créez des sauvegardes de tous les partages de fichiers avant de reprendre vos applications.
  • Si vous avez besoin d'une cohérence au niveau de l'application, arrêtez vos applications et désinstallez le partage de fichiers avant de créer une sauvegarde.

Utiliser des sauvegardes existantes comme référence pour réduire les délais de création des sauvegardes

Les sauvegardes existantes d'un partage de fichiers au sein d'une région sont utilisées comme références pour créer de nouvelles sauvegardes du partage de fichiers, ce qui réduit le temps de création de la sauvegarde. Par conséquent, nous vous recommandons d'effectuer les opérations suivantes:

  • Effectuez une nouvelle sauvegarde d'un partage de fichiers avant de supprimer la sauvegarde précédente de ce partage de fichiers.
  • Attendez que les nouvelles sauvegardes soient à l'état Ready avant de créer des sauvegardes suivantes du même partage de fichiers.

Planifier des sauvegardes pendant les heures creuses pour réduire le délai de création des sauvegardes

La création de sauvegardes pendant les heures creuses permet de réduire le temps nécessaire à la création d'une sauvegarde. Si vous planifiez des sauvegardes régulières de vos partages de fichiers, nous vous recommandons de les planifier pendant les heures creuses, lorsque cela est possible.

Les heures pleines pour la création de sauvegardes sont la fin de chaque jour ouvré et minuit dans la région où se trouve l'instance Filestore. Nous vous recommandons de créer vos sauvegardes le matin ou en début de journée.

Organiser vos données sur des instances Filestore distinctes pour optimiser l'efficacité

Une sauvegarde copie l'ensemble des données et métadonnées d'un partage de fichiers. Plus le partage de fichiers est important, plus la sauvegarde est grande, et plus le coût est élevé. Pour sauvegarder uniquement les données dont vous avez besoin, nous vous recommandons d'organiser vos données sur des partages de fichiers distincts, à savoir:

  • Stocker des données critiques avec différents modèles d'écriture ou différentes exigences de sauvegarde sur différents partages de fichiers
  • Limiter le nombre de sauvegardes à créer en conservant des données similaires dans un partage de fichiers.

Étape suivante