SlideShare ist ein Scribd-Unternehmen logo
1 von 49
Downloaden Sie, um offline zu lesen
AC - Virtualisation

Semestre Automne 2008     Antoine Benkemoun
                              Romain Hinfray
Introduction
  Cadre    du projet

  Choix   de Xen

  Quatre    parties
      Tour d’horizon de la virtualisation
      Pré-requis à la compréhension de Xen
      Présentation de Xen
      Architecture de Xen
Sommaire 1ère partie

  1 Tour    d’horizon
       Historique
       Pourquoi virtualiser ?
       Solutions techniques
       Solutions commerciales
  II   Pré-requis à la compréhension de Xen
       La notion d’anneau
       Les problèmes liés à l’architecture x86
       Gestion de la mémoire
Sommaire 2ème partie
  III   Présentation de Xen
     Interactions entre l’hyperviseur, le système d’exploitation et les
      applications
     Les domaines
  IV Architecture      de Xen
        La gestion des informations système
        La communication inter-domaines
        La gestion du temps
        La gestion de la mémoire
        La gestion du temps
        La réseau sous Xen
  Conclusion
Introduction à la virtualisation
  Objectif
      Faire fonctionner plusieurs environnements logiques
       indépendants séparément

  Extension    du principe d’émulation
      Substitution de composants informatiques par une application


  Multiplexage    de systèmes d’exploitation
Tour d’horizon : Historique
  1960   : Composant VM/CMS du System/360 d’IBM
      Cloisonnement d’environnements logiques
  1990   : Amiga de Commodore International
      Exécution des PC X386, Macintosh 6800 et X11
  1990: Architecture NUMA (Non Uniform Memory
  Access)
      Cloisonnement et partitionnement de la mémoire via des bus
  1999   : VMWare
      Virtualisation de systèmes x86
  2000   à aujourd’hui : Développements de projet libres
      QEMU, Bochs, Xen (2003), KVM (2007)
Tour d’horizon : Pourquoi virtualiser ?
 Trois   types d’avantages

   Sécurité



   Coût



   Criticité   et performances
Tour d’horizon : Pourquoi virtualiser ? (Sécurité)
  Isolation
      Ignorance de la présence d’autres environnements
      Utilisation des protocoles conventionnels
  Cloisonnement
      Allocation de ressources physiques (exclusive ou temporelle)
  Etude   de sécurité
      Contrôle et étude d’environnements infectés
      Répétition de scénarios
Pourquoi virtualiser ? (Coût)
  Sous   utilisation actuelle des serveurs

      Coût de l’énergie électrique

      Coût de l’espace en centre de données

  Principe   du cloisonnement des services

  Mutualisation
               de ressources physiques tout en maintenant
  un cloisonnement des services
Pourquoi virtualiser ? (Criticité et
Performance)
  Possibilité
           de mettre en pause et de copier un
  environnement logiciel complet
      Sauvegarde
      Clonage
  Migration     d’environnements logiciels
      Transfert d’un environnement logiciel vers une autre machine
       physique
  Allocation    dynamique de ressources
      Flexibilité de l’offre
      Adaptabilité en cas de montée en charge
Tour d’horizon : Les solutions techniques
                                           Virtualisation


                Systèmes                                               Processus




  modifiés                         non modifiés
                                                              Virtualisation au niveau
                                                              du système d’exploitation


Paravirtualisation   Virtualisation totale Virtualisation matérielle
                                                    assistée
Tour d’horizon : Les solutions techniques

          La virtualisation au niveau du système d’exploitation

    Un seul système d’exploitation, un seul noyau
    Environnements utilisateurs entièrement cloisonnés
    Allocation de ressources entre les différents environnements
                          Environnement           Environnement
                       utilisateur cloisonné   utilisateur cloisonné



                                   Couche logicielle


                       Système d’exploitation avec noyau


                                         Matériel
Tour d’horizon : Les solutions techniques

                               La virtualisation totale

    Emulation de machines physiques
    Emulation de toutes les architectures possibles
    Les systèmes invités croient être sur des machines physiques
    Perte de performances importante
                       Système d’exploitation   Système d’exploitation
                               invité                   invité

                          Matériel émulé            Matériel émulé


                                   Couche logicielle

                       Système d’exploitation avec noyau

                                         Matériel
Tour d’horizon : Les solutions techniques

                   La virtualisation materielle assistée

    Architecture processeur conçue pour la virtualisation
    Emulation du matériel mais moins de pertes de performances
    Systèmes d’exploitations invités non modifiés

                      Système d’exploitation   Système d’exploitation
                              invité                   invité

                         Matériel émulé           Matériel émulé


                             Virtual Machine Monitor

                      Système d’exploitation avec noyau

                        Matériel Intel-VT ou AMD-V
Tour d’horizon : Les solutions techniques

                       La paravirtulisation
  Systèmes  d’exploitations invités modifiés
  Systèmes conscients d’être virtualisés
  Pas de systèmes d’exploitation entre les systèmes invités et
   le matériel
                 Système d’exploitation   Système d’exploitation
                    invité avec noyau        invité avec noyau
                         modifié                  modifié



                                 Hyperviseur


                                   Matériel
Tour d’horizon : Les solutions techniques


Bilan en terme de niveau d’émulation du matériel

  Virtualisation au
 niveau du système    Paravirtualisation    Virtualisation     Virtualisation totale
   d’exploitation                          matériel assistée
Tour d’horizon : Les solutions commerciales

                    Les solutions propriétaires

  1er   éditeur VMWare
      13 logiciels
      Virtualisation totale et matérielle assistée
      VMWare Server ESX : Hyperviseur ?

  Virtual   PC (Microsoft)
      Gratuit
      Virtualisation totale
Tour d’horizon : Les solutions commerciales

                                  Les solutions Libres
    Xen
         Paravirtualisation
    QEMU
         Virtualisation totale
    OpenVZ
         Virtualisation au niveau du système d’exploitation
    KVM
         2 parties :
              Un module dans le noyau Linux (communication avec le processeur)
              Un module dérivé de QEMU
         Gestion des instructions processeur liées à la virtualisation
