Ceci est le chemin! L'évolution des sauvegardes Timeweb: de rsync à ZFS

Nous avons tenté de décrire brièvement le chemin parcouru par l'équipe Timeweb en 10 ans: de rsync, LVM et DRBD à ZFS. Cet article sera utile pour ceux qui sont engagés dans une infrastructure évolutive de serveur, prévoient de faire des sauvegardes et se soucient du bon fonctionnement des systèmes.



image



Parlons de:



  • rsync (synchronisation à distance)
  • DRBD (périphérique de bloc répliqué distribué)
  • DRBD LVM
  • DRBD + ThinLVM
  • ZFS (Zettabyte File System)


rsync . .



rsync (synchronisation à distance) ne concerne pas du tout les sauvegardes à proprement parler. C'est un programme qui vous permet de synchroniser des fichiers et des répertoires à deux endroits tout en minimisant le trafic. La synchronisation peut être effectuée pour les dossiers locaux et les serveurs distants.



Rsync est souvent utilisé pour les sauvegardes. Nous avons utilisé cet utilitaire lorsque les sites étaient plus simples et qu'il y avait beaucoup moins de clients.



Rsync a fait un très bon travail, mais le plus gros problème ici est la vitesse. Le programme est très lent, il charge beaucoup le système. Et avec l'augmentation des données, cela commence à fonctionner encore plus longtemps.



Rsync peut être utilisé comme technologie de sauvegarde, mais pour de très petites quantités de données.



LVM (gestionnaire de volume logique) - gestionnaire de volume logique



Bien sûr, nous voulions accélérer les sauvegardes avec moins de charge, nous avons donc décidé d'essayer LVM. LVM autorise les instantanés même en utilisant ext 4. De cette façon, nous pourrions faire des sauvegardes en utilisant un instantané LVM.



Nous n'avons pas utilisé cette technologie pendant longtemps. Bien que la sauvegarde soit plus rapide que rsync, elle était toujours complète. Nous voulions seulement copier les changements, nous sommes donc passés à DRBD.



DRBD



DRBD vous permet de synchroniser les données d'un serveur à un autre. De plus, seuls les changements sont synchronisés, pas toutes les données. Cela accélère considérablement le processus!



Et du côté du magasin, on pourrait utiliser LVM et prendre des clichés. Un tel système existe depuis très longtemps et existe désormais sur certains serveurs que nous n'avons pas encore eu le temps de transférer vers le nouveau système.



image



Cependant, même avec cette méthode, il y a toujours un inconvénient. DRBD charge fortement le sous-système de disque pendant la synchronisation ... Cela signifie que le serveur fonctionnera plus lentement. En conséquence, la sauvegarde a interféré avec le travail des principaux services, c'est-à-dire des sites utilisateurs. Nous avons même essayé de faire des sauvegardes la nuit, mais parfois, ils n'avaient tout simplement pas le temps de terminer la nuit. J'ai dû manœuvrer, alterner les sauvegardes. Par exemple, aujourd'hui une partie des serveurs est en cours d'exécution, puis une autre. Nous avons distribué les sauvegardes en damier.



De plus, DRBD dépend fortement de la vitesse du réseau et affecte les performances du serveur à partir duquel et vers lequel la sauvegarde est effectuée. Une nouvelle solution doit être recherchée!



LVM mince



À ce stade, l'entreprise s'est donné pour mission d'effectuer des sauvegardes de 30 jours et nous avons décidé de passer à thinLVM. Cela n'a pas résolu le problème principal! Nous ne nous attendions même pas à ce que des performances aussi élevées du système de fichiers soient nécessaires pour prendre en charge les snapshots légers. Cette expérience a été totalement infructueuse, et nous avons abandonné en faveur des instantanés LVM épais réguliers.



Les ThinLVM n'étaient tout simplement pas conçus pour notre objectif. Initialement destiné aux petits ordinateurs portables et appareils photo, mais pas à l'hébergement.



Poursuite de la recherche ...



Il a été décidé d'essayer ZFS.



ZFS



ZFS est un système de fichiers décent qui contient de nombreux avantages intégrés. Ce qui est réalisé avec ext 4 en installant sur LVM, en connectant un périphérique DRBD, puis avec ZFS c'est la valeur par défaut. Le système de fichiers lui-même est très fiable. Il faut également mentionner la fonction Copy-on-write, cette technologie vous permet de traiter les données très soigneusement.



ZFS vous permet de créer des instantanés qui peuvent être copiés dans un magasin, ainsi que d'automatiser les sauvegardes. Pas besoin d'inventer quoi que ce soit!



La migration vers ZFS a été très prudente. Tout d'abord, nous avons créé un stand sur lequel nous avons simplement testé pendant plusieurs mois. En particulier, nous avons essayé de reproduire les problèmes d'équipement, d'alimentation, de réseau, de saturation du disque. Grâce à des tests approfondis, nous avons pu trouver des goulots d'étranglement.



Un sujet douloureux pour ZFS est la saturation du disque. Nous avons pu résoudre ce problème en réservant un espace vide. Lorsque le disque est plein, des mesures seront prises pour décharger le serveur et nettoyer l'espace.



Après les tests, nous avons progressivement commencé à introduire de nouveaux serveurs, à transférer les anciens serveurs vers ZFS. Plus de problèmes avec les sauvegardes! Vous pouvez effectuer des sauvegardes de 30 ou 60 jours, même si des sauvegardes sont effectuées toutes les heures. Dans tous les cas, le serveur ne subira pas de charges excessives.



Collecté toutes les données des tableaux ci-dessous pour comparer les sauvegardes à l'aide de diverses technologies.



image



image



image



image



Que s'est-il passé ensuite?



Il est prévu de mettre à niveau ZFS vers la version 2 d' OpenZFS 2.0.0. en 2021. Nous préparons une transition en utilisant toutes les puces annoncées avec la sortie début décembre.



La façon dont c'est!



C'est la voie que nous nous sommes choisie! Résolvez-vous des problèmes similaires? Nous serons heureux si vous partagez votre expérience dans les commentaires! Nous espérons que l'article s'est avéré utile et, si soudainement vous êtes également confronté à la tâche de faire des sauvegardes à l'aide des utilitaires intégrés à Linux, notre histoire vous aidera à trouver une solution appropriée.



All Articles