Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 08/04/2012, à 11:28

ZobiWan

Backup de serveur virtualises stockés sur LVM

Salut à tous,

J'ai monté un serveur sous debian avec virtualbox pour héberger 6 à 8 machines virtuelles il y a quelques mois et comme je souhaite passer sur un ssd prochainement j'aimerais faire un "bare métal restore".

Comme j'utilise toujours la même base pour créer mes serveurs virtuels (ws2008 r2 ou ubuntu server), j'ai fais une seule install d'un OS sur un volume logique (que j appelle "baseOS") puis je crée un snapshot lvm pour chacun des serveur que je veux mettre en place "webserver" "directoryserver" "fileserver" etc...

Ça marche très bien, c est très économe en terme d espace disque mais je ne sais pas comment sauvegarder ça, ni pour restaurer sur le serveur actuel, ni pour restaurer sur un nouveau disque.

Avez vous une idée des outils que je pourrais utiliser dans ce cas de figure précis? Ou bien y a t'il quelque chose à changer dans mon système pour rendre ça plus simple à sauvegarder?

Merci d avance pour votre aide!

Hors ligne

#2 Le 08/04/2012, à 16:25

Mathieu147

Re : Backup de serveur virtualises stockés sur LVM

Bonjour,

Si ça ne te dérange pas, je vais commencer par ne pas répondre à ta question big_smile

En fait je vais monter très prochainement un serveur comme tu as fait: Debian 64 bits sur une machine puissante, et des clients qui y accèdent via RDP (une dizaine, utilisation type bureautique). Je me demande, niveau CPU, si j'ai vraiment besoin d'un truc super costaud genre Xeon série 5000 ou bien si un processeur plus «classique» ferait l'affaire, tu utilises quoi, toi? Et niveau RAM?

Pour ta question maintenant:

En fait, tu installes tes machines virtuelles sur une partition directement, plutôt que dans un fichier VDI, c'est bien ça? Et puis tu gères les snapshots avec le système de snapshots de LVM.

C'est bizarre comme système, je trouve. Je n'ai jamais utilisé LVM, je ne sais pas trop quoi te répondre. À mon avis, tu devrais peut-être utiliser le système de clonage de disques de Virtualbox, ou bien l'export de machine virtuelle.

Pour mon serveur, je pensais faire un peu comme toi sur le principe, c'est à dire faire des images «de base», mais dans un fichier VDI qui serait utilisé par plusieurs machines ayant chacune leur disque différentiel.

Dernière modification par Mathieu147 (Le 08/04/2012, à 16:25)


Pffff…

Hors ligne

#3 Le 09/04/2012, à 11:25

ZobiWan

Re : Backup de serveur virtualises stockés sur LVM

Salut Mathieu,

Merci pour ta non-réponse ! tongue

Ma machine n'est pas un monstre de puissance, mon but étant de mettre peu de serveurs en prod (host avec samba, web/fichiers pour ajaxplorer, multimédia : iTunes + dlna, un openvpn et un pour TSE) et pas mal pour expérimenter (station Mac osx, serveur exchange, sharepoint, link et toutes les autres saloperies que je peux récupérer sur MSDNAA big_smile)

Donc pour ~6 serveurs j'ai un AMD Phenom II X4 965 (4 cœurs, 2,5 GHz), 8Go ram en 1600 MHz et une carte mère haut de gamme asus. Car marche très bien, et quand j accède à une session en RDP (en local) c'est parfaitement transparent.

Comme je voudrais que mon système se lance plus vite et que les machines se chargent instantanément, je vais passer sur un disque dur ssd.

Au vu de ce que tu décris, tu auras besoin d'une config un peu plus musclée que moi (niveau ram je pense et disque dur avec un ssd ou des disques en raid pour gèrer les accès concurrents).

Pour en revenir à ma question, j'installe bien directement sur une partition LVM car avec le système de snapshot, j'economise presque de moitié l espace disque utilisé (bien pour le ssd limité à 120 Go...) et ça me permet de ne pas gérer X installs.

Si tu n est pas familier avec LVM:
1. j'installe server 2008 ou debian 64bits sur une partition de base de 20 Go.
2. Je crée un snapshot LVM de 10 Go de la partition "base". Un snapshot va être identique à la partition de base mais tu alloue 10 Go pour enregistrer les changements que tu vas apporter au système. Chaque "partition" snapshot que tu vas créer sera donc un système à part entière pour un usage spécifique et sur une base commune.

Avantages concret:
Stockage : au delà des 20 Go de base, chaque serveur ne prend plus que 10 Go d espace...
Temps de déploiement :
install de debian = 30 min
Snapshot LVM = 1 min
Création de VM = 1 min