III Présentation de Xen

  Les      problèmes liés à l’architecture x86 et ces solutions
  La      notion d’anneau
    Interactions entre l’hyperviseur, le système d’exploitation et les
     applications
    Les domaines
         Domaines privilégiés

         Domaines non privilégiés

         Domaines matériel assistés
Les problèmes liés à l’architecture x86 et ces solutions
  Selon
       Popek et Goldberg il existe 3 types d’instructions
  processeur problématiques pour la virtualisation :
      Instructions privilégiées
      Instructions sensibles à la configuration
      Instructions sensibles de comportement
  Nécessité   de capter ces instructions en virtualisation
  Certaines dérogent à la règle
  Nous avons donc un problème pour mettre en place une
   architecture de virtualisation sur x86
  Solutions :
      VMWare : utilisation de la virtualisation totale
      Xen : remplacer les instructions privilégiées par d’autres
La notion d’anneau
    Les anneaux identifient des niveaux de privilèges
    Limitation des accès aux informations du système
    Tous les systèmes actuels n’utilisent que 2 des 4 anneaux sauf quelques architectures
     spécifiques

                                              Anneau 3

                                              Anneau 2

                                              Anneau 1

                                              Anneau 0


                                               Noyau


                                               Pilotes
                                               Pilotes
                                            Applications

              Architecture x86 32 bits avec un système d’exploitation classique
Interactions hyperviseur / applications / OS
    Qu’est ce que Xen ?
    Mise en place de la paravirtualisation
         Motivation principale : remplacement des instructions
    Positionnement des différents composants
                                       Anneau 3

                                       Anneau 2

                                       Anneau 1

                                       Anneau 0

                                      Hyperviseur



                                        Noyau
                                         Vide

                                       Domaines
Interactions hyperviseur / applications / OS
     Adaptation d’un hyperviseur dans les architectures non conçues pour la virtualisation

                    Anneau 3

                    Anneau 2                                            Anneau 3
                    Anneau 1

                    Anneau 0                                            Anneau 0

                                                        Applications
                  Hyperviseur                                          Hyperviseur


                     Noyau                                                         Noyau
                     Pilotes
                  Applications

Architecture x86 32 bits avec un hyperviseur Xen   Architecture x86 64 bits avec un hyperviseur Xen
Interactions hyperviseur / applications / OS
  Apport   des extensions de virtualisation

                                     Anneau 3


                                     Anneau 0

                                     Anneau -1


                                    Hyperviseur


                                       Noyau

                                    Applications


            Architecture x86 64 bits et extensions processeurs liées à la
                       virtualisation avec un hyperviseur Xen
Interactions hyperviseur / applications / OS
Système classique                            Paravirtualisation

     Noyau                        Anneau 0     Hyperviseur

                                  Anneau 1        Noyau

                                  Anneau 2

   Application                    Anneau 3      Application


      Hypercall
      Appels système privilégié
      Appels système classique
Les domaines
  Système    d’exploitation invité



  Différents   types de domaines pour différentes utilités
      Domaine privilégié

      Domaine non privilégié

      Domaine matériel assisté
Domaines privilégiés
  Premier   domaine exécuté au démarrage : Domaine 0

  Accès   aux fonctionnalités de l’hyperviseur

  Gestion   des autres domaines

  Accès   direct à la machine physique et à ses périphériques

  Gestion
         de l’interface entre la machine physique et les
  domaines non privilégiés
Domaines non privilégiés
  Exécutés    par le dom0
      Limite de la capacité mémoire

  Domaines     de paravirtualisation

  Accès   aux périphériques à travers le dom0

  Système    d’exploitation invité « classique »
Schéma résumé
Domaine matériel assisté (HVM)
  Type   de domaine non privilégié


  Virtualisation   matérielle assistée


  Utilisation   du module QEMU exécuté dans le dom0
Schéma résumé
IV Architecture de Xen en paravirtualisation

  La gestion des informations système
  La communication inter-domaines
  La gestion du temps
  La gestion de l’ordonnancement
  La gestion de la mémoire
  La réseau sous Xen
Gestion des informations système
  Nécessité   d’avoir des informations sur le matériel sous-
  jacent

  Modificationdu mécanisme de récupération de ces
  informations système

  Shared   info pages – pages d’information partagée

  Page   d’information de démarrage

  Page   shared_info
Communication interdomaines
  Isolation   totale pas envisageable
  Nécessite    d’accéder aux périphériques de la machine
  physique
      Pilotes spécifiques dans le dom0
  Cas   de processus normaux
  Zones    de mémoire partagées
  Hypercall    grant_table_op
      Allocation de zones
      Transfert de zones
Communication interdomaines

       Je voudrais
     accéder au bloc
     X du lecteur de
          DVD          dom0        Ecriture des données
                                 dans la zone de mémoire
                                          partagée




  domU Ubuntu




                              domU FreeBSD
Gestion du temps
  Nécessité    de la gestion du temps
  Ecoulement     du temps
      Lors de l’exécution
      En dehors de l’exécution
  Trois   valeurs contenues dans shared_info
      Heure initiale du lancement du domaine
      Temps écoulé depuis le lancement du domaine
      Time Stamp Counter (TSC)
Gestion de l’ordonnancement
  Gestion
         de l’allocation de ressources de calcul aux
  domaines

  Ordonnanceurs

  Deux    types
      SEDF (Simple Earliest Deadline First)

      Credit Scheduler
Gestion de l’ordonnancement
  SEDF

     Temps d’exécution défini
     Périodicité définie
Gestion de l’ordonnancement




Temps : 4 ms         Temps : 3 ms              Temps : 5 ms
Périodicité : 20ms   Périodicité : 10ms        Périodicité : 10ms




                          Temps



                                          Allocation sur un VCPU
Gestion de l’ordonnancement
  Credit   scheduler
  Deux     attributs :
      Poids
      Limite

  Allocation    de crédits
  Exécution     jusqu’à l’épuisement des crédits
Gestion de l’ordonnancement




 Poids : 2               Poids : 2         Poids : 4
 Limite : 25%            Limite : 0        Limite : 0


