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 apprendre à créer et à gérer des sauvegardes, ainsi qu'à restaurer une instance Filestore à partir d'une sauvegarde, consultez la page Sauvegarder et restaurer des partages de fichiers.

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. Elle fonctionne avec les instances HDD de base et SSD de base. Lorsqu'une sauvegarde d'un partage de fichiers est créée, celui-ci peut être modifié ou supprimé sans affecter la sauvegarde. Un partage de fichiers peut être entièrement 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 spécifiée par l'utilisateur 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 globalement adressables et peuvent servir à restaurer des partages de fichiers vers n'importe quelle région GCP, 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. Cela signifie que la première sauvegarde que vous créez est une copie complète du partage de fichiers, mais les sauvegardes suivantes n'incluent que les nouvelles données ou les données modifiées qui n'existent pas dans la sauvegarde précédente. Les données non modifiées contenues dans les sauvegardes précédentes sont référencées, mais pas copiées, dans des sauvegardes plus récentes. Si une sauvegarde plus ancienne est supprimée, ses données uniques sont copiées sur la dernière 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 Les nouvelles modifications des données de partage de fichiers peuvent ou non être incluses dans la sauvegarde. Les écritures stables confirmées par l'instance avant le lancement de la sauvegarde sont incluses.
Finalisation… Selon la taille Les nouvelles modifications apportées aux données de partage de fichiers ne sont pas incluses dans la sauvegarde.
Prête 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 us-west1-c et que vous souhaitiez protéger vos données en cas de sinistre impliquant 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 les données d'une instance Filestore contre les modifications involontaires, vous pouvez planifier une tâche qui crée régulièrement des sauvegardes de l'instance dans la même région que l'instance. En cas de perte de données, vous pouvez parcourir la liste des sauvegardes pour identifier celle qui comporte la version du fichier nécessaire, créer une instance Filestore à partir de la sauvegarde, puis l'installer sur le même client en tant qu'instance d'origine, puis 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 toutes les données non sauvegardées seront perdues.

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

Imaginons que vous disposez d'une configuration de base de données 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. Si vous devez migrer vos données vers une autre région, vous pouvez créer une sauvegarde et utiliser la sauvegarde pour créer une instance Filestore dans la région de votre choix 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

Lorsque vous créez une sauvegarde d'un partage de fichiers dans une région avec des sauvegardes existantes de ce partage de fichiers, les sauvegardes existantes sont utilisées comme base pour créer la sauvegarde. Cela signifie que le système peut créer une sauvegarde plus rapidement qu'en l'absence de sauvegardes existantes. 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 ne sauvegarder que les données à sauvegarder, nous vous recommandons d'organiser vos données sur des partages de fichiers distincts. Par exemple :

  • 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