Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Expert éminent sénior
    Prendre garde à l'espace disque du host si disques virtuels dynamiques
    Bonjour,

    (je mets ça dans "contribuez" car si ça se trouve, ça concerne tous les hyperviseurs -- je ne connais que VirtualBox.)

    je me suis récemment demandé comment le grossissement d'un disque dynamique était vu et géré par le système hôte (Debian 7), et la réponse est "mal", malheureusement.

    --Scénario--

    1) Préparatifs :
    prendre une clé usb (512 Mo dans mon cas) vierge, et y créer un disque virtuel dynamique de 16 Go, le monter, le partitionner (1 seule part.) et formater la partoche, en ext4.
    df, qui montre d'abord la clé, puis la partoche :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sys. fich.     1K-blocks     Util. Disponible Uti% Monté sur
    /dev/sdc1         503528     23624     479904   5% /media/6488-A3E4
    /dev/loop0      15990112     39984   15131216   1% /mnt/vdisksrc/Partition1
    préparer un fichier zip de 48,6 Mo (aléatoire, c'est tombé comm' ça) quelque part (un .zip c'est sympa car avec mc car il suffit de faire F3 pour en voir le contenu)
    copier avec mc ce fichier dans la partoche du disque virtuel, résultat :
    /dev/sdc1 503528 72776 430752 15% /media/6488-A3E4
    .
    72776 - 23624 = 49152 ko, c'est bien le .zip

    Je le renomme vit' fait de test.zip en test.zip0.

    2) Action qui tue :
    Recopier autant de fois que possible ce test.zip vers la partoche virtuelle (définie à 16 Go, je le rappelle) en renommant à chaque fois après la copie, en .zip1, .zip2 ...
    Ralentissements à zip9, zipb, gros ralentissement à zipc et erreur pendant le suivant

    --> j'interromps, et, question suivante (non reproduite ici), je conserve le bout du 14e incomplet.

    Il y a donc maintenant 13 fichiers de 48,6 Mo (clic droit / Propriétés sur un fichier --> 48,6 Mo (48 621 939 bytes)) dans cette partoche de 16 Go, soit 48,6 x 13 = presque 632 Mo + un bout du 14e (1380 ko)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    /dev/sdc1         503528    503528          0 100% /media/6488-A3E4
    /dev/loop0      15990112    658756   14512444   5% /mnt/vdisksrc/Partition1
    L'examen des fichiers à coup de F3 montre que .zipc est cassé mais les 12 autres sont bien affichés.
    48,6 Mo x 12 = 583 Mo, pas mal pour une clé de 512 Mo !

    3) Vérifs complémentaires :
    Démontage machins virtuels, extraction clé, réinsertion et remontage, la clé est rw, je vais voir avec mc pour supprimer le bout cassé mais surprise !, il a disparu, et j'ai l'explication du .zipc cassé : il est deux fois plus petit que les autres !


    L'examen des autres fichiers montre que zip9 est aussi cassé

    ainsi que zipa et zipb qui sont pleins de vide.

    Il y a donc 9 fichiers valides (on en voyait 12 avant extraction, à la fin de l'étape précédente), soit 48,6 x 9 = 437,4 Mo. Un 10e pourrait-il rentrer, maintenant ?
    /dev/loop0 15990112 467340 14703860 4% /mnt/vdisksrc/Partition1
    .
    467 + 49 = 516, pas sûr du tout mais en jouant sur les approximations (1000 vs 1024), je me dis "peut-être", tentons donc !

    4) Manip de fin
    Je supprime les fichiers cassés :
    /dev/loop0 15990112 467340 14703860 4% /mnt/vdisksrc/Partition1
    .
    Un peu d'arithmétique :
    467340 - 39984 (esp. occ. après formatage) = 427356 / 9 fichiers = 47484 ko x 1024 = 48 623 616, on retrouve la taille des .zip, 48,6 Mo, ok.

    Test du 10e : 48,6 x 10 = 486 Mo, donc ça pourrait rentrer.

    Relance de la copie avec F5 --> elle est instantanée, comme les premières fois, et df me dit
    /dev/loop0 15990112 514824 14656376 4% /mnt/vdisksrc/Partition1
    .
    514824 - 467340 = 47484 (ok) et son examen avec F3 ne montre rien d'anormal.

    Démontage extraction remontage et vérif = fichier cassé et inutilisable.

    --Conclusion--
    On peut remplir une partition de disque virtuel dynamique au-delà de la capacité réelle du support de stockage du fichier sans avoir instantanément d'alerte, et ainsi croire que la copie est bonne,

    Je sens que je vais convertir mes disques dynamiques en disques statiques...
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  2. #2
    Responsable Systèmes

    Faire des disques dynamiques consiste à faire du surbooking. Tu peux donc en subir des conséquences.

    La VM te retournera des I/O errors. L'OS de ton hôte te signalera un disque plein.

    sur les bare metal, tu auras une alerte et un arrêt des VM.
    Ma page sur developpez.com : http://chrtophe.developpez.com/ (avec mes articles)
    Mon article sur la création d'un système : http://chrtophe.developpez.com/tutor...s/minisysteme/
    Mon article sur le P2V : http://chrtophe.developpez.com/tutoriels/p2v/
    Consultez nos FAQ : Windows, Linux, Virtualisation

  3. #3
    Expert éminent sénior
    'lut,
    Citation Envoyé par chrtophe Voir le message
    Faire des disques dynamiques consiste à faire du surbooking.
    Parfaitement bien résumé !


    Citation Envoyé par chrtophe Voir le message
    La VM te retournera des I/O errors.
    Oui mais pas tout de suite !
    D'où le danger mortel pour les autres fichiers du disque virtuel, qui se font écrabouiller sans autre forme de procès.

    Citation Envoyé par chrtophe Voir le message
    L'OS de ton hôte te signalera un disque plein.
    Rien du tout en ce qui me concerne.
    Ou alors c'est parce que j'ai une trop vieille version de VBox sur un trop vieil OS ?
    Que ça n'empêche pas les possesseurs de machines up-to-date de prendre leurs précautions (ou de vérifier en faisant les mêmes tests que moi).

    Citation Envoyé par chrtophe Voir le message
    sur les bare metal, tu auras une alerte et un arrêt des VM.
    Qu'est-ce que tu appelles "bare metal" ?
    Je ne pense pas avoir ça en rayon, n'ayant pas constaté ce fonctionnement violent.
    Il a à vivre sa vie comme ça et il est mûr sur ce mur se creusant la tête : peutêtre qu'il peut être sûr, etc.
    Oui, je milite pour l'orthographe et le respect du trait d'union à l'impératif.
    Après avoir posté, relisez-vous ! Et en cas d'erreur ou d'oubli, il existe un bouton « Modifier », à utiliser sans modération
    On a des lois pour protéger les remboursements aux faiseurs d’argent. On n’en a pas pour empêcher un être humain de mourir de misère.
    Mes 2 cts,
    --
    jp

  4. #4
    Responsable Systèmes

    Un hyperviseur Bare Metal, c'est un hyperviseur de type 1 qui s'installe directement sur la machine sans OS, exemple VMWAre Esx.
    Sur nos Os on utilise des hyperviseurs de type 2 (virtualbox, VMWare player).


    Si tu installes ta VM en standard sur ton disque C, ton OS va te signaler que le disque est plein comme l'image fournie. Si tu stockes ton image disque sur support amovible, je ne pense pas que tu es l'erreur, mais ce n'est pas recommandé.

    Il faut vraiment faire gaffe en cas d'utilisation de disque dynamique. VMWare workstation player gère peut-être mieux que VirtualBox. Pour ESX, tu recevra un warning et les VM vont se suspendre automatiquement je pense.

    Sur les hyperviseurs que nous utilisons, au niveau de ton hôte, ton image disque est traité comme tout autre fichier. En cas de disque plein, tu ne pourras par exemple pas sauvegarder ta présentation Powerpoint. La seule différence est que ton image va grossir par blocs de x taillle. Si l'hôte ne peut faire l'écriture, tu risque une corruption du FS virtualisé.

    Le disque dynamique est donc adapté si tu as une VM qui ne risque pas de grossir énormément. Exemple, je crée des disques dynamiques de 8 Go pour des Debian de test, le disque occupant environ 1,5 Go. Donc pour plusieurs VM, ça me permet de ne pas occuper de la place pour rien et de garder une possibilité d'agrandissement des FS virtualisés. Il est plus facile d'agrandir un disque dynamique si tes besoins changent qu'un disque fixe.

    Les inconvénients :
    - il faut faire gaffe à l'espace disque
    - l'accès est plus lent qu'avec disque dynamique
    Les avantages :
    - possibilité de surbooking d'espace disque
    - le disque dynamique n'occupe que l'espace réellement occupé par les données.
    Ma page sur developpez.com : http://chrtophe.developpez.com/ (avec mes articles)
    Mon article sur la création d'un système : http://chrtophe.developpez.com/tutor...s/minisysteme/
    Mon article sur le P2V : http://chrtophe.developpez.com/tutoriels/p2v/
    Consultez nos FAQ : Windows, Linux, Virtualisation