U :2            U :1   U :1       U :1
F :2            F :3   F :2       F :3
D :4            D :4   D :9       D : 12



                          Temps
La gestion de la mémoire dans un système classique
                          La pagination
                     Cadre de pages en mémoire



                                                           Espace physique




                    Tables des pages             Tables des pages



Adresse virtuelle
                     Espace virtuel               Espace virtuel
                     d’un programme               d’un programme
La gestion de la mémoire dans un système classique
                                La segmentation

                                              Table des pages du segment 0
                                                    Entrée de la table 0
 Tables des descripteurs de segments                Entrée de la table 1

                                                    Entrée de la table 2
         Descripteur de segment 0                   Entrée de la table 3

         Descripteur de segment 1
                                              Table des pages du segment 1
         Descripteur de segment 2
                                                    Entrée de la table 0
                                                    Entrée de la table 1

                                                    Entrée de la table 2
                                                    Entrée de la table 3
La gestion de la mémoire dans un système classique
                                 La segmentation

  En   architecture x86, il existe 2 types de tables de
     descripteurs de segments :
         Global Description Table
         Local Description Table
     Nécessité d’un sélecteur de segment pour charger un
     descripteur dans un registre :

                                                       Niveau de
             Numéro d’entrée dans la table   GDT/LDT   privilèges
                                                          0-3
                       13 bits                1 bit     2 bits
La gestion de la mémoire dans Xen
                                 Modèle de gestion de mémoire en
                                         paravirtualisation


Espace d’adressage de l’application A                                     Espace d’adressage de l’application B




     Espace d’adressage du Dom U                                     Espace d’adressage du Dom U




                              Espace d’adressage physique géré par l’hyperviseur
La gestion de la mémoire dans Xen
                 Modèle de gestion de mémoire en
                         paravirtualisation

  Pourquoi   3 niveaux d’indirections
    Problème lié au fait qu’un système croit que son espace
     d’adressage est continu et qu’il est seul sur la machine physique
    Problème de la mise en pause d’une machine et d’un
     redémarrage sur une autre machine physique
  Accès   mémoire et mise à jour de la table des pages
    Lecture et Ecriture uniquement via des hypercalls
  Intérêt : Aucun système invité ne modifie l’espace mémoire sans en
    avertir l’Hyperviseur
La gestion du réseau

  Toutes   les communications passent par le Dom 0
  2   tunnels entre un Dom U et le Dom 0
      Un tunnel de service et un tunnel de données
      Chaque tunnel composé de 2 zones mémoire distinctes
      Tunnel de service permet de localiser les pages mémoires de
       données brutes
  Communication  réseau interdomaines gourmande en
  ressources processeur
Conclusion sur Xen
  Solution      innovante et performante
  Solution      libre permettant l’accès à la connaissance
  Support       de l’industrie informatique
         “IBM is a strong supporter of the open source community and
          has a long history with virtualization, having invented it for
          mainframe over 40 years ago.” – Rich Lechner,Vice Président
          d’IBM Entreprise Systems
    Composante de base du « Cloud Computing »
Conclusion du projet
  Acquisition   de connaissances sur un sujet d’actualité
  Approfondissement      des connaissances en système
  d’exploitation
  Assimilation    d’une méthodologie de rédaction
  Clarification   et formalisation de notions
  Apport professionnel dans le domaine des systèmes
  d’information

Weitere ähnliche Inhalte

Was ist angesagt?

Introduction au Cloud Computing
Introduction au Cloud Computing Introduction au Cloud Computing
Introduction au Cloud Computing FICEL Hemza
 
Les avantages de la virtualisation
Les avantages de la virtualisationLes avantages de la virtualisation
Les avantages de la virtualisationNRC
 
cours-supcom-virt.pptx
cours-supcom-virt.pptxcours-supcom-virt.pptx
cours-supcom-virt.pptxManellansari
 
Virtualisation.pptx
Virtualisation.pptxVirtualisation.pptx
Virtualisation.pptxISaf3
 
Alphorm.com Support de la formation Vmware Esxi 6.0
Alphorm.com Support de la formation Vmware Esxi 6.0Alphorm.com Support de la formation Vmware Esxi 6.0
Alphorm.com Support de la formation Vmware Esxi 6.0Alphorm
 
Mise en place d'une infrastructure basée sur OpenStack
Mise en place d'une infrastructure basée sur OpenStack Mise en place d'une infrastructure basée sur OpenStack
Mise en place d'une infrastructure basée sur OpenStack Ahmed Slim
 
Projet administration-sécurité-réseaux
Projet administration-sécurité-réseauxProjet administration-sécurité-réseaux
Projet administration-sécurité-réseauxRabeb Boumaiza
 
Installer et configurer NAGIOS sous linux
Installer et configurer NAGIOS sous linuxInstaller et configurer NAGIOS sous linux
Installer et configurer NAGIOS sous linuxZakariyaa AIT ELMOUDEN
 
Introduction au Software Defined Networking (SDN)
Introduction au Software Defined Networking (SDN)Introduction au Software Defined Networking (SDN)
Introduction au Software Defined Networking (SDN)Edouard DEBERDT
 
Cloud computing
Cloud computingCloud computing
Cloud computingmourad50
 
Cloud et Virtualisation
Cloud et VirtualisationCloud et Virtualisation
Cloud et VirtualisationMarc Jouve
 
Introduction au Cloud computing
Introduction au Cloud computingIntroduction au Cloud computing
Introduction au Cloud computingPhilippe Scoffoni
 
Architecture réparties et les services web
Architecture réparties et les services webArchitecture réparties et les services web
Architecture réparties et les services webCHOUAIB EL HACHIMI
 
Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...
Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...
Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...Nawres Farhat
 
Projet sur le Cloud Computing
Projet sur le Cloud ComputingProjet sur le Cloud Computing
Projet sur le Cloud ComputingTsubichi
 
Rapport de projet_de_fin_d__tudes__pfe__safwen (8)
Rapport de projet_de_fin_d__tudes__pfe__safwen (8)Rapport de projet_de_fin_d__tudes__pfe__safwen (8)
Rapport de projet_de_fin_d__tudes__pfe__safwen (8)safwenbenfredj
 

