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 de la capacité qu'une fois que les données de l'instance sont 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 de 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. Le nom du partage de fichiers et le nom de l'instantané peuvent comporter jusqu'à 78 caractères au total.

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 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 les 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 propose pas l'option .snapshot.

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é

Le rétablissement d'un instantané d'instance en disponibilité générale n'est disponible que pour les instances zonales, SSD à grande échelle, régionales et d'entreprise.

Lorsqu'une instance revient à l'état capturé dans un instantané, 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 lors du processus de restauration.

Limites des fonctionnalités

  • La fonctionnalité de restauration d'un instantané est une opération irréversible, qui consiste à supprimer des données du système de fichiers en direct et à supprimer chaque instantané plus récent suivant 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 de tenter d'effectuer une restauration à partir de plusieurs sauvegardes pour trouver la meilleure. Utilisez la fonctionnalité de retour 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 restauration 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. Si vous rétablissez l'instance à l'état capturé dans snapshot2, 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 d'une instance à un état d'instantané met à jour l'ID du système de fichiers NFS (fsid). Les tentatives d'accès aux 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 d'annulation, puis de les réinstaller une fois l'opération terminée.

  • Une opération de rétablissement peut prendre jusqu'à deux minutes.

    • Tout nettoyage associé à l'opération de restauration, tel que la suppression des instantanés suivants de 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 de restauration et du nettoyage.
    • Vous devez attendre la fin de l'opération de restauration avant de lancer une autre opération de rétablissement.
  • 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 ne possédant qu'un seul partage peuvent rétablir un état d'instantané.

  • Bien que les instantanés soient compatibles avec le niveau de service Enterprise, ils ne peuvent pas être associés à la fonctionnalité de partage multipartage Filestore.

Étapes suivantes