donc pour tes 10 serveurs debian ça donne:
Install par snapshots LVM = 30 + 2 + 9 x 2 = 50 minutes
Install classique = (30 + 1) x 10 = environ 5 heures
clonage de VMs = même ordre de grandeur que l install classique si tu a pré-alloué l espace disque
Performance:
Avantage pour LVM car pas besoin de passer deux fois par un système de fichiers c'est à dire que si tu enregistre des données dans ta session debian virtuelle, ca passe par le système de fichier de ta machine virtuelle puis les changement sont répercutés dans ton fichier vdi au travers du système de fichiers de ta machine hôte.
(si un sage du forum passe par la et que je dis des conneries, n hésitez pas à rectifier!)

Voilà, donc c est performant et pratique à déployer mais je sais pas comment sauvegarder ça. Si l'un d'entre vous sait comment faire en l état ou comment cela peut devenir tres simple en changeant legerement ma façon de faire, je suis preneur !

Hors ligne

#4 Le 10/04/2012, à 08:44

Mathieu147

Re : Backup de serveur virtualises stockés sur LVM

Bonjour,

ZobiWan a écrit :

Ma machine n'est pas un monstre de puissance, mon but étant de mettre peu de serveurs en prod (host avec samba, web/fichiers pour ajaxplorer, multimédia : iTunes + dlna, un openvpn et un pour TSE) et pas mal pour expérimenter (station Mac osx, serveur exchange, sharepoint, link et toutes les autres saloperies que je peux récupérer sur MSDNAA big_smile)

Donc pour ~6 serveurs j'ai un AMD Phenom II X4 965 (4 cœurs, 2,5 GHz), 8Go ram en 1600 MHz et une carte mère haut de gamme asus. Car marche très bien, et quand j accède à une session en RDP (en local) c'est parfaitement transparent.

Comme je voudrais que mon système se lance plus vite et que les machines se chargent instantanément, je vais passer sur un disque dur ssd.

Au vu de ce que tu décris, tu auras besoin d'une config un peu plus musclée que moi (niveau ram je pense et disque dur avec un ssd ou des disques en raid pour gèrer les accès concurrents).

Oui je crois que j'aurai effectivement besoin d'un peu plus que ça, mais peut-être pas énormément. Niveau RAM, si, j'aurai besoin de plus puisque j'aurai ±10 clients (donc 10Go de RAM pour eux) et un serveur MS-SQL (2Go pour lui?), et il faudra qu'il reste quand-même encore un peu de mémoire pour le système hôte. Pour être sûr d'être tranquille (y compris pour de futures évolutions où il faudra peut-être des clients ou serveurs supplémentaires) je comptais prendre 24Go de RAM (3 barettes de 8Go).

C'est plus le disque dur que je ne sais pas trop comment gérer. Je pensais utiliser trois disques classiques en RAID 5, mais je me pose quand-même la question de l'intérêt du SSD. Ce qui me fait le plus peur avec les SSD, c'est la durée de vie. Je ne sais pas si c'est toujours d'actualité, mais ne dit-on pas que les SSD tombent en panne plus vite?

ZobiWan a écrit :

Pour en revenir à ma question, j'installe bien directement sur une partition LVM car avec le système de snapshot, j'economise presque de moitié l espace disque utilisé (bien pour le ssd limité à 120 Go...) et ça me permet de ne pas gérer X installs.

Si tu n est pas familier avec LVM:
1. j'installe server 2008 ou debian 64bits sur une partition de base de 20 Go.
2. Je crée un snapshot LVM de 10 Go de la partition "base". Un snapshot va être identique à la partition de base mais tu alloue 10 Go pour enregistrer les changements que tu vas apporter au système. Chaque "partition" snapshot que tu vas créer sera donc un système à part entière pour un usage spécifique et sur une base commune.

Avantages concret:
Stockage : au delà des 20 Go de base, chaque serveur ne prend plus que 10 Go d espace...
Temps de déploiement :
install de debian = 30 min
Snapshot LVM = 1 min
Création de VM = 1 min

donc pour tes 10 serveurs debian ça donne:
Install par snapshots LVM = 30 + 2 + 9 x 2 = 50 minutes
Install classique = (30 + 1) x 10 = environ 5 heures
clonage de VMs = même ordre de grandeur que l install classique si tu a pré-alloué l espace disque
Performance:
Avantage pour LVM car pas besoin de passer deux fois par un système de fichiers c'est à dire que si tu enregistre des données dans ta session debian virtuelle, ca passe par le système de fichier de ta machine virtuelle puis les changement sont répercutés dans ton fichier vdi au travers du système de fichiers de ta machine hôte.
(si un sage du forum passe par la et que je dis des conneries, n hésitez pas à rectifier!)

Voilà, donc c est performant et pratique à déployer mais je sais pas comment sauvegarder ça. Si l'un d'entre vous sait comment faire en l état ou comment cela peut devenir tres simple en changeant legerement ma façon de faire, je suis preneur !

Ok je pense que je vois ce que tu fais.