Was ist angesagt? (20)

Introduction au Cloud Computing
Introduction au Cloud Computing Introduction au Cloud Computing
Introduction au Cloud Computing
 
Les avantages de la virtualisation
Les avantages de la virtualisationLes avantages de la virtualisation
Les avantages de la virtualisation
 
cours-supcom-virt.pptx
cours-supcom-virt.pptxcours-supcom-virt.pptx
cours-supcom-virt.pptx
 
Virtualisation.pptx
Virtualisation.pptxVirtualisation.pptx
Virtualisation.pptx
 
Alphorm.com Support de la formation Vmware Esxi 6.0
Alphorm.com Support de la formation Vmware Esxi 6.0Alphorm.com Support de la formation Vmware Esxi 6.0
Alphorm.com Support de la formation Vmware Esxi 6.0
 
Mise en place d'une infrastructure basée sur OpenStack
Mise en place d'une infrastructure basée sur OpenStack Mise en place d'une infrastructure basée sur OpenStack
Mise en place d'une infrastructure basée sur OpenStack
 
Projet administration-sécurité-réseaux
Projet administration-sécurité-réseauxProjet administration-sécurité-réseaux
Projet administration-sécurité-réseaux
 
Cloud presentation
Cloud  presentationCloud  presentation
Cloud presentation
 
Ansible
Ansible Ansible
Ansible
 
Installer et configurer NAGIOS sous linux
Installer et configurer NAGIOS sous linuxInstaller et configurer NAGIOS sous linux
Installer et configurer NAGIOS sous linux
 
Introduction au Software Defined Networking (SDN)
Introduction au Software Defined Networking (SDN)Introduction au Software Defined Networking (SDN)
Introduction au Software Defined Networking (SDN)
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Eucalyptus
EucalyptusEucalyptus
Eucalyptus
 
Cloud et Virtualisation
Cloud et VirtualisationCloud et Virtualisation
Cloud et Virtualisation
 
Openstack framework Iaas
Openstack framework IaasOpenstack framework Iaas
Openstack framework Iaas
 
Introduction au Cloud computing
Introduction au Cloud computingIntroduction au Cloud computing
Introduction au Cloud computing
 
Architecture réparties et les services web
Architecture réparties et les services webArchitecture réparties et les services web
Architecture réparties et les services web
 
Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...
Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...
Rapport pfe- Refonte et déploiement d’une solution de messagerie en utilisant...
 
Projet sur le Cloud Computing
Projet sur le Cloud ComputingProjet sur le Cloud Computing
Projet sur le Cloud Computing
 
Rapport de projet_de_fin_d__tudes__pfe__safwen (8)
Rapport de projet_de_fin_d__tudes__pfe__safwen (8)Rapport de projet_de_fin_d__tudes__pfe__safwen (8)
Rapport de projet_de_fin_d__tudes__pfe__safwen (8)
 

Andere mochten auch

Atelier Microsoft MOCS-Exchange 2007-Hyperv
Atelier Microsoft MOCS-Exchange 2007-HypervAtelier Microsoft MOCS-Exchange 2007-Hyperv
Atelier Microsoft MOCS-Exchange 2007-Hypervpimp uncle
 
Comment créer, gérer et sauvegarder éfficacement vos environnements virtuels ...
Comment créer, gérer et sauvegarder éfficacement vos environnements virtuels ...Comment créer, gérer et sauvegarder éfficacement vos environnements virtuels ...
Comment créer, gérer et sauvegarder éfficacement vos environnements virtuels ...fabricemeillon
 
Atelier CITRIX
Atelier CITRIXAtelier CITRIX
Atelier CITRIXpimp uncle
 
Système, Virtualisation, Nuage
Système, Virtualisation, NuageSystème, Virtualisation, Nuage
Système, Virtualisation, NuageMarc Daumas
 
Techdays 2009 - Administration centralisée des infrastructures de virtualisation
Techdays 2009 - Administration centralisée des infrastructures de virtualisationTechdays 2009 - Administration centralisée des infrastructures de virtualisation
Techdays 2009 - Administration centralisée des infrastructures de virtualisationfabricemeillon
 
Techdays 2009 - La virtualisation de machines avec Hyper-V
Techdays 2009 - La virtualisation de machines avec Hyper-VTechdays 2009 - La virtualisation de machines avec Hyper-V
Techdays 2009 - La virtualisation de machines avec Hyper-Vfabricemeillon
 
Virtualisation et intégration des applications d'entreprise en environnement ...
Virtualisation et intégration des applications d'entreprise en environnement ...Virtualisation et intégration des applications d'entreprise en environnement ...
Virtualisation et intégration des applications d'entreprise en environnement ...Kouotou Aboubakar Sidiki, Eng, PMP
 
LinkedIn SlideShare: Knowledge, Well-Presented
LinkedIn SlideShare: Knowledge, Well-PresentedLinkedIn SlideShare: Knowledge, Well-Presented
LinkedIn SlideShare: Knowledge, Well-PresentedSlideShare
 

Andere mochten auch (9)

Atelier Microsoft MOCS-Exchange 2007-Hyperv
Atelier Microsoft MOCS-Exchange 2007-HypervAtelier Microsoft MOCS-Exchange 2007-Hyperv
Atelier Microsoft MOCS-Exchange 2007-Hyperv
 
Comment créer, gérer et sauvegarder éfficacement vos environnements virtuels ...
Comment créer, gérer et sauvegarder éfficacement vos environnements virtuels ...Comment créer, gérer et sauvegarder éfficacement vos environnements virtuels ...
Comment créer, gérer et sauvegarder éfficacement vos environnements virtuels ...
 
Atelier CITRIX
Atelier CITRIXAtelier CITRIX
Atelier CITRIX
 
Système, Virtualisation, Nuage
Système, Virtualisation, NuageSystème, Virtualisation, Nuage
Système, Virtualisation, Nuage
 
