Comparaison des sauvegardes cohérentes après incident (crash-consistent) et cohérentes au niveau des applications (application-consistent)
La fiabilité des sauvegardes, et des stratégies de protection des données en général, dépend de la validité et de l’utilisabilité immédiate des données à sauvegarder en cas de besoin. Certaines organisations ont signalé des échecs de restauration dans 34 % des tâches en 2021. Le problème de la rapidité et de la réussite des restaurations est particulièrement préoccupant pour les charges de travail des bases de données en direct telles que Microsoft SQL Server et Exchange Server. Ces opérations sont généralement critiques et ne peuvent être interrompues pendant la durée de la sauvegarde à sauvegarder de la machine virtuelle ou physique, qui peut parfois prendre plusieurs heures selon la taille de la machine. Pour remédier à ce problème, les solutions modernes proposent plusieurs types de sauvegardes, notamment les sauvegardes cohérentes en cas de panne et les sauvegardes cohérentes au niveau des applications. Lisez cet article pour découvrir les principales différences entre ces types de sauvegardes et comprendre comment chacune d’entre elles affecte la sauvegarde et la restauration des données applicatives.
Sauvegardes cohérentes en cas de panne
Une sauvegarde cohérente en cas de panne prend un instantané de toutes les données présentes sur un disque à un moment précis, tout en conservant l’ordre d’écriture. Cela signifie que les fichiers qui dépendent les uns des autres sont pour sauvergarder au même moment, et sont donc cohérents. Le terme « crash-consistent » (cohérent en cas de panne) décrit la capture des données à sauvegarder, car elle s’apparente à la capture d’un point de restauration à l’instant précédant la panne ou la mise hors tension d’un serveur. Comment les logiciels de sauvegarde prennent-ils un instantané de l’ensemble des données à un moment donné ? Pour ce faire, on utilise le service VSS (Volume Shadow Copy Service) de Microsoft, qui fait partie du système d’exploitation Windows à partir de Microsoft Server 2003. Le service VSS facilite la communication entre les différents composants d’un environnement : logiciel de sauvegarde, applications de production qui ne peuvent pas être arrêtées (les modifications y étant enregistrées pendant que les sauvegardes en cours) et stockage. Pour que Microsoft VSS fonctionne, tous ces composants doivent prendre en charge cette fonctionnalité. Le « demandeur VSS », c’est-à-dire le logiciel à sauvegarder, demande la création d’un cliché instantané. VSS bloque rapidement les opérations d’E/S sur un volume, qui sont ensuite mises en file d’attente. Il enregistre ensuite les blocs actuellement utilisés par le volume. Le logiciel de sauvegarde copie ensuite toutes les données du disque, même après modification des blocs, car il sait quels blocs étaient utilisés pour l’instantané. Notez que la sauvegarde cohérente en cas de panne est largement supérieure à l’ancienne sauvegarde incohérente, qui revient essentiellement à une copie des fichiers sur le disque. Cela signifiait que si des fichiers changeaient pendant la durée du processus de sauvegarde, les fichiers qui dépendaient les uns des autres se retrouvaient dans un état incohérent, car un fichier dont dépendait un autre fichier pouvait avoir changé pendant la fenêtre de sauvegarde. Même avec leurs avantages par rapport à la sauvegarde incohérente, les sauvegardes cohérentes en cas de panne ont leurs limites. Plus important encore, les informations contenues dans la mémoire ou dans toute transaction d’E/S en attente sont ignorées. Cela est particulièrement important dans le cas d’applications de bases de données telles que Microsoft SQL Server et Microsoft Exchange Server. Avec les sauvegardes cohérentes en cas de panne de ce type d’applications, des procédures sont nécessaires après la récupération des données pour mettre les données à sauvegarder dans un état cohérent, ce qui entraîne des temps de récupération plus longs et des risques de perte de données.
Sauvegardes cohérentes avec les applications
Les sauvegardes cohérentes avec les applications, également appelées sauvegardes cohérentes avec les applications, peuvent capturer les informations des applications à la fois en mémoire et dans les opérations d’E/S en attente. Cela est possible par l’utilisation de composants spécifiques à l’application pour le service Microsoft connu sous le nom de VSS writers. Ces rédacteurs garantissent la cohérence des données d’application lorsqu’une copie fantôme est créée. Lorsque le logiciel de sauvegarde demande la création d’un cliché instantané, les rédacteurs Microsoft VSS ou tiers permettent à VSS de contrôler des données d’application spécifiques, et pas seulement les fichiers sur le disque, et permettent de pour sauvergarder ces applications avec une cohérence transactionnelle. Par exemple, Microsoft SQL Server peut avoir des données résidant en mémoire et dans des opérations d’E/S en attente. Une sauvegarde régulière et cohérente des fichiers sur le disque, même si elle est cohérente au niveau des fichiers, ne tiendra pas compte des données qui se trouvent à ces emplacements. Cependant, avec les sauvegardes cohérentes avec les applications, le rédacteur VSS pour Microsoft SQL Server permet de purger les informations en mémoire et de vider les opérations d’E/S en attente sur le disque dans l’ordre transactionnel correct, afin que la sauvegarde du disque contenant les données de l’application contienne des données transactionnelles cohérentes.
Sauvegarde cohérente avec les applications pour les machines Linux
Pour les machines basées sur Linux sur lesquelles les services VSS ne sont pas disponibles, vous pouvez utiliser les commandes pré-script et post-script de Linux.
- Les scripts de pré-gel peuvent être exécutés juste avant la prise de l’instantané de la VM afin de mettre en veille les opérations d’E/S et de vider les informations en mémoire sur le disque.
- Les scripts post-décongélation s’exécutent immédiatement après la capture de l’instantané de la machine virtuelle afin de décongeler les opérations d’E/S et permettre à l’application de reprendre son fonctionnement normal.
Récupération from sauvegardes cohérentes avec les applications
Une autre différence essentielle entre les sauvegardes cohérentes au niveau des applications et celles cohérentes au niveau des pannes réside dans la quantité de travail nécessaire lors de la restauration des données, en particulier après la récupération.
- Avec les sauvegardes cohérentes en cas de panne, comme les données d’application peuvent ne pas être cohérentes, vous devez suivre une procédure spécifique pour ramener les applications à un état cohérent. Ce processus varie selon les produits, tels que Microsoft Exchange Server ou Microsoft SQL Server.
- Avec les sauvegardes cohérentes avec les applications, les données applicatives sont déjà cohérentes. Dans un scénario de reprise après sinistre des données d’application, il est extrêmement avantageux de disposer de sauvegardes cohérentes avec les applications plutôt que de sauvegardes cohérentes en cas de panne, car le processus de récupération est beaucoup plus rapide et fiable.
Commandes VSS Writers
Le vssadmin est un outil de dépannage puissant pour les rédacteurs VSS, et de nombreuses options sont disponibles from la ligne de commande. Vous pouvez voir l’état des rédacteurs VSS dans Windows par l’utilisation de la commande vssadmin list writers. L’image ci-dessous montre le VSS SqlServerWriter spécial ainsi que le Microsoft Exchange Writer pour Exchange.
Le Microsoft Exchange Writer est présenté ci-dessous.
Vous trouverez ci-dessous les commandes prises en charge par l’utilitaire vssadmin.
Sauvegardes cohérentes en cas de panne ou cohérentes avec l’application
Voici un bref aperçu des différences entre les sauvegardes cohérentes en cas de panne et les sauvegardes cohérentes au niveau des applications :
| Opération | Crash-cohérent | Cohérent avec l’application |
| Sauvegarde régulière des fichiers à un moment donné | Oui | Oui |
| Volume Shadow Copy utilisé pour la sauvegarde au niveau des blocs | Oui | Oui |
| Cohérence des applications | Non | Oui |
| Conscient des informations de mémoire et des transactions d’E/S en attente | Non | Oui |
| Auteurs VSS utilisés | Non | Oui |
| Ne nécessite aucune étape particulière pour la restauration des données d’application. | Non | Oui |
Conclusion
Il existe des différences notables dans la manière dont les sauvegardes cohérentes en cas de panne et les sauvegardes cohérentes au niveau des applications traitent les données dans les applications en direct telles que Microsoft SQL Server ou Microsoft Exchange Server. Les sauvegardes cohérentes en cas de panne ne copient pas les données en mémoire et les opérations d’E/S en attente. Les sauvegardes cohérentes avec les applications détectent ces types de données transitoires et les capturent en exploitant les rédacteurs VSS comme composants du service VSS dans Windows afin de mettre correctement l’application en veille en vidant la mémoire et en transférant les E/S en attente vers le disque, ce qui permet de la sauvergarder correctement avec une cohérence transactionnelle. Les solutions de sauvergarde vSphere modernes telles que NAKIVO Backup & Replication offrent plusieurs options de sauvergarde pour différentes charges de travail afin de vous aider à protéger vos données et à garantir leur récupération après un sinistre. Téléchargez l’Édition gratuite pour découvrir tous les outils et fonctionnalités avancés.