Présentation des instantanés

Cette page décrit ce qu'est un instantané, comment il fonctionne, certains cas d'utilisation fréquents, et présente les bonnes pratiques à suivre pour créer et utiliser des instantanés. Pour apprendre à créer et à gérer des instantanés, ainsi qu'à restaurer des données Filestore à partir d'un instantané, consultez la page Conserver l'état de vos données avec des instantanés.

Qu'est-ce qu'un instantané ?

Un instantané Filestore est l'état préservé de vos données de partage de fichiers au moment de la création de l'instantané. L'instance conserve l'état des fichiers modifiés après la création de l'instantané. Si vous souhaitez restaurer un fichier à l'état préservé dans l'instantané, vous pouvez écraser le fichier actuel avec le fichier du répertoire d'instantané approprié.

Les instantanés sont stockés dans l'instance Filestore et sont des ressources enfants de l'instance. Elles ne répliquent aucune donnée et ne consomment pas de capacité tant que les données de l'instance ne sont pas modifiées. Tous les instantanés d'une instance partagent des données communes, ce qui signifie que l'instance ne conserve que les différences entre les instantanés.

Création d'instantanés

Chaque répertoire d'un partage de fichiers contient un répertoire .snapshot masqué. Chaque répertoire .snapshot contient les instantanés de son répertoire parent que vous créez, par exemple:

volume1/
│   genomics-file.txt
│
└───.snapshot
    │
    ├───snap1/
    │        genomics-file.txt
    │
    ├───snap2/
    │        genomics-file.txt
    │
    └───snap3/
             genomics-file.txt

Les instantanés contiennent une vue en lecture seule de tous les fichiers et sous-répertoires qui existent dans son répertoire parent au moment de la création de l'instantané. Tous les attributs du fichier, tels que atime et ownership, ainsi que les autorisations de lecture et d'écriture sont conservés.

La création d'instantanés ne prend généralement pas plus de deux minutes, car elle n'implique pas la copie des données et n'affecte pas les performances de l'instance.

Vous pouvez avoir jusqu'à 240 instantanés par instance à la fois. La longueur combinée du nom du partage de fichiers et du nom de l'instantané peut atteindre 78 caractères.

Cohérence des instantanés

Les instantanés Filestore ont une sémantique de cohérence NFSv3. Avant le lancement de la capture d'un instantané, 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 l'instantané. Pour plus d'informations, consultez la section 3.3.7 du document RFC-1813 NFSv3.

Préparer votre partage de fichiers pour obtenir une cohérence optimale des instantanés

La qualité d'un instantané dépend de la capacité de votre application à effectuer la récupération à partir d'instantanés créés lors d'importantes charges de travail d'écriture. Dans la plupart des cas, vous pouvez créer des instantanés 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'option d'installation sync ou ouvrez des fichiers avec O_DIRECT|O_SYNC. Ces deux méthodes améliorent la cohérence, mais ne garantissent pas.
  • 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-les à vider leurs modifications au partage de fichiers avant de lancer la création de l'instantané. 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 instantanés 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 un instantané.

Sémantique NFS du répertoire .snapshot

Les répertoires .snapshot sont des répertoires masqués spéciaux contenant les instantanés pris pour son répertoire parent. Toutes les commandes NFS et bash fonctionnent pour ces répertoires avec les exceptions suivantes:

  • Vous ne pouvez pas créer un fichier ou un répertoire nommé .snapshot, car il est réservé aux instantanés.
  • Le répertoire .snapshot n'est pas répertorié dans les résultats des commandes READDIR ou READDIRPLUS, et n'est pas non plus répertorié dans la commande bash ls -a.
  • Pour passer à un répertoire .snapshot, vous devez saisir explicitement la chaîne .snapshot. Exemple : cd somedir/.snapshot/
  • La saisie semi-automatique pour les commandes shell ne liste pas .snapshot comme option.

Supprimer les fichiers capturés dans un instantané

Lorsqu'un fichier est capturé dans un instantané, sa suppression n'augmente pas l'espace disque disponible sur votre instance.

Rétablir un instantané

Rétablir un état d'instantané pour une instance n'est en disponibilité générale que pour les instances zonales, SSD à grande échelle et Enterprise.

Lorsque l'état capturé dans un instantané d'une instance est rétabli, toutes les nouvelles données écrites depuis la création de l'instantané cible sont supprimées et ne peuvent pas être récupérées. Les instantanés créés après l'instantané cible sont également supprimés par le processus de restauration.

Limites des fonctionnalités

  • La fonctionnalité de rétablissement de l'instantané est une opération irréversible qui supprime les données du système de fichiers actif et chaque instantané ultérieur de la chaîne. Par conséquent, le risque de perte accidentelle de données est plus élevé. Ce comportement est très différent de celui d'une restauration à partir d'une sauvegarde, où la sauvegarde reste dans son état actuel après utilisation, ce qui vous permet d'essayer d'effectuer une restauration à partir de plusieurs sauvegardes pour trouver la meilleure. Utilisez la fonctionnalité "Rétablir" avec précaution.

  • Toutes les données écrites après la création de l'instantané cible sont supprimées au début du processus de rétablissement et ne peuvent pas être récupérées. Tous les instantanés plus récents que l'instantané cible sont également supprimés. Par exemple, snapshot1, snapshot2 et snapshot3 sont créés de manière séquentielle. Le rétablissement de l'état enregistré dans snapshot2 pour l'instance signifie que toutes les données écrites après snapshot2, ainsi que tous les instantanés pris après la création de snapshot2, sont supprimés lors du processus de restauration.

    Le nettoyage de ces données supprimées peut prendre entre six heures et dix jours. La capacité et les performances de l'instance peuvent être affectées pendant cette période.

  • Le rétablissement de l'état d'instantané d'une instance met à jour les poignées de fichiers. Les tentatives d'accès à des clients à l'aide d'installations existantes renvoient des erreurs de gestion de fichiers obsolètes. Il est recommandé de désinstaller tous les clients de l'instance avant l'opération de restauration et de les réinstaller une fois l'opération terminée.

  • Une opération d'annulation peut prendre jusqu'à deux minutes.

    • Tout nettoyage associé à l'opération de restauration, tel que la suppression des instantanés suivants dans la chaîne, peut prendre entre six heures et dix jours, en fonction du nombre de fichiers impliqués.
    • Vous pouvez exécuter d'autres opérations pendant l'exécution de l'opération d'annulation et pendant le nettoyage.
    • Vous devez attendre la fin de l'opération d'annulation avant de lancer une autre opération d'annulation.
  • Les instantanés et les opérations revert associées sont disponibles pour la plupart des niveaux de service. Les instantanés ne sont pas disponibles avec les niveaux de service SSD de base et HDD de base.

  • Seules les instances à un seul partage peuvent rétablir l'état d'instantané.

  • Bien que les instantanés soient compatibles avec le niveau de service d'entreprise, ils ne peuvent pas être combinés avec la fonctionnalité Multipartages Filestore.

Étapes suivantes