Techdays 2009 - Administration centralisée des infrastructures de virtualisation
Techdays 2009 - Administration centralisée des infrastructures de virtualisationTechdays 2009 - Administration centralisée des infrastructures de virtualisation
Techdays 2009 - Administration centralisée des infrastructures de virtualisation
 
Techdays 2009 - La virtualisation de machines avec Hyper-V
Techdays 2009 - La virtualisation de machines avec Hyper-VTechdays 2009 - La virtualisation de machines avec Hyper-V
Techdays 2009 - La virtualisation de machines avec Hyper-V
 
Virtualisation et intégration des applications d'entreprise en environnement ...
Virtualisation et intégration des applications d'entreprise en environnement ...Virtualisation et intégration des applications d'entreprise en environnement ...
Virtualisation et intégration des applications d'entreprise en environnement ...
 
A Libre Ouvert : Virtual box
A Libre Ouvert : Virtual boxA Libre Ouvert : Virtual box
A Libre Ouvert : Virtual box
 
LinkedIn SlideShare: Knowledge, Well-Presented
LinkedIn SlideShare: Knowledge, Well-PresentedLinkedIn SlideShare: Knowledge, Well-Presented
LinkedIn SlideShare: Knowledge, Well-Presented
 

Ähnlich wie Etude de la virtualisation

Virtualisation de Machines avec Windows Hyper V
Virtualisation de Machines avec Windows Hyper VVirtualisation de Machines avec Windows Hyper V
Virtualisation de Machines avec Windows Hyper Vfabricemeillon
 
French .NEXT on Tour Keynote and Technical deck-libre
French .NEXT on Tour Keynote and Technical deck-libreFrench .NEXT on Tour Keynote and Technical deck-libre
French .NEXT on Tour Keynote and Technical deck-libreNEXTtour
 
cloudPrivé.pptx
cloudPrivé.pptxcloudPrivé.pptx
cloudPrivé.pptxNatijTDI
 
IT FUTURE 2011 - Microsoft Hyper V
IT FUTURE 2011 - Microsoft Hyper VIT FUTURE 2011 - Microsoft Hyper V
IT FUTURE 2011 - Microsoft Hyper VFujitsu France
 
Microsoft - Solution Virtualisation Windows Server 08
Microsoft - Solution Virtualisation Windows Server 08Microsoft - Solution Virtualisation Windows Server 08
Microsoft - Solution Virtualisation Windows Server 08actualblog
 
Techdays 2009 - Hyper-V en profondeur, bonnes pratiques et quoi de neuf avec ...
Techdays 2009 - Hyper-V en profondeur, bonnes pratiques et quoi de neuf avec ...Techdays 2009 - Hyper-V en profondeur, bonnes pratiques et quoi de neuf avec ...
Techdays 2009 - Hyper-V en profondeur, bonnes pratiques et quoi de neuf avec ...fabricemeillon
 
1536524 1536524 1536524 1536524 1536524.ppt
1536524  1536524 1536524  1536524 1536524.ppt1536524  1536524 1536524  1536524 1536524.ppt
1536524 1536524 1536524 1536524 1536524.pptAbdellahELMAMOUN
 
Virtualisation par logiciels libres
Virtualisation par logiciels libresVirtualisation par logiciels libres
Virtualisation par logiciels libresguest3be047
 
Protection complète des données pour Hyper-V
Protection complète des données pour Hyper-VProtection complète des données pour Hyper-V
Protection complète des données pour Hyper-VMicrosoft Décideurs IT
 
INTRO TO VIRTUALISATION TECHNOLOGIE ET CLOUD
INTRO TO VIRTUALISATION TECHNOLOGIE ET CLOUDINTRO TO VIRTUALISATION TECHNOLOGIE ET CLOUD
INTRO TO VIRTUALISATION TECHNOLOGIE ET CLOUDDALLELKHEZZANE2
 
virtualisation.pptx
virtualisation.pptxvirtualisation.pptx
virtualisation.pptxrejebwissal
 
Intellicore Tech Talk 10 - Apache Web Server Internals
Intellicore Tech Talk 10 - Apache Web Server InternalsIntellicore Tech Talk 10 - Apache Web Server Internals
Intellicore Tech Talk 10 - Apache Web Server InternalsNeil Armstrong
 
Grid Computing avec Symphony
Grid Computing avec SymphonyGrid Computing avec Symphony
Grid Computing avec SymphonyIn Fine
 
Implémentation de technologie de haute disponibilité et de tolérance aux pann...
Implémentation de technologie de haute disponibilité et de tolérance aux pann...Implémentation de technologie de haute disponibilité et de tolérance aux pann...
Implémentation de technologie de haute disponibilité et de tolérance aux pann...Youcef Aliarous
 
Administration intégrée HP/Microsoft des serveurs HP ProLiant
Administration intégrée HP/Microsoft des serveurs HP ProLiantAdministration intégrée HP/Microsoft des serveurs HP ProLiant
Administration intégrée HP/Microsoft des serveurs HP ProLiantMicrosoft Technet France
 
En route vers le cloud privé CQSI2012 v1.0
En route vers le cloud privé CQSI2012 v1.0En route vers le cloud privé CQSI2012 v1.0
En route vers le cloud privé CQSI2012 v1.0Tactika inc.
 
L’hyperconvergence au cœur du Software-defined data center
L’hyperconvergence au cœur du Software-defined data centerL’hyperconvergence au cœur du Software-defined data center
L’hyperconvergence au cœur du Software-defined data centerColloqueRISQ
 
Présentation king sbc solution janvier 2014 nutanix v1.1
Présentation king sbc solution janvier 2014 nutanix v1.1Présentation king sbc solution janvier 2014 nutanix v1.1
Présentation king sbc solution janvier 2014 nutanix v1.1KING SBC
 
Patterns Windows Azure
Patterns Windows AzurePatterns Windows Azure
Patterns Windows AzureMicrosoft
 

Ähnlich wie Etude de la virtualisation (20)

Virtualisation de Machines avec Windows Hyper V
Virtualisation de Machines avec Windows Hyper VVirtualisation de Machines avec Windows Hyper V
Virtualisation de Machines avec Windows Hyper V
 
