Les instantanés LVM sont destinés à capturer le système de fichiers dans un état figé. Ils ne sont pas censés être une sauvegarde en soi. Ils sont cependant utiles pour obtenir des images de sauvegarde cohérentes car l'image figée ne peut pas et ne changera pas pendant le processus de sauvegarde. Ainsi, bien que vous ne les utilisiez pas directement pour effectuer des sauvegardes à long terme, ils seront d'une grande valeur dans tout processus de sauvegarde que vous décidez d'utiliser.
Il existe quelques étapes pour implémenter un instantané. La première est qu'un nouveau volume logique doit être alloué. Le but de ce volume est de fournir une zone où les deltas (modifications) du système de fichiers sont enregistrés. Cela permet au volume d'origine de continuer sans interrompre l'accès en lecture / écriture existant. L'inconvénient est que la zone d'instantané est de taille finie, ce qui signifie que sur un système avec des écritures occupées, elle peut se remplir assez rapidement. Pour les volumes qui ont une activité d'écriture importante, vous souhaiterez augmenter la taille de votre instantané pour laisser suffisamment d'espace pour que toutes les modifications soient enregistrées. Si votre instantané déborde (se remplit), l'instantané s'arrêtera et sera marqué comme inutilisable. Si cela se produit, vous souhaiterez libérer votre instantané afin de pouvoir remettre le volume d'origine en ligne. Une fois la sortie terminée, vous '
La deuxième chose qui se produit est que LVM «échange» désormais les véritables objectifs des volumes en question. On pourrait penser que l'instantané nouvellement alloué serait l'endroit idéal pour rechercher des modifications dans le système de fichiers, après tout, c'est là que toutes les écritures vont, non? Non, c'est l'inverse. Les systèmes de fichiers sont montés sur des noms de volume LVM , donc échanger le nom sous le reste du système serait un non-non (car l'instantané utilise un nom différent ). La solution ici est donc simple: lorsque vous accédez au nom du volume d'origine, il continue de faire référence à la version live (lecture / écriture) du volume dont vous avez fait l'instantané. Le volume d'instantanés que vous créez fera référence au volume figé(en lecture seule) la version du volume que vous souhaitez sauvegarder. Un peu déroutant au début, mais cela aura du sens.
Tout cela se produit en moins de 2 secondes. Le reste du système ne s'en rend même pas compte. À moins, bien sûr, que vous ne libériez pas l'instantané avant qu'il ne déborde ...
À un moment donné, vous souhaiterez libérer votre instantané pour récupérer l'espace qu'il occupe. Une fois la libération terminée, le volume d'instantané est libéré dans le volume et l'original reste.
Je ne recommande pas de poursuivre cela comme une stratégie de sauvegarde à long terme. Vous hébergez toujours des données sur le même disque physique qui peut échouer, et la récupération de votre système de fichiers à partir d'un disque en panne n'est pas du tout une sauvegarde.
Donc, en bref:
- Les instantanés sont utiles pour aider les sauvegardes
- Les instantanés ne sont pas, en soi, une forme de sauvegarde
- Les instantanés ne durent pas éternellement
- Un instantané complet n'est pas une bonne chose
- Les instantanés doivent être publiés à un moment donné
- LVM est votre ami, si vous l'utilisez à bon escient.
Les instantanés LVM sont parfaits pour pouvoir sauvegarder votre serveur sans le mettre hors ligne. Comme indiqué, les instantanés LVM sont des copies presque instantanées. Vous les créez en utilisant la
lvcreate
commande comme vous le feriez pour créer le LV lui-même, seulement vous lui donnez l'--snapshot
option et le LV d'origine au lieu du VG. Par exemple:Cela créera un instantané du LV donné avec le nom d'instantané spécifié que vous pouvez ensuite monter et utiliser ce instantané LV pour effectuer votre sauvegarde sans vous soucier des fichiers utilisés activement. Cela est particulièrement utile si vous essayez de sauvegarder un serveur de base de données actif.
Une fois que vous avez terminé la sauvegarde à partir de l'instantané, vous souhaitez le supprimer pour réduire toute surcharge d'E / S supplémentaire ou d'autres problèmes de performances, comme d'autres l'ont mentionné en utilisant:
Bien que les instantanés LVM puissent être inestimables pour produire une sauvegarde fiable de systèmes tels que des bases de données et que vous souhaitiez normalement arrêter la sauvegarde pour éviter les conflits de fichiers, ils ne sont pas idéaux pour un fonctionnement à long terme comme une restauration rapide.
la source
Pas une bonne idée, OMI.
Les instantanés sont implémentés de manière copie sur écriture, vous transformez donc chaque écriture en lecture et en deux écritures (le bloc vers lequel vous effectuez la mise à jour est d'abord lu depuis le volume principal et stocké dans le volume de l'instantané avant que de nouvelles données ne soient placées sa place), vous verrez donc une certaine dégradation des performances si beaucoup d'écriture est courante sur les machines virtuelles.
De plus, IIRC, si le volume d'instantanés est plein, il est simplement supprimé sans cérémonie. Ce n'est pas bon à des fins de sauvegarde! Donc, si vous essayez cela comme méthode de sauvegarde, assurez-vous que le volume de l'instantané est suffisamment grand pour gérer toutes les modifications qui se produiront pendant la durée de vie utile de l'instantané. Bien sûr, si vous connaissez et surveillez le problème de taille et que le problème de performances ne vous pose pas de problème, ce que vous proposez pourrait apporter un complément utile aux autres processus de sauvegarde que vous avez en place.
Les instantanés LVM sont très utiles dans le cadre d'un processus de sauvegarde (prendre un instantané, sauvegarder l'instantané ailleurs pour garantir que la sauvegarde est cohérente sans avoir à désactiver les mises à jour du "vrai" volume, supprimer l'instantané par la suite), entre autres choses, mais ne sont pas conçus comme une installation de sauvegarde en soi.
la source
Vous devrez vous assurer que les données sur le disque sont dans un état cohérent avant la création de l'instantané. Par exemple, mysql peut avoir des données en cache qui doivent être forcées sur le disque, soit en vidant la base de données, soit en la fermant. Consultez les manuels de vos applications pour plus de détails.
la source
Sous les trucs intelligents, les LVM ne sont en fait «qu'un» truc de mappage de périphérique. Créer un instantané avec lvcreate n'est pas beaucoup plus qu'un wrapper pour certains trucs dmsetup. L'encapsuleur crée un nouveau périphérique (le volume d'instantané) à partir d'un ancien volume (le volume d'origine) et d'un nouveau (le volume de copie sur écriture). Parallèlement à cela, le LV d'origine est renommé en -real (voir ci-dessous, qui est la sortie de dmsetup ls --tree). Ce LV réel est mappé à la fois au volume d'instantané et au volume d'origine, il peut donc être utilisé aux deux endroits. Le volume de copie sur écriture fonctionne comme une superposition au LV réel. Le -snap LV vous montre la combinaison du volume de copie sur écriture et du volume -real. Cela crée en effet une surcharge de performances.
Lors de la suppression de l'instantané, une nouvelle opération de changement de nom et de mappage se produit. Ensuite, la situation ressemblera à nouveau à quelque chose
En ce qui concerne la façon dont il s'agit d'une bonne méthode de sauvegarde: cela peut être, si vous en tenez compte, cela (1) n'aidera pas la RAM des machines virtuelles, (2) créera une pénalité de performance et (3) vous aurez besoin pour stocker des images de l'instantané ailleurs.
VMware VCB fonctionne également avec les instantanés, entre autres, mais pas avec LVM.
la source
Même si les instantanés n'ont eu aucun impact sur les performances, vous devez comprendre: les instantanés ne sont pas plus une sauvegarde qu'une copie vers un autre dossier sur le même disque.
Si le disque freine, vos données et votre sauvegarde sont perdues. Même si vous affectez la zone d'instantané à un autre PE dans le VG, elle ne contient que les données modifiées depuis l'instantané.
La sauvegarde signifie une copie au moins sur un lecteur complètement séparé comme exigence minimale.
la source
j'utilise une telle configuration pour des instantanés de machines serveur vmware et de bases de données mysql. fonctionne bien jusqu'à présent. il y a eu quelques restaurations - toutes sans problème. une chose à considérer - lors de l'exécution avec snapshot lvm obtient des performances significatives pour les opérations d'E / S. regardez ici . ignorer le fait qu'ils parlent de mysql, les ops d'E / S sont des ops d'E / S ... quel que soit le type de données sur lvm.
la source
J'utilise des instantanés lvm uniquement pour copier le DomU Lv un autre dans un Vg séparé, où chaque domaine a trois «nœuds» de sauvegarde à disposition.
Après cela, l'instantané est détruit et les niveaux de sauvegarde restent jusqu'au prochain tour. Si j'ai une restauration à faire, je dois juste choisir un Lv source dans le Vg de sauvegarde et le copier dans le Lv du domaine.
De temps en temps, un Lv de sauvegarde est transféré dans un fichier image sur un serveur séparé.
Tout cela est automatisé via un script, avec une sauvegarde tous les deux jours et un vidage chaque semaine.
J'avais même en tête un mode "panique", où le Domain Lv serait restauré mais exécuté à partir d'un instantané, et réinitialisé toutes les 2 heures, pour garder le site en ligne en cas de piratages graves, jusqu'à ce qu'une défense appropriée puisse être organisée .
la source
Qu'est devenue l'idée de la ligne de défense du «mode panique»?
la source