Forum Linux.général question virtualisation

Posté par .
Tags : aucun
1
29
avr.
2010
J'ai une question a faire aux specialistes de la virtualisation.

Dans mon boulot on developpe des codes de calculs (entre autre) et la question se pose sur l'impact a ce niveau la si cela se faisait dans un environnement virtualise. En gros quels sont les pertes de performances sur du calculs brutes.

La raison pour laquelle on pense a virtualiser tout cela c'est que l'on doit faire le meme style de calculs sur une vingtaine de machine differente en utilisant exactement les memes bibliotheques et code. Par consequent on a pense que pour faire des mises a jour et aussi pour des questions de remplacement rapide d'une machine si un probleme de materiel apparait sur une des machines la virtualisation serait pas mal.

Si vous avez de la doc et des informations pour voir a quel niveau la virtualisation peut ralentir des calculs je suis preneur.

merci d'avance.
  • # DIY

    Posté par . Évalué à 3.

    Tu fais tourner un benchmark, qui fondamentalement fait des calculs, genre ubench (ou autre) et tu compare...
    • [^] # Re: DIY

      Posté par . Évalué à 2.

      je ne suis pas un specialiste de la virtualisation et du coup avant de me lancer dedans je prefere poser la question si c'est jouable ou pas. Je n'ai ni l'envie ni le temps a perdre si c'est c'est sur que cela ne marche pas.

      Ensuite ta proposition serait valable si la configuration d'un environement virtualise etait simple et uniforme ce qui il me semble est tres loin d'etre le cas. J'ai meme cru comprendre que la config depend du type de chose que tu veux faire dessus.
      • [^] # Re: DIY

        Posté par . Évalué à 1.

        Ça dépend de ce que vous voulez faire, mais si c'est hôte Linux et vm Linux, ça va relativement vite, monter un xen et un kvm ca se fait en une demi journée je dirais, bon sans avoir tout parfaitement configurer, mais pour faire des benchs ça suffit.
        • [^] # Re: DIY

          Posté par (page perso) . Évalué à 4.

          Ca se fait même en quelques secondes :-)
          aptitude install kvm
          dd if=/dev/zero of=/chemin/mon_disque_virtuel.raw bs=1 count=1 seek=30G (de tête, il y a peut-être un chouille à corriger)
          kvm -name test -smp 2 -m 512 -k fr -usbdevice tablet -localtime -cdrom /chemin/image_linux_windows_whatever.iso -hda /chemin/mon_disque_virtuel.raw -boot order=d -net none -daemonize -vnc a.b.d.c:0 et hop tu démarres l'installation de ton OS.

          Bon, après il te faut le réseau, il faut demander à google puis copier/coller.
          • [^] # Re: DIY

            Posté par . Évalué à 1.

            J'aurais plutôt dit:

            dd if=/dev/zero of=/chemin/mon_disque_virtuel.raw bs=30G count=1
            ou
            dd if=/dev/zero of=/chemin/mon_disque_virtuel.raw bs=3G count=30
            • [^] # Re: DIY

              Posté par . Évalué à 1.

              Oups. Il fallait bien sur lire:
              dd if=/dev/zero of=/chemin/mon_disque_virtuel.raw bs=1G count=30
            • [^] # Re: DIY

              Posté par (page perso) . Évalué à 5.

              Avec ma méthode, cela crée un fichier "avec un trou". Ca prend un chouillème de seconde. Et ça prend zéro octet sur le disque. Le fichier occupera de la place au fur et à mesure de son utilisation. Avec ta méthode, ça rempli vraiment le fichier dès le départ.
      • [^] # Re: DIY

        Posté par . Évalué à 2.

        Mais tu peux extraire un coefficient, qui te donnera une valeur globale de ce que tu peux attendre. Imaginons que tu utilise une machine pour faire un calcul, tu mets 2 machine virtuelle configuré très rapidement (cf plus bas), et tu calcule:

        Temps utilisé pour tel calcul sur machine virtuelle / temps utilisé sur une machine réelle
  • # Pas de grosses pertes, je pense

    Posté par . Évalué à 3.

    Les pertes de perf pour la virtualisation se font uniquement pour ce qui est appels systèmes et tout ce qui est en relation avec la hard (en gros, d'après ce que j'ai compris). Donc, un code (en userspace) qui ne fait que de l'algo tournera exactement à la même vitesse qu'en natif.

    Après, il faut voir aussi que d'autres choses peuvent se passer "dans ton dos" : comment est mappée la mémoire, les context switch, etc, et là dessus tu vas peut-être perdre un peu. Penser aussi aux malloc qui passent par un appel système : si t'en fait vraiment beaucoup, tu peux voir une petite différence. Faudra alors peut-être penser à faire ton propre allocateur (ou tweaker celui de la libc).

    Bon, tout ça vient de mon analyse théorique de la chose, je n'ai pas vraiment d'expérience là-dedans. Il y a peut-être des choses à corriger.
  • # proxmox

    Posté par (page perso) . Évalué à 1.

    Tu peut utiliser proxmox, il utilise des kvm pour la virtualisation.
    Si vos machines sont sous linux vous pouvez utiliser openvz avec proxmox et la c'est génial, tu met toutes tes machines physique sous proxmox, tu fait un cluster avec toutes les machines qui sont sous proxmox.
    après tu peut crée tes containers openvz avec leurs systèmes et tu les migrent d'un serveur à l'autre à chaud.
    Tu peut leurs attribuer plus de processeur, de ram ou de DD à chaud.
    http://pve.proxmox.com/wiki/Main_Page

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.