French .NEXT on Tour Keynote and Technical deck-libre
French .NEXT on Tour Keynote and Technical deck-libreFrench .NEXT on Tour Keynote and Technical deck-libre
French .NEXT on Tour Keynote and Technical deck-libre
 
cloudPrivé.pptx
cloudPrivé.pptxcloudPrivé.pptx
cloudPrivé.pptx
 
IT FUTURE 2011 - Microsoft Hyper V
IT FUTURE 2011 - Microsoft Hyper VIT FUTURE 2011 - Microsoft Hyper V
IT FUTURE 2011 - Microsoft Hyper V
 
Microsoft - Solution Virtualisation Windows Server 08
Microsoft - Solution Virtualisation Windows Server 08Microsoft - Solution Virtualisation Windows Server 08
Microsoft - Solution Virtualisation Windows Server 08
 
Techdays 2009 - Hyper-V en profondeur, bonnes pratiques et quoi de neuf avec ...
Techdays 2009 - Hyper-V en profondeur, bonnes pratiques et quoi de neuf avec ...Techdays 2009 - Hyper-V en profondeur, bonnes pratiques et quoi de neuf avec ...
Techdays 2009 - Hyper-V en profondeur, bonnes pratiques et quoi de neuf avec ...
 
1536524 1536524 1536524 1536524 1536524.ppt
1536524  1536524 1536524  1536524 1536524.ppt1536524  1536524 1536524  1536524 1536524.ppt
1536524 1536524 1536524 1536524 1536524.ppt
 
Virtualisation par logiciels libres
Virtualisation par logiciels libresVirtualisation par logiciels libres
Virtualisation par logiciels libres
 
Protection complète des données pour Hyper-V
Protection complète des données pour Hyper-VProtection complète des données pour Hyper-V
Protection complète des données pour Hyper-V
 
INTRO TO VIRTUALISATION TECHNOLOGIE ET CLOUD
INTRO TO VIRTUALISATION TECHNOLOGIE ET CLOUDINTRO TO VIRTUALISATION TECHNOLOGIE ET CLOUD
INTRO TO VIRTUALISATION TECHNOLOGIE ET CLOUD
 
virtualisation.pptx
virtualisation.pptxvirtualisation.pptx
virtualisation.pptx
 
Intellicore Tech Talk 10 - Apache Web Server Internals
Intellicore Tech Talk 10 - Apache Web Server InternalsIntellicore Tech Talk 10 - Apache Web Server Internals
Intellicore Tech Talk 10 - Apache Web Server Internals
 
Grid Computing avec Symphony
Grid Computing avec SymphonyGrid Computing avec Symphony
Grid Computing avec Symphony
 
Implémentation de technologie de haute disponibilité et de tolérance aux pann...
Implémentation de technologie de haute disponibilité et de tolérance aux pann...Implémentation de technologie de haute disponibilité et de tolérance aux pann...
Implémentation de technologie de haute disponibilité et de tolérance aux pann...
 
Administration intégrée HP/Microsoft des serveurs HP ProLiant
Administration intégrée HP/Microsoft des serveurs HP ProLiantAdministration intégrée HP/Microsoft des serveurs HP ProLiant
Administration intégrée HP/Microsoft des serveurs HP ProLiant
 
En route vers le cloud privé CQSI2012 v1.0
En route vers le cloud privé CQSI2012 v1.0En route vers le cloud privé CQSI2012 v1.0
En route vers le cloud privé CQSI2012 v1.0
 
L’hyperconvergence au cœur du Software-defined data center
L’hyperconvergence au cœur du Software-defined data centerL’hyperconvergence au cœur du Software-defined data center
L’hyperconvergence au cœur du Software-defined data center
 
Cloud_2022.pdf
Cloud_2022.pdfCloud_2022.pdf
Cloud_2022.pdf
 
Présentation king sbc solution janvier 2014 nutanix v1.1
Présentation king sbc solution janvier 2014 nutanix v1.1Présentation king sbc solution janvier 2014 nutanix v1.1
Présentation king sbc solution janvier 2014 nutanix v1.1
 
Patterns Windows Azure
Patterns Windows AzurePatterns Windows Azure
Patterns Windows Azure
 

Etude de la virtualisation

  • 1. AC - Virtualisation Semestre Automne 2008 Antoine Benkemoun Romain Hinfray
  • 2. Introduction   Cadre du projet   Choix de Xen   Quatre parties   Tour d’horizon de la virtualisation   Pré-requis à la compréhension de Xen   Présentation de Xen   Architecture de Xen
  • 3. Sommaire 1ère partie   1 Tour d’horizon   Historique   Pourquoi virtualiser ?   Solutions techniques   Solutions commerciales   II Pré-requis à la compréhension de Xen   La notion d’anneau   Les problèmes liés à l’architecture x86   Gestion de la mémoire
  • 4. Sommaire 2ème partie   III Présentation de Xen   Interactions entre l’hyperviseur, le système d’exploitation et les applications   Les domaines   IV Architecture de Xen   La gestion des informations système   La communication inter-domaines   La gestion du temps   La gestion de la mémoire   La gestion du temps   La réseau sous Xen   Conclusion
  • 5. Introduction à la virtualisation   Objectif   Faire fonctionner plusieurs environnements logiques indépendants séparément   Extension du principe d’émulation   Substitution de composants informatiques par une application   Multiplexage de systèmes d’exploitation
  • 6. Tour d’horizon : Historique   1960 : Composant VM/CMS du System/360 d’IBM   Cloisonnement d’environnements logiques   1990 : Amiga de Commodore International   Exécution des PC X386, Macintosh 6800 et X11   1990: Architecture NUMA (Non Uniform Memory Access)   Cloisonnement et partitionnement de la mémoire via des bus   1999 : VMWare   Virtualisation de systèmes x86   2000 à aujourd’hui : Développements de projet libres   QEMU, Bochs, Xen (2003), KVM (2007)
  • 7. Tour d’horizon : Pourquoi virtualiser ?  Trois types d’avantages   Sécurité   Coût   Criticité et performances
  • 8. Tour d’horizon : Pourquoi virtualiser ? (Sécurité)   Isolation   Ignorance de la présence d’autres environnements   Utilisation des protocoles conventionnels   Cloisonnement   Allocation de ressources physiques (exclusive ou temporelle)   Etude de sécurité   Contrôle et étude d’environnements infectés   Répétition de scénarios
  • 9. Pourquoi virtualiser ? (Coût)   Sous utilisation actuelle des serveurs   Coût de l’énergie électrique   Coût de l’espace en centre de données   Principe du cloisonnement des services   Mutualisation de ressources physiques tout en maintenant un cloisonnement des services
  • 10. Pourquoi virtualiser ? (Criticité et Performance)   Possibilité de mettre en pause et de copier un environnement logiciel complet   Sauvegarde   Clonage   Migration d’environnements logiciels   Transfert d’un environnement logiciel vers une autre machine physique   Allocation dynamique de ressources   Flexibilité de l’offre   Adaptabilité en cas de montée en charge
  • 11. Tour d’horizon : Les solutions techniques Virtualisation Systèmes Processus modifiés non modifiés Virtualisation au niveau du système d’exploitation Paravirtualisation Virtualisation totale Virtualisation matérielle assistée
  • 12. Tour d’horizon : Les solutions techniques La virtualisation au niveau du système d’exploitation   Un seul système d’exploitation, un seul noyau   Environnements utilisateurs entièrement cloisonnés   Allocation de ressources entre les différents environnements Environnement Environnement utilisateur cloisonné utilisateur cloisonné Couche logicielle Système d’exploitation avec noyau Matériel
  • 13. Tour d’horizon : Les solutions techniques La virtualisation totale   Emulation de machines physiques   Emulation de toutes les architectures possibles   Les systèmes invités croient être sur des machines physiques   Perte de performances importante Système d’exploitation Système d’exploitation invité invité Matériel émulé Matériel émulé Couche logicielle Système d’exploitation avec noyau Matériel
  • 14. Tour d’horizon : Les solutions techniques La virtualisation materielle assistée   Architecture processeur conçue pour la virtualisation   Emulation du matériel mais moins de pertes de performances   Systèmes d’exploitations invités non modifiés Système d’exploitation Système d’exploitation invité invité Matériel émulé Matériel émulé Virtual Machine Monitor Système d’exploitation avec noyau Matériel Intel-VT ou AMD-V
  • 15. Tour d’horizon : Les solutions techniques La paravirtulisation   Systèmes d’exploitations invités modifiés   Systèmes conscients d’être virtualisés   Pas de systèmes d’exploitation entre les systèmes invités et le matériel Système d’exploitation Système d’exploitation invité avec noyau invité avec noyau modifié modifié Hyperviseur Matériel
  • 16. Tour d’horizon : Les solutions techniques Bilan en terme de niveau d’émulation du matériel Virtualisation au niveau du système Paravirtualisation Virtualisation Virtualisation totale d’exploitation matériel assistée
  • 17. Tour d’horizon : Les solutions commerciales Les solutions propriétaires   1er éditeur VMWare   13 logiciels   Virtualisation totale et matérielle assistée   VMWare Server ESX : Hyperviseur ?   Virtual PC (Microsoft)   Gratuit   Virtualisation totale
  • 18. Tour d’horizon : Les solutions commerciales Les solutions Libres   Xen   Paravirtualisation   QEMU   Virtualisation totale   OpenVZ   Virtualisation au niveau du système d’exploitation   KVM   2 parties :   Un module dans le noyau Linux (communication avec le processeur)   Un module dérivé de QEMU   Gestion des instructions processeur liées à la virtualisation
  • 19. III Présentation de Xen   Les problèmes liés à l’architecture x86 et ces solutions   La notion d’anneau   Interactions entre l’hyperviseur, le système d’exploitation et les applications   Les domaines   Domaines privilégiés   Domaines non privilégiés   Domaines matériel assistés
  • 20. Les problèmes liés à l’architecture x86 et ces solutions   Selon Popek et Goldberg il existe 3 types d’instructions processeur problématiques pour la virtualisation :   Instructions privilégiées   Instructions sensibles à la configuration   Instructions sensibles de comportement   Nécessité de capter ces instructions en virtualisation   Certaines dérogent à la règle   Nous avons donc un problème pour mettre en place une architecture de virtualisation sur x86   Solutions :   VMWare : utilisation de la virtualisation totale   Xen : remplacer les instructions privilégiées par d’autres
  • 21. La notion d’anneau   Les anneaux identifient des niveaux de privilèges   Limitation des accès aux informations du système   Tous les systèmes actuels n’utilisent que 2 des 4 anneaux sauf quelques architectures spécifiques Anneau 3 Anneau 2 Anneau 1 Anneau 0 Noyau Pilotes Pilotes Applications Architecture x86 32 bits avec un système d’exploitation classique
  • 22. Interactions hyperviseur / applications / OS   Qu’est ce que Xen ?   Mise en place de la paravirtualisation   Motivation principale : remplacement des instructions   Positionnement des différents composants Anneau 3 Anneau 2 Anneau 1 Anneau 0 Hyperviseur Noyau Vide Domaines
  • 23. Interactions hyperviseur / applications / OS Adaptation d’un hyperviseur dans les architectures non conçues pour la virtualisation Anneau 3 Anneau 2 Anneau 3 Anneau 1 Anneau 0 Anneau 0 Applications Hyperviseur Hyperviseur Noyau Noyau Pilotes Applications Architecture x86 32 bits avec un hyperviseur Xen Architecture x86 64 bits avec un hyperviseur Xen
  • 24. Interactions hyperviseur / applications / OS   Apport des extensions de virtualisation Anneau 3 Anneau 0 Anneau -1 Hyperviseur Noyau Applications Architecture x86 64 bits et extensions processeurs liées à la virtualisation avec un hyperviseur Xen
  • 25. Interactions hyperviseur / applications / OS Système classique Paravirtualisation Noyau Anneau 0 Hyperviseur Anneau 1 Noyau Anneau 2 Application Anneau 3 Application Hypercall Appels système privilégié Appels système classique
  • 26. Les domaines   Système d’exploitation invité   Différents types de domaines pour différentes utilités   Domaine privilégié   Domaine non privilégié   Domaine matériel assisté
  • 27. Domaines privilégiés   Premier domaine exécuté au démarrage : Domaine 0   Accès aux fonctionnalités de l’hyperviseur   Gestion des autres domaines   Accès direct à la machine physique et à ses périphériques   Gestion de l’interface entre la machine physique et les domaines non privilégiés
  • 28. Domaines non privilégiés   Exécutés par le dom0   Limite de la capacité mémoire   Domaines de paravirtualisation   Accès aux périphériques à travers le dom0   Système d’exploitation invité « classique »
  • 30. Domaine matériel assisté (HVM)   Type de domaine non privilégié   Virtualisation matérielle assistée   Utilisation du module QEMU exécuté dans le dom0
  • 32. IV Architecture de Xen en paravirtualisation   La gestion des informations système   La communication inter-domaines   La gestion du temps   La gestion de l’ordonnancement   La gestion de la mémoire   La réseau sous Xen
  • 33. Gestion des informations système   Nécessité d’avoir des informations sur le matériel sous- jacent   Modificationdu mécanisme de récupération de ces informations système   Shared info pages – pages d’information partagée   Page d’information de démarrage   Page shared_info
  • 34. Communication interdomaines   Isolation totale pas envisageable   Nécessite d’accéder aux périphériques de la machine physique   Pilotes spécifiques dans le dom0   Cas de processus normaux   Zones de mémoire partagées   Hypercall grant_table_op   Allocation de zones   Transfert de zones
  • 35. Communication interdomaines Je voudrais accéder au bloc X du lecteur de DVD dom0 Ecriture des données dans la zone de mémoire partagée domU Ubuntu domU FreeBSD
  • 36. Gestion du temps   Nécessité de la gestion du temps   Ecoulement du temps   Lors de l’exécution   En dehors de l’exécution   Trois valeurs contenues dans shared_info   Heure initiale du lancement du domaine   Temps écoulé depuis le lancement du domaine   Time Stamp Counter (TSC)
  • 37. Gestion de l’ordonnancement   Gestion de l’allocation de ressources de calcul aux domaines   Ordonnanceurs   Deux types   SEDF (Simple Earliest Deadline First)   Credit Scheduler
  • 38. Gestion de l’ordonnancement   SEDF   Temps d’exécution défini   Périodicité définie
  • 39. Gestion de l’ordonnancement Temps : 4 ms Temps : 3 ms Temps : 5 ms Périodicité : 20ms Périodicité : 10ms Périodicité : 10ms Temps Allocation sur un VCPU
  • 40. Gestion de l’ordonnancement   Credit scheduler   Deux attributs :   Poids   Limite   Allocation de crédits   Exécution jusqu’à l’épuisement des crédits
  • 41. Gestion de l’ordonnancement Poids : 2 Poids : 2 Poids : 4 Limite : 25% Limite : 0 Limite : 0 U :2 U :1 U :1 U :1 F :2 F :3 F :2 F :3 D :4 D :4 D :9 D : 12 Temps
  • 42. La gestion de la mémoire dans un système classique La pagination Cadre de pages en mémoire Espace physique Tables des pages Tables des pages Adresse virtuelle Espace virtuel Espace virtuel d’un programme d’un programme
  • 43. La gestion de la mémoire dans un système classique La segmentation Table des pages du segment 0 Entrée de la table 0 Tables des descripteurs de segments Entrée de la table 1 Entrée de la table 2 Descripteur de segment 0 Entrée de la table 3 Descripteur de segment 1 Table des pages du segment 1 Descripteur de segment 2 Entrée de la table 0 Entrée de la table 1 Entrée de la table 2 Entrée de la table 3
  • 44. La gestion de la mémoire dans un système classique La segmentation   En architecture x86, il existe 2 types de tables de descripteurs de segments :   Global Description Table   Local Description Table   Nécessité d’un sélecteur de segment pour charger un descripteur dans un registre : Niveau de Numéro d’entrée dans la table GDT/LDT privilèges 0-3 13 bits 1 bit 2 bits
  • 45. La gestion de la mémoire dans Xen Modèle de gestion de mémoire en paravirtualisation Espace d’adressage de l’application A Espace d’adressage de l’application B Espace d’adressage du Dom U Espace d’adressage du Dom U Espace d’adressage physique géré par l’hyperviseur
  • 46. La gestion de la mémoire dans Xen Modèle de gestion de mémoire en paravirtualisation   Pourquoi 3 niveaux d’indirections   Problème lié au fait qu’un système croit que son espace d’adressage est continu et qu’il est seul sur la machine physique   Problème de la mise en pause d’une machine et d’un redémarrage sur une autre machine physique   Accès mémoire et mise à jour de la table des pages   Lecture et Ecriture uniquement via des hypercalls Intérêt : Aucun système invité ne modifie l’espace mémoire sans en avertir l’Hyperviseur
  • 47. La gestion du réseau   Toutes les communications passent par le Dom 0   2 tunnels entre un Dom U et le Dom 0   Un tunnel de service et un tunnel de données   Chaque tunnel composé de 2 zones mémoire distinctes   Tunnel de service permet de localiser les pages mémoires de données brutes   Communication réseau interdomaines gourmande en ressources processeur
  • 48. Conclusion sur Xen   Solution innovante et performante   Solution libre permettant l’accès à la connaissance   Support de l’industrie informatique   “IBM is a strong supporter of the open source community and has a long history with virtualization, having invented it for mainframe over 40 years ago.” – Rich Lechner,Vice Président d’IBM Entreprise Systems   Composante de base du « Cloud Computing »
  • 49. Conclusion du projet   Acquisition de connaissances sur un sujet d’actualité   Approfondissement des connaissances en système d’exploitation   Assimilation d’une méthodologie de rédaction   Clarification et formalisation de notions   Apport professionnel dans le domaine des systèmes d’information