Si je comprends bien, c'est exactement le même principe que les Snapshots ou disques différentiels que tu peux faire avec VirtualBox, mais qui sont gérés au niveau du système de fichiers.

Je comptais mettre en place un système similaire à ce que tu fais, également pour limiter l'espace disque, mais en utilisant les outils de VirtualBox. Donc j'installe un système de base (un Windows XP pour les clients par exemple), dans un disque virtuel de 10Go, avec tous les logiciels dont ils auront besoin. Ça, c'est mon disque de base. Dans le gestionnaire de médias, je mets ce disque «immuable», c'est-à-dire que l'image sera en lecture seule.

Après, je crée 10 machines virtuelles pour mes 10 clients (ça prend 1×10 = 10 minutes selon ton décompte), ayant chacune ce disque dur. Donc, la base de 10Go est partagée par tous les clients, comme avec ton système. À ce moment, donc, je n'ai que 10Go d'espace disque utilisé malgré que j'aie 10 clients.

À partir de là, 2 options:

  1. Si je ne fais rien de spécial, quand chaque machine cliente va démarrer, les changements au disque dur ne seront pas apportés à mon image de base (elle est en lecture seule), mais dans un fichier séparé. Si j'éteins la machine cliente, le fichier séparé en question sera effacé, et au prochain démarrage, on repart de l'état initial, comme si on venait de formater/réinstaller la machine. Moi, c'est ce que je vais utiliser: les documents importants seront sauvegardés dans un dossier partagé (géré par VirtualBox donc sans se préoccuper d'avoir un serveur de fichiers etc.) mais les utilisateurs peuvent foutre le bordel sur le PC, ça ne change rien puisque tout redevient propre à chaque démarrage.

  2. Évidemment, tu ne veux peut-être pas réinitialiser ta machine à chaque boot. Donc ce que tu peux faire, c'est démarrer ta machine virtuelle, et pendant qu'elle est allumée, tu fais un snapshot. Ça va empêcher VirtualBox de réinitialiser tout à chaque boot, et donc le fichier différentiel qui contient les différences par rapport à l'installation de base sera permanent.

Je trouve que la solution 1 est super, parce que j'ai besoin de plusieurs clients identiques, donc si ils partagent un disque dur, c'est plus facile. Si je dois faire une mise à jour, je décoche la case «immuable» dans le gestionnaire de disques, je fais ma mise à jour, et je recoche la case. Donc je peux faire des modifications à mes machines, mais pas les utilisateurs (en fait, si, ils peuvent en faire, mais elles ne résistent pas à un reboot).

Par contre, la solution 2, je t'explique comment faire parce que je pense que c'est ce que tu recherches comme comportement, mais je ne suis pas sûr que ça soit très intéressant. Au fur et à mesure des mises à jour, des installations de logiciels, d'enregistrements de fichiers etc., ton disque dur différentiel va finir par ne plus rien avoir à avoir avec ton disque de départ. Et donc, tu vas te retrouver avec des disques différentiels super gros, et tout ce que tu auras gagné c'est que tu auras un fichier commun à toutes tes machines que tu vas quand-même devoir te coltiner à sauvegarder, restaurer en cas de crash, etc.

Je pense que le système des disques différentiels (je dis «disques différentiels» parce que c'est le vocabulaire de VirutalBox, mais c'est pareil avec les snapshots LVM) sont bien à cours terme ou si on est sûr que les différences entre les machines sont minimes, mais je ne sais pas si on peut être sûr qu'ils ne vont pas grossir jusqu'à perdre leur intérêt.

Ce qui est bien avec les disques durs virtuels et leurs snapshots, c'est que ce sont de simples fichiers VDI qu'on peut déplacer/sauvegarder facilement.

Je ne sais pas, par contre, si on sait déplacer facilement des snapshots LVM. C'est quand-même un truc géré par le système de fichiers, c'est comme si j'essayais de sauvegarder une partition, on ne le fait pas directement, on sauvegarde plutôt les fichiers qui sont dedans. Mais il y a peut-être un outil spécial pour ça?

En fait, LVM il sait que tu as fait un snapshot, mais point de vue du système de fichiers, tu vois bien un disque par machine virtuelle? Si tu vas dans le gestionnaire de fichiers, tu vois bien un fichier VDI de 20Go par machine virtuelle? Si c'est ça, tu peux toujours sauvegarder «bêtement» ces fichiers et les restaurer sur le nouveau disque. Mais, bien entendu, tu ne vas pas pouvoir récupérer la «partie commune» partagée entre tous tes disques.

Si tu fais carrément une image disque avec Clonezilla, que tu restaures sur le nouveau disque? Sur le site de Clonezilla, ils ont l'air de dire que LVM est supporté.


Pffff…

Hors ligne

#5 Le 20/04/2012, à 10:25

Mathieu147

Re : Backup de serveur virtualises stockés sur LVM

Alors?


Pffff…

Hors ligne