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



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

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

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

VMWARE VSPHERE ESXI INSTALLATION

Concept de machine virtuelle

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

Exigences système Edition & Imprimeries de labeur

Présentation d HyperV

Exigences système Edition & Imprimeries de labeur

en version SAN ou NAS

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

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

Point sur la virtualisation

Visualization sur Ubuntu: Quels Choix? Nicolas Barcet

Présentation OpenVZ. Marc SCHAEFER. 9 janvier 2009

Qu est ce qu un un serveur?

Les méthodes de sauvegarde en environnement virtuel

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

Mise en œuvre d un poste virtuel

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

Projet serveur OwnCloud

Table des matières. 1. Installation de VMware ESXI Pré-requis Installation... 3

Virtualisation & Sécurité

ANTI-VIRUS / PROTECTION DES POSTES DE TRAVAIL ET DES SERVEURS DE FICHIERS

Acronis Backup & Recovery 10 Advanced Server Virtual Edition. Guide de démarrage rapide

Disponibilité d une architecture virtualisée avec VMware ESX-ESXi

Configuration du serveur ESX

1. Présentation du TP

Etude d architecture de consolidation et virtualisation

Table des matières. 1. Installation de VMware ESXI Pré-requis Installation... 5

au Centre Inter-établissement pour les Services Réseaux Cédric GALLO

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

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

En ce moment (24/01/2014), Super bon plan: Micro Serveur HP Proliant G7 N54L à 159 ttc Plus d'informations sur dealabs.com

Livret 1 Poste de travail de l utilisateur :

Hyper-V Virtualisation de serveurs avec Windows Server 2008 R2 - Préparation à l'examen MCTS

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

VMWare Infrastructure 3

Procédure d installation pour WinEUR PROCÉDURE D INSTALLATION POUR WINEUR. Copyright GIT SA 2015 Page 1/16

Mise en œuvre d une infrastructure de virtualisation au CNRGV

Exigences système Commercial & Digital Printing

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

Stockage des machines virtuelles d un système ESXi jose.tavares@hesge.ch & gerald.litzistorf@hesge.ch

Virtualisation CITRIX, MICROSOFT, VMWARE OLIVIER D.

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

Hyper-V R2 (Module 1) : Introduction

Virtualisation de serveurs Solutions Open Source

Communiqué de Lancement Sage CRM v Editions Express, Standard et Avancée Module CRM Sage 100 Entreprise. Communiqué de Lancement Sage CRM 6.

Parallels Transporter Lisez-moi

OFFRES DE SERVICES SDS CONSULTING

Instructions d'installation. Produits TruTops Partie 1 : Configuration système requise. Version 1.10

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

SQL Limitations Mémoire

Architecture complète de protection du stockage et des données pour VMware vsphere

Dynamiser et optimiser votre IT avec la Virtualisation du poste

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

Virtualisation et ou Sécurité

Éléments d'architecture des ordinateurs

La Continuité d Activité

Nouvelles stratégies et technologies de sauvegarde

Exigences système Commercial & Digital Printing

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

Par CADICI Grégory & FRITZ Rémy

Nouveautés VMware vsphere 5.0 et retour d expérience d un upg

Parallels Desktop 5 Switch to Mac - Lisez-moi

Le stockage unifié pour réduire les coûts et augmenter l'agilité

Virtualisation de Windows dans Ubuntu Linux

Virtualisation des Serveurs et du Poste de Travail

Synerway Guide de Compatibilité. Version 4.0

Architectures d implémentation de Click&DECiDE NSI

Projet de Bachelor Virtual Desktop Infrastructure

A -Systèmes de fichiers 1 - FAT vs NTFS

A Les différentes générations VMware

Windows 2000: W2K: Architecture. Introduction. W2K: amélioration du noyau. Gamme windows W2K pro: configuration.

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

Initiation à la sécurité

FAQ Mobiclic/ Toboclic

Worry-FreeTM. Business Security Éditions Standard et Advanced. Administrator s Guide. Configuration minimale requise

ARCHITECTURE ET SYSTÈMES D'EXPLOITATIONS

Symantec Backup Exec.cloud

VMWare. Vmware: machine virtuelle Un véritable pc avec : VmWare

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

Licences Windows Server 2012 R2 dans le cadre de la virtualisation

La virtualisation de serveurs avec VMWare Infrastructure - Retour d expérience. Rodérick Petetin CRI INSA Rennes

Communication et connectivité

BITDEFENDER GRAVITYZONE

VMware View Virtualisation des postes de travail (architecture, déploiement, bonnes pratiques...)

Acronis Backup & Recovery 11.5

Système Principal (hôte) 2008 Enterprise x64

Fiche technique: Sécurité des terminaux Symantec Endpoint Protection La nouvelle technologie antivirus de Symantec

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server 3, 3.5

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

Comment installer un client Rivalis Devis factures

DREAL proposition DNS et hébergement. magazine le 14 septembre 2011 DREAL comparatif hébergement

À propos de Parallels Desktop 9 pour Mac

VMotion ne peut fonctionner qu avec une architecture de stockage centralisé de type SAN FC, iscsi ou NAS.

Symantec Endpoint Protection

Le Raid c est quoi? Comment ca marche? Les différents modes RAID :

Transcription:

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

Contents 1 Introduction 3 2 TPS 3 2.1 Principe................................ 3 2.2 L'implémentation ESXi....................... 3 3 Large Pages 4 3.1 Principe................................ 4 3.2 Compatibilité avec TPS....................... 4 3.3 Conditions d'utilisation des Large Pages sous ESX........ 4 4 Conguration 5 5 Mesures expérimentales 5 6 Conclusion 7 7 Synthèse 7 7.1 Best Practices............................. 7 A Bibliographie 9 B Annexes 10 2

1 Introduction Lors des laboratoires, nous avons pu observer un comportement inattendu du mécanisme Transparent Page Sharing (TPS). Alors que sur les VM Windows XP, les eets du TPS sont notables dès leur mise en marche, il demeure presque totalement inecace sur les VM Linux (kernel 2.6.24). Pour comprendre ce phénomène nous avons commencé par étudier le fonctionnement de TPS ainsi que la gestion de la mémoire d'esxi, puis nous chercherons à déterminer les solutions d'utilisation de TPS les plus adaptées. 2 TPS 2.1 Principe Du fait des pages de mémoire read-only et du code redondant, la mémoire comporte de nombreuses pages identiques. Partant de ce constat, le TPS permet de fusionner ces pages pour gagner en espace mémoire. Ce phénomène est d'autant plus vrai dans le cas des machines virtuelles, ou plusieurs systèmes d'exploitation identiques peuvent fonctionner en simultané. 2.2 L'implémentation ESXi Lors des accès mémoire en écriture, ESX va intervenir pour tenter de partager cette page. Figure 1: Mécanisme du TPS Un hash de la page est tout d'abord eectué, puis utilisé comme clef pour chercher dans une table contenant les pages qui ont déjà été référencées. Si la valeur du hash correspond à une entrée existante, une comparaison complète de 3

leur contenus est alors eectuée, et si les deux pages sont eectivement identiques, un label copy-on-write est appliqué, et la page redondante supprimée. Le copy-on-write (COW) implique que lorsqu'une demande d'accès en écriture sur la page est faite, une copie est crée et attribuée en lieu et place de la page demandée. Si aucune correspondance n'est trouvée dans la table, une Hint Frame est créée. Si par la suite une comparaison positive avec la Hint frame est réalisée, son contenu est alors hashé à nouveau. Dans le cas ou le hash a changé, la Hint Frame est simplement supprimée. Dans le cas contraire, une comparaison complète des contenus est eectuée, et les pages sont partagées si ils sont identiques. L'overhead total du au TPS est inférieur à 0.5% de la mémoire totale du système[11]. 3 Large Pages 3.1 Principe Certaines architectures d'instructions CPU peuvent supporter plusieures tailles de pages, notament des tailles très supérieures à celle standard de 4kB. L'utilisation des Large Pages (ou Huge Pages) permet de réduire la charge du cache TLB (Translation Lookaside Buer), ce qui peut augmenter les performances jusqu'à 15%[7] pour de grandes allocations, tout en conservant un usage de la mémoire raisonable pour des petites allocations. En eet, avec l'augmentation de la taille de la mémoire, des pages plus grandes permettent de diminuer le nombre d'entrées dans le TLB, et donc de diminuer la quantité de misses. 3.2 Compatibilité avec TPS Le mécanisme de TPS a été conçu pour fonctionner avec des pages de 4kB; en eet, les probabilités de présence de pages identiques sont beaucoup plus faibles avec des Large Pages (entre 2 et 4MB). Pour parer à ce problème, VMware a fait le choix d'une stratégie pouvant donner à penser que le TPS est désactivé. En eet le TPS se contente d'analyser les Large Pages à la recherche de blocs de mémoire identiques à l'intérieur de celle ci, puis, lorsque la mémoire vient à manquer, le mécanisme de share-before-swap va casser les Large Pages en blocs de 4kB pour que TPS puisse fonctionner normalement. Il est a noté qu'à partir des versions les plus récentes d'esx 4.0, les zeroed pages (pages ne contenant que des 0), sont directement cassées en blocs de 4kB et partagées. 3.3 Conditions d'utilisation des Large Pages sous ESX ESX peut utiliser les Large Pages pour deux raisons : premièrement si l'os de la VM guest en demande l'utilisation, et deuxièmement si c'est le MMU qui le fait. Le MMU (Memory Management Unit) est responsable de l'accès à la mémoire demandée par le processeur. Il se charge notament de la translation entre adresse logique et adresse physique. De nos jours, ESX a le choix entre un MMU logiciel, ou un MMU matériel mis à disposition dans le CPU. C'est le VMM qui décide lequel choisir en fonction de la machine de l'host. Intel ore une solution de support hardware de la virtualisation du MMU sous le nom de EPT, et AMD fait de même sous le nom de RVI. La solution hardware permet d'économiser le temps CPU que le MMU software d'esx utilisait pour 4

la translation d'adresses, mais force par défaut l'utilisation des Large Pages pour des questions de performances. En eet, en hardware on accède plus souvent au TLB qu'en software, ou une partie des informations nécéssaires à la translation d'adresse sont stockées en dehors du CPU (Shadow Page Table). Les Larges Pages permettent alors de diminuer le stress sur le TLB. Des tableaux indiquant le choix par défaut du VMM selon le CPU et l'os sont disponibles en annexe (gures 5, 6 et 7). 4 Conguration Le choix par défaut du mode de MMU utilisé peut être modié de deux façons : Via vsphere, en eectuant pour la VM voulue Edit Setting, puis l'onglet Options et règler l'entrée CPU/MMU Virtualization (gure 2). Via le chier de conguration de la VM (*.vmx), à l'aide des lignes suivantes : monitor.virtual_exec = software hardware automatic monitor.virtual_mmu = software hardware automatic Les logs permettent de connaître la conguration actuelle. Figure 2: Conguration du mode de MMU sous vsphere On peut également forcer l'utilisation ou non des Large Pages, soit au niveau global via le paramètre du Mem.AllocGuestLargePage situé dans l'onglet Con- guration/logiciel/paramètres avancés/mem, soit au niveau d'une VM via le chier de conguration avec la ligne : monitor_control.disable_mmu_largepages = TRUE 5 Mesures expérimentales Nous avons procédé à des tests sur une machine avec un CPU Intel sans EPT. Nous n'avons lancé que des VM Linux (car il n'y a pas de Large Pages sous 5

Windows XP, et seul un MMU hardware permet de forcer leur utilisation), et fait varier le paramètre Mem.AllocGuestLargePage qui permet ou interdit l'utilisation des Large Pages sur toutes les VM lancées. Les résulats sont conformes à nos prédictions : sans Large Page (gure 3), on a de la mémoire partagée dès le départ, alors qu'avec Large Page (gure 4) on en a que lorsque la mémoire est overcommited (lors de nos mesure, la mémoire partagée est montée jusqu'à 1Go avec 8 VM Ubuntu congurées à 512Mo de RAM chacune). En outre, il est a noté qu'avec les Large Pages, la quantitée de mémoire partagée augmente beaucoup plus lentement, et ne prévient pas totalement le swap. Figure 3: TPS sans Large Pages 6

Figure 4: TPS avec Large Pages 6 Conclusion 7 Synthèse Les avancées dans la virtualisation matérielle on poussé VMware à modier le comportement de certaines fonctions d'esx. La documentation sur les changements eectués n'est pas forcémment très accessible, et on pourrait croire à la présence de bugs dans certaines fonctionnalités d'esx alors que leur comportement est simplement diérent. C'est l'un des défaut des solutions non Open-Source, où certains détails techniques restent opaques à l'utilisateur, comme certains détails de l'implémentation du TPS. Par exemple, durant nos recherches pour comprendre le fonctionnement de ce mécanisme, nous n'avons pas su répondre à la question suivante : Lors de l'exécution du mécanisme copy-on-write, un compteur est décrémenté pour chaque copie créée. Lorsque le compteur arrive à 1, est ce que la frame est transformée en Hint, Supprimée, ou laissée telle quelle? 7.1 Best Practices De nombreux systèmes d'exploitation (Windows Server 2003 SP1, 2008, 2008 R2, Windows XP 64 bits, Windows Vista, Windows Seven, Linux à partir du 7

noyau 2.6) sont capables de tirer partie des "super pages". Ceci peut nous permettre de choisir la bonne stratégie selon nos objectifs. On peut soit privilégier l'économie de RAM en désactivant les larges pages ce qui permettra à TPS de fonctionner normalement, soit vouloir privilègier les performances et laisser le support des Large Pages actifs (15% de performances en plus), sachant que de toute façon, TPS se mettra automatiquement en marche en cas d'overcommitment (mais son fonctionnement est dans ce cas moins ef- cace, et il est probable d'avoir tout de même du swap). Ces choix peuvent être fait soit au niveau global, soit au niveau de chaque VM (paramètres Mem.AllocGuestLargePage et monitor_control.disable_mmu_largepages). En résumé, il y a deux cas de gure, soit on veut bénécier des performances des Large Pages, auquel cas il n'y a rien à paramètrer (en sachant que seule la présence d'un MMU hardware permet de forcer l'utilisation des Large Pages pour un OS qui n'en dispose pas), soit on veut proter au maximum du mécanisme de TPS, et dans ce cas il sut de désactiver le support des Large Pages. 8

A Bibliographie References [1] Jean-Baptiste Emeriau. La gestionde la memoire dans ESX 4. 2010. url: http://wattmil.dyndns.org/technique?start=1. [2] Duncan Epping. Virtualized MMU and Transparent page sharing. 2009. url: http://www.yellow-bricks.com/2009/03/06/virtualized-mmuand-tp/. [3] Andre Leibovici. TPS, Large Memory Pages and your VDI environment. 2011. url: http://myvirtualcloud.net/?p=1797. [4] NiTRo. TPS & vmmu (le retour) - MAJ. 2010. url: http : / / www. hypervisor.fr/?p=1879. [5] NiTRo. Virtualized MMU, RVI & TPS. 2009. url: http : / / www. hypervisor.fr/?p=580. [6] Liz Stinson. esx.txt. 2004. url: http://stanford.edu/~stinson/cs240/ cs240_1/revs/esx.txt. [7] Various. Page (computer memory). 2011. url: http://en.wikipedia. org/w/index.php?title=page_(computer_memory)&oldid=420138187. [8] VMware. Large Page Performance. 2008. url: http://www.vmware.com/ files/pdf/large_pg_performance.pdf. [9] VMware. Performance Evaluation of AMD RVI Hardware Assist. 2009. url: http://www.vmware.com/pdf/rvi_performance.pdf. [10] VMware. Virtual Machine Monitor Execution Modes in VMware vsphere TM 4.0. 2009. url: http://www.vmware.com/files/pdf/perfvsphere-monitor_modes.pdf. [11] Carl A. Waldspurger. Memory Resource Management in VMware ESX Server. 2002. url: http://www.waldspurger.org/carl/papers/esxmem-osdi02.pdf. 9

B Annexes Figure 5: Technologies des processeurs AMD Opteron 10

Figure 6: Modes par défaut du VMM pour les processeurs AMD 11

Figure 7: Modes par défaut du VMM pour les processeurs Intel 12