Cloud Computing. Alain Tchana, Maître de Conférence Institut National Polytechnique de Toulouse IRIT / Équipe SEPIA alain.tchana@enseeiht.



Documents pareils
Concept de machine virtuelle

Les avantages de la virtualisation sont multiples. On peut citer:

Hyper-V v2 : une évolution majeure des services de virtualisation

vbladecenter S! tout-en-un en version SAN ou NAS

en version SAN ou NAS

ESXi: Occupation RAM avec VM_Windows et VM_Linux. R. Babel, A. Ouadahi April 10, 2011

Utilisation de matériels industriels avec des outils de virtualisation open source. Open Source dans le monde industriel

Module : Virtualisation à l aide du rôle Hyper-V

Présentation d HyperV

Eric Maillé Comparatifs des hyperviseurs Vmware ESX / Microsoft HyperV

Une approche de virtualisation assistée par le matériel pour protéger l espace noyau d actions malveillantes

Le Ro le Hyper V Premie re Partie Configuration et Prise en main du gestionnaire Hyper-V

Virtualisation & Sécurité

SRS DAY: Problématique liée à la virtualisation

Virtualisation de serveurs Solutions Open Source

Anatomie d'un cloud IaaS Représentation simplifiée

A Les différentes générations VMware

Table des matières 1. Introduction. 1. Avant-propos Remerciements Chapitre 1 Virtualisation de serveurs

Qu est ce qu un un serveur?

Introduction aux environnements de virtualisation d'oracle Solaris 11.1

Virtualisation: définitions. Problème des datacenters actuels. Le DATA Center aujourd'hui. Le Data Center d'hier

Enseignant: Lamouchi Bassem Cours : Système à large échelle et Cloud Computing

VMware ESX/ESXi. 1. Les composants d ESX. VMware ESX4 est le cœur de l infrastructure vsphere 4.

TAI049 Utiliser la virtualisation en assistance et en dépannage informatique TABLE DES MATIERES

Informatique en nuage Cloud Computing. G. Urvoy-Keller

VMware vsphere 5 Préparation à la certification VMware Certified Professional 5 Data Center Virtualization (VCP5-DCV) - Examen VCP510

Visualization sur Ubuntu: Quels Choix? Nicolas Barcet

Virtualisation sous Linux L'age de raison. Daniel Veillard

Virtualisation CITRIX, MICROSOFT, VMWARE OLIVIER D.

Système d administration autonome adaptable: application au Cloud

Virtualisation et Sécurité

Virtualisation et ou Sécurité

La Virtualisation Windows chez CASINO. Philippe CROUZY Responsable Infrastructure Equipes Systèmes -Stockage

Virtualisation et le hosting. Christophe Lucas Sébastien Bonnegent rouen.fr>

ARCHITECTURE ET SYSTÈMES D'EXPLOITATIONS

Cinq meilleures pratiques pour les administrateurs VMware : Microsoft Exchange sur VMware

Licences Windows Server 2012 R2 dans le cadre de la virtualisation

Dynamiser et optimiser votre IT avec la Virtualisation du poste

Le Ro le Hyper V Troisie me Partie Haute disponibilite des machines virtuelles

Sébastien Geiger IPHC Strasbourg

VIRTUALISATION : MYTHES & RÉALITÉS

Présentation OpenVZ. Marc SCHAEFER. 9 janvier 2009

L état de la virtualisation

Red Hat Enterprise Virtualization 3.0 Instructions d'installation et informations importantes

Plan de la conférence. Virtualization. Définition. Historique. Technique. Abstraction matérielle

PLATE-FORME DE CLOUD COMPUTING SLAPOS. Intégration d applications

Virtualisation open source État de l'art

+ = OpenStack Presentation. Raphaël Ferreira - enovance. Credits : Thanks to the OpenStack Guys 1

Portefeuille de solutions HP pour la virtualisation

Hétérogénéité pour atteindre une consommation énergétique proportionnelle dans les clouds

Communications performantes par passage de message entre machines virtuelles co-hébergées

Table des matières. A - Introduction 13. B - Qu'est-ce que la virtualisation? 13

EN Télécom & Réseau S Utiliser VMWARE

Windows serveur 2008 installer hyperv

Atelier : Virtualisation avec Xen

Architectures d implémentation de Click&DECiDE NSI

LXC : Une technologie de contextualisation ultra light intégrée au kernel Linux

Plan de cet après-midi

La plate forme VMware vsphere 4 utilise la puissance de la virtualisation pour transformer les infrastructures de Datacenters en Cloud Computing.

Hyper-V R2 (Module 1) : Introduction

A propos de la sécurité des environnements virtuels

Virtualisation et sécurité Retours d expérience

Cloud Computing. Introduction. ! Explosion du nombre et du volume de données

..seulement 5% des serveurs x86 sont virtualisés!

Virtualization is the isolation of one computing resource from the others Virtualization results in more efficient resource utilization, and enables

Windows Server Chapitre 1: Découvrir Windows Server 2008

La Continuité d Activité

Cloud Computing et Calcul Haute Performance (HPC High Performance C

Chapitre 4: Introduction au Cloud computing

Mathieu Rivoalen. Etude d'approfondissement des réseaux RICM 5 Option Réseaux

EN Télécom & Réseau S Utiliser VMWARE

Mise en œuvre d une infrastructure de virtualisation au CNRGV

LA VIRTUALISATION. Etude de la virtualisation, ses concepts et ses apports dans les infrastructures informatiques. 18/01/2010.

Hyperviseur vs Docker. le choc des virtualisations

Le stockage. 1. Architecture de stockage disponible. a. Stockage local ou centralisé. b. Différences entre les architectures

Systèmes Répartis. Pr. Slimane Bah, ing. PhD. Ecole Mohammadia d Ingénieurs. G. Informatique. Semaine Slimane.bah@emi.ac.ma

VMWare Infrastructure 3

VMWARE VSPHERE ESXI INSTALLATION

Performances d un système virtualisé avec VMware ESX-ESXi

NFE107 Urbanisation et architecture des systèmes d information. Juin «La virtualisation» CNAM Lille. Auditeur BAULE.L 1

Chapitre 2 : Abstraction et Virtualisation

SMB137 - Cinquième partie

Point sur la virtualisation

Hyper V et SC VMM. Virtualisation sous Windows Server 2008 R2. Résumé. Jean François APRÉA. ENI Editions - All rigths reserved

Projet d'infrastructure de stockage mutualisée

Virtualisation du poste de travail. Denis CASANOVA UFR Sciences & Technologies CUME - 29 Mars 2012

Thèse CIFRE. Mécanismes de monitoring sémantique dédiés à la sécurité des infrastructures cloud IaaS

Chapitre IX : Virtualisation

Cloud et SOA La présence du Cloud révolutionne-t-elle l approche SOA?

Cycle Innovation & Connaissance 12 petit déjeuner Mardi 15 mai Cloud Computing & Green IT : nuages ou éclaircies?

Introduction aux systèmes temps réel. Iulian Ober IRIT

Un exemple de cloud au LUPM : Stratuslab

Utiliser le cloud pour manager son PRA et son PCA (DRaaS ou PRA dans le Cloud)

Retour d expérience de la plateforme de virtualisation sous Proxmox VE à l IPHC journée SysAdmin du 04/12/2014 à l INRA de Toulouse

FAMILLE EMC VPLEX. Disponibilité continue et mobilité des données dans et entre les datacenters

Hyper-V (version 3) et System Center Virtual Machine Manager Technologie de virtualisation sous Windows Server 2012 R2

Chapitre 1. Infrastructures distribuées : cluster, grilles et cloud. Grid and Cloud Computing

Transcription:

Cloud Computing Alain Tchana, Maître de Conférence Institut National Polytechnique de Toulouse IRIT / Équipe SEPIA alain.tchana@enseeiht.fr

Plan Rappel Cloud Rappel Virtualisation Virtualisation en détails Consolidation OpenStack Docker 2

Définition descloud concepts Rappel

Définition du Cloud Définition (parmi d'autres) Ensemble de ressources/applications/services s'exécutant dans un environnement distribué, accessible via les protocoles web standards, et dont l'ensemble fournit un service ayant les caractéristiques suivantes : Paiement à l'usage Fonction de la durée et de la quantité d'utilisation Illusion d'une infinité de ressources (scalabilité) Abstraction de l'infrastructure matérielle Mutualisation entre plusieurs utilisateurs Le multi-tenant 4

Votre charge de travail Classification selon le service Définition descloud concepts Rappel Types de Cloud Extrait de la thèse d'aeiman Gadafi

Les défis du Cloud Une grande partie de des défis du cloud a trouvé un début de solution dans la virtualisation, brique de base dans le Cloud. 6

Définition des concepts Rappel virtualisation

Virtualization Définition : Ensemble des techniques matérielles et/ou logicielles qui permettent de faire fonctionner simultanément sur une seule machine plusieurs systèmes d exploitation (appelés machines virtuelles (VMs). Ex.: Xen, VMware, KVM, HyperV, etc. Concrètement : J'exécute en même temps plusieurs OS sur le même matériel. 8

Virtualization Challenges : Multiplexer toutes les ressources matérielles tout en assurant l'isolation VM VM CPU VM VM VM VM Memoire VM VM VM Disque VM VM VM Réseau 9

Définition des concepts Virtualisation++

Définition des concepts Scheduling

Scheduling Objectifs de la lesson Activité qui consiste à choisir le prochain processus qui utilisera le processeur. Responsabilité du système d'exploitation : via le Scheduler 12

Scheduling Objectifs de la lesson Dans un SMP Chaque processeur a une queue Chaque processeur exécute un scheduler Les processus éligibles sont équitablement répartis entre les queues. P1 P4 Sched P2 P5 P3 P6 Sched 13

Scheduling Objectifs de la lesson Activité d'un scheduler Périodiquement (ex : 30ms) Choisi le processus en tête de la queue Effectuer un contexte switch Insère le processus pré-empté, ainsi que les processus nouvellement créés dans la queue suivant une stratégie bien définie. 14

Scheduling Objectifs de la lesson Deux grandes approches de scheduling: Scheduling basé sur les priorités Scheduling équitable (fair). 15

Scheduling Objectifs de la lesson Scheduling basé sur les priorités Scheduling destiné aux applications temps réel. Chaque processus se voit assigner une priorité Le processus ayant la plus grande priorité est exécuté le premier et peut préempter un processus de priorité inférieure Les processus ayant des priorités égales sont exécutés suivant leur arrivé dans la queue 16

Scheduling Scheduling Objectifs de laéquitable lesson Vise un partage équitable du CPU entre tous les processus (fairness). Chaque processus se voit attribué un temps fixe d'exécution appelé le quantum. A la fin du quantum, le processus est préempté et re-inséré dans la queue, et un autre processus occupe le CPU pour un quantum. Le changement de contexte est utilisé pour conserver l'état des processus préemptés. 17

Définition concepts Cas des de Linux

Scheduling dans Linux Objectifs de la lesson Linux propose deux classes de schedulers : 1. Real Time Linux kernel scheduler 2. Completely Fair Scheduler (CFS), kernel 2.6.2 19

Scheduling dans Linux la lessonscheduler Real TimeObjectifs Linuxdekernel Scheduler basé sur les priorités : Elles vont de 0 à 140 et peuvent être modifier dynamiquement (cmd nice). 0-99 sont les processus temps réel (priorité élevée) 100-140 processus normaux (priorité basse). A chaque processus est associé une politique de scheduling et une priorité. 20

Scheduling Objectifs de la lesson Real Time Linux kernel scheduler La politique de scheduling déterminent où insérer le processus dans la queue des processus de même priorité Les politiques : SCHED_FIFO : first in-first out scheduling, Pas de quantum, Pas de préemption SCHED_RR : Assigne un quantum au processus ; A la fin du quantum le processus est mis à la fin de la queue. Un processus peut être préempté par un autre de plus grande priorité. 21

Scheduling Completely Scheduler ObjectifsFair de la lesson L'objectif principal est de fournir le même temps CPU à tous les processus (partage équitable). Utilise la notion de virtual time qui représente le temps processeur cumuler d'un processus. Les processus sont organisés dans un arbre rouge-noir O(lgN) : insertion/suppression/modif et O(1) pour recherche. Les processus les plus à gauche sont ceux ayant les plus petits virtual time. La durée d'un quantum est fonction du nombre de processus 22

Définition des concepts En virtualisation

Scheduling en environnement virtualisé Objectifs de la lesson Deux niveaux de scheduling Dans la VM (sur les processus) Dans l'hyperviseur (sur les vcpus) 24

Scheduling en environnement virtualisé Objectifs de la lesson Deux niveaux de scheduling Dans la VM (sur les processus) Dans l'hyperviseur (sur les vcpus) 25

Scheduling en environnement virtualisé Objectifs de la lesson Cas de KVM : System de virtualisation de Linux ; Les VMs sont vues comme des processus RT et CFS sont utilisés Cas de Xen : Xen propose deux schedulers : Simple Earliest Deadline First (SEDF) Credit (scheduler par défaut) 26

Scheduling en environnement virtualisé Objectifs de la lesson Credit scheduler de Xen : L'objectif est le partage proportionel du CPU entre les VMs (via ses vcpus). Un weight et un cap sont assignés à chaque VM Le weight indique le taux de partage proportionnel de CPU pour une VM (1-65535, 256 par défaut) Le cap fixe le pourcentage maximal de CPU qu'une VM peut consommer (0-X, 0 par défaut) Fait de ce scheduler un des schedulers qui sied parfaitement au Cloud 27

Scheduling en environnement virtualisé Objectifs de la lesson Chaque CPU gère une queue locale d'exécution de vcpus, ordonnée par la prioprité de vcpu idle < over < under < boost weight et cap sont transformés en crédits qui sont assignés aux vcpus actifs de la VM Un vcpu reçoit une tranche de temps CPU de 30ms par défaut Ce temps est traduit en crédit Il consomme des crédits périodiquement (10ms) pendant son exécution 28

Scheduling en environnement virtualisé Objectifs de la lesson 29

Scheduling en environnement virtualisé Objectifs de la lesson Chaque 30ms, le scheduler re-calcule les crédits de chaque VM, ainsi que la prioprité des vcpus Si crédits < 0 priorité over Si crédits >= 0 priorité under Si un pcpu ne trouve pas un vcpu avec la prioprité under dans sa file locale il va en chercher un dans la file d'un autre pcpu 30

Définition des concepts Quelques problèmes

Quelques problèmes de scheduling Objectifs de la lesson Contention Hétérogenéité DVFS Architectures défférentes Discontinuité IO : BOOST Spin-locks : petit quantum Taille du quantum 32

Définition concepts Cache des Contention

Cache contention Objectifs de la lesson Les mémoires caches : des couches de mémoire se situant entre le processeur et la mémoire centrale Tout accès mémoire RAM passe d'abord par les mémoires caches processeur La performance d'une application dépend des mémoires caches 34

Cache contention Objectifs de la lesson Problème: les mémoires caches ne sont pas allouées explicitement aux VMs: La contention de la mémoire cache: plusieurs VMs utilisent les mêmes lignes de cache pendant leur exécution L'isolation entre les VMs n'est pas toujours respectée Netflix doit re-concevoir ses applications pour faire face à la variabilité de performance dans Amazon EC2* Core 0 Core 2 Core 1 Core 3 Cache L1 Cache L1 Cache L2 Cache L2 La contention sur quel niveau de cache est la plus critique? Cache L3 35

Cache contention Objectifs de la lesson Exemple: pendant l'invervalle t4-t6, il y a pollution de la mémoire cache 36

Cache contention VM1 VM2 VM3 Core 0 Core 1 Core 2 Core 3 Cache L1 Cache L1 Cache L1 Cache L1 Cache L2 Cache L2 Cache L2 Cache L2 Cache L3 37

Définition des concepts Accounting

Accounting Problème: Le temps processeur utilisé par les composants systèmes (hyperviseurs, dom0, DD) pour le compte de la VM ne lui est pas facturé Perte pour le provider Imprévisibilité des performances des VMs utilisateurs 39

Accounting 40

Accounting 41

Définition des concepts Hétérogéité

Hétérogénéité Les clouds sont de plus en plus hétérogènes Différents types de machines (CPU, mémoires, etc). Les périphériques s'exécutent à vitesse dynamiquement variable pour des raisons d'économie d'énergie (e.g. DVFS) C'est une forme d'hétérogénéité 43

Hétérogénéité Problème Les providers vendent les ressources CPU en utilisant des unités ambigues, floues. Microsoft Azure Rackspace Conséquences Imprévisibilité des performances Car une VM peut s'exécuter sur n'importe quelle type de machine 44

Hétérogénéité Illustration 45

Définition des concepts Hardware VT

Hardware virtualization Objectifs de la lesson Contexte L'hyperviseur doit contrôler l'accès au métériel. Pour cela, il interdit aux VMs d'effectuer certaines actions Exemple : allocation de la mémoire réelle Cette interdiction se fait en dé-privilégiant le noyau des VMs (exécution en ring 1) au lieu du ring 0 habituel. L'hyperviseur s'exécute au ring 0. ceci nécessite la modification du code source des OS car ils ne sont pas conçus pour s'exécuter en ring 0. Il faut les obliger à effectuer des hypercalls. Impossible d'exécuter des OS non modifiables Complexifie le code de l'hyperviseur 47

Hardware virtualization Objectifs de la lesson Contexte L'hyperviseur doit contrôler l'accès au métériel. Pour cela, il interdit aux VMs d'effectuer certaines actions Exemple : allocation de la mémoire réelle Cette interdiction se fait en dé-privilégiant le noyau des VMs (exécution en ring 1) au lieu du ring 0 habituel. L'hyperviseur s'exécute au ring 0. ceci nécessite la modification du code source des OS car ils ne sont pas conçus pour s'exécuter en ring 0. Il faut les obliger à effectuer des hypercalls. Impossible d'exécuter des OS non modifiables Complexifie le code de l'hyperviseur 48

Hardware virtualization Objectifs de la lesson Virtualisation par le matériel VMn Principe : Intégrer le fait qu'il existe des machines virtuelles dans les processeurs. VM1 App OS Objectifs : App OS VMM Non modification du code sources des machines virtuelles Rend possible l'exécution des OS propriétaires HW VM1 VMn Reduire la complexité de la VMM Facilite sa maintenance et son évolutivité Minimiser l'intervention de la VMM moins de déroutements Améliore les performances App OS App OS VMM HW & Virtualization 49

Hardware virtualization Objectifs de la lesson La route est longue car plusieurs composants métériels sont concernés. Tous les composants ne sont pas encore virtualization aware Chez AMD : AMD-SVM Chez Intel : Intel VT Processeur et mémoire : VT-x et VT-i Entrée/Sortie : VT-d, VT-c et PCI SIG SR-IOV 50

Définition des concepts CPU virtualization

CPU virtualization : cas d'intel Objectifs de la lesson VT-i : architectures Itanium VT-x : architectures IA-32 (focus) Principe 2 nouveaux modes d'exécution du processeur Virtual Machines (VMs) Ring 3 Ring 0 VMX Root Apps Apps OS Apps Apps OS vmx root oprations (pour la VMM) vmx non-root oprations (pour les VMs) permet d'exécuter les VMs en ring 0 la VM n'est pas au courant des 2 modes VM Monitor (VMM) 52

CPU virtualization : cas d'intel Objectifs de la lesson VT-i : architectures Itanium VT-x : architectures IA-32 (focus) Principe 2 nouvelles transitions VM Entry : root non root VM Exit : non root root Virtual Machines (VMs) Ring 3 Ring 0 VM Exit VMX Root Apps Apps Apps Apps OS OS VM Entry Permet de passer le contrôle à la VMM (le contrôle doit toujours se faire) Déclenchées par le processeur Sur les consignes de la VMM via une structure de données (VMCS) par VM La VM n'est pas au courant des transitions VM Monitor (VMM) 53

CPU virtualization : cas d'intel Objectifs de la lesson VMCS : Virtual Machine Control Structure (par vcpu) Contient les conditions de VM Exit (configurées par la VMM) Certaines interruptions, exceptions, faults ou certaines instructions (exemple : MOV CR3, HLT) Son utilisation rend inutile l'acheminement des interruptions de la VMM vers la VM moins d'overhead Le processeur reçoit l'interruption, déclenche un VM Exit (si condition violée), positionne les causes dans la VMCS Organisée en sections parmi lesquelles 2 zones qui permettent de sauvegarder ou restaurer les contextes entre les transitions VMCS Control area Guest area Guest area : contient l'état du processeur et de la VM lorsque la VM quitte le mode vmx non-root Host area : contient l'état du processeur lorsque la VMM quitte le mode vmx root Host area 54

CPU virtualization : cas d'intel VMM willde Objectifs la lesson take these actions High level VMX flow Initially enter VMX mode using VMXON Clear guest s VMCS using VMCLEAR Load guest pointer using VMPTRLD Write VMCS parameters using VMWRITE Launch guest using VMLAUNCH Guest exit (VMCALL or instruction, ) Read guest-exit info using VMREAD Maybe reenter guest using VMRESUME Eventually leave VMX mode using VMXOFF VM Interruption VMLAUNCH Fault VMEXIT VMRESUME Exception Instructions priv. VMENTRY Guest premption TImer VMXON VMM VMXOFF 56

CPU virtualization : cas d'intel Objectifs de la lesson Intel instruction purpose VMXON Enable VMX VMXOFF Disable VMX VMLAUNCH Start/enter VM VMRESUME Re-enter VM VMCLEAR Null out/reinitialize VMCS VMPTRLD Load the current VMCS VMPTRST Store the current VMCS VMREAD Read values from VMCS VMWRITE Write values to VMCS VMCALL Exit virtual machine to VMM VMFUNC Invoke a VM function in VMM without exiting guest operation 57

Définition concepts Memory des virtualization

Memory virtualization Source: https://www.google.fr/url? sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0cceqfja AahUKEwjtq57mseLIAhWDshQKHYZ4Cas&url=https%3A%2F %2Fevents.linuxfoundation.org%2Fslides%2F2011%2Flinuxcon-japan %2Flcj2011_guangrong.pdf&usg=AFQjCNG51PLmk41tsLmNtwNbvjxAwfXVhA&s ig2=yrjzfh3n64syboefvvetyg virtual addr. TLB Result TLB miss Result Source: https://www.google.fr/url? CR3 sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0ccm QFjAAahUKEwjM1uy8leDIAhVD1hQKHWlCCQ8&url=http %3A%2F%2Fwww.cs.nthu.edu.tw%2F~ychung%2Fslides %2FVirtualization%2FVM-Lecture-2-2SystemVirtualizationMemory.pptx&usg=AFQjCNF3QaJZ_H4 uupo4_t7m1kxvbri66q&sig2=5c67prarifoslbuh8pejeg 59

Memory virtualization Source: https://www.google.fr/url? sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&u act=8&ved=0cceqfjaaahukewjtq57mseliahwdshqkhy Z4Cas&url=https%3A%2F%2Fevents.linuxfoundation.org %2Fslides%2F2011%2Flinuxcon-japan %2Flcj2011_guangrong.pdf&usg=AFQjCNG51PLmk41tsL mntwnbvjxawfxvha&sig2=yrjzfh3n64syboefvvetyg Source: https://www.google.fr/url? sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0ccm QFjAAahUKEwjM1uy8leDIAhVD1hQKHWlCCQ8&url=http %3A%2F%2Fwww.cs.nthu.edu.tw%2F~ychung%2Fslides %2FVirtualization%2FVM-Lecture-2-2SystemVirtualizationMemory.pptx&usg=AFQjCNF3QaJZ_H4 uupo4_t7m1kxvbri66q&sig2=5c67prarifoslbuh8pejeg 60

Memory virtualization Soft MMU Utilisation des shadow page tables dans la VMM Dans la VM : virtual physical Dans la VMM : physical machine Toute modification de table de pages dans la VM est déroutée (VMENXIT) et réalisée par la VMM 61

Memory virtualization Soft MMU Conséquences Nécessité de flusher la TLB à chaque changement de VM : coûteux (en CPU) Déroutements dans la VMM couteûx (en CPU) Synchronisation shadow page tables et page tables dans les VMs coûteuse (en CPU et mémoire) 63

Memory virtualization Hard MMU : Nested (AMD) /Extended (Intel) Page Tables (EPT) Est un nouveau niveau de translation d'addresses Translation des physical addresses (utilisées dans la VM en mode non-root) en des machines addresses La MMU prend l'initiative de parcourir l'ept sans déroutement dans la VMM Le processeur fournit un nouveau registre qui pointe sur l'ept Les EPT sont gérés par la VMM (au travers de la VMCS) Une Virtual Processor IDs (VPID) : tag sur les lignes de caches (TLB) pour éviter les flushes Un nouveau pointer vers la EPT CR3 Guest Linear Address EPT Base Pointer (EPTP) Guest IA-32 Guest Physical Address Page Tables Extended Page Tables Host Physical Address 64

Source: https://www.google.fr/url? Memory virtualization Objectifs de la lesson sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0ccm QFjAAahUKEwjM1uy8leDIAhVD1hQKHWlCCQ8&url=http %3A%2F%2Fwww.cs.nthu.edu.tw%2F~ychung%2Fslides %2FVirtualization%2FVM-Lecture-2-2SystemVirtualizationMemory.pptx&usg=AFQjCNF3QaJZ_H4 uupo4_t7m1kxvbri66q&sig2=5c67prarifoslbuh8pejeg 6 8 4 Data 66

Memory virtualization Objectifs de la lesson 6 8 4 9 12 Data 67

Memory virtualization Objectifs de la lesson 6 8 4 9 12 15 Data 68

Memory virtualization Objectifs de la lesson Source: http://meseec.ce.rit.edu/722projects/spring/2-3.pdf 69

Memory virtualization Objectifs de la lesson L'utilisation des EPT peut être optimisée : Le parcours des EPT introduit un overhead non négligeable. 70

Définition des concepts IO virtualization

IO virtualization B Directed I/O - une carte par VM VM VM VM I/O Driver I/O Driver I/O Driver VMM emulator VM Virtual Machine I/O Driver I/O Driver VMM I/O Driver VMM vt-d A Software (IO emulation) -Overhead VM VM vt-d Virtual Function Physical Function C Directed I/O & Device Sharing (vt-d + SR-IOV) Source: https://www.google.fr/url? sa=t&rct=j&q=&esrc=s&source=web&cd=4&ved=0cdgqfjadahukewiqplpunodiahvcrbqkhzypd7w&url=http%3a%2f %2Fwww.cs.nthu.edu.tw%2F~ychung%2Fslides%2FVirtualization%2FSRIOV.pptx&usg=AFQjCNE_gSrfBYrq269cE2J1wWL4xpOxWw&sig2=za3FUu_6Xcwp-rDX6vFQPQ 72

IO virtualization Intel vt-d Objectifs de la lesson Permet à une VM d'utiliser directement un device, sans passer par la VMM L'utilisation se fait dans les deux sens : device VM La VMM prépare une partie de la mémoire de la VM qui sera utilisée par celle-ci pour les communications Problème 1 : le driver dans la VM ne connaît que les GPA Problème 2: comment s'assurer que la com device VM se fera exclusivement dans la mémoire de la VM attachée au device? Intel utilise du DMA-remapping, implanté dans le chipset. La VMM, connaissant les addresses machines, positione une table de translation. Le DMA-remapping transforme les addresses contenues dans la requête DMA en addresse machine de la VM concernée. Vérifie les droits d'accès de la VM (à partir des infos fournies par la VMM) 73

IO virtualization Source: http://www.intel.com/content/dam/doc/application-note/pci-sig-sr-iov-primer-sr-iov-technology-paper.pdf 74

Définition des concepts Consolidation

Consolidation Objectifs de la lesson Rappeler la consolidation et le fait que ça s'appuie sur le migration Expliquer le fonctionnement de la migration Formalisation du gaspillage CSP Plusieurs contraintes Impact migration Autres Heuristique La mémoire c'est le facteur limitant Ballooning Problème du ballooning Working set : les techno d'implem du working set et les défis lié à la détermination du working set Gestion d'énergie : ACPI (cpufreq, cpuidle, Sx, Px, Tx, Cx, Gx) 76