Performances d un système virtualisé avec VMware ESX-ESXi Cédric Penas HEPIA - IN3 - Projet de Bachelor 30 juin 2010 Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 1 / 46
But du projet Le projet Analyser et comprendre quelles sont les meilleures façons de monitorer, d optimiser et de résoudre les problèmes de performances sur un système virtualisé avec VMware ESX/ESXi 4. Comprendre les choix et les contraintes dans une infrastructure de virtualisation réelle de production. Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 2 / 46
Le projet Organisation du temps 3 semaines au laboratoire de TD à l HEPIA 5 semaines au CTI HEPIA CTI HEPIA 1 2 3 4 5 6 7 8 Semaines Temps Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 3 / 46
Le projet Plan du travail Description de l infrastructure de virtualisation utilisée au CTI. Présentation des outils utilisés pour le management de systèmes virtualisés. Rédaction d un guide mettant en avant les bonnes pratiques à respecter au niveau des performances (Principalement CPU). Configuration du mécanisme True Copy d Hitachi. Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 4 / 46
Matériel & Infrastructure Matériel & Infrastructure Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 5 / 46
Matériel & Infrastructure HEPIA - Hardware Matériel à disposition pour la virtualisation : Gigabyte GA-G33M-S2L Intel Core2Duo 3Ghz Instruction Set 64-bit 4GB DDR800 ESXi 4 build 208167 Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 6 / 46
Matériel & Infrastructure HEPIA - Schéma Serveurs publics DNS tdeig.ch 129.194.184.84 WEB-FTP www.tdeig.ch 129.194.184.80 PKI ca.tdeig.ch SSL Serveurs privés Fichiers - 10.1.1.1 Serveurs DNS Images - 10.1.1.2 Nagios - 10.1.1.5 Imprimante - 10.1.0.22 DMZ Switch Catalyst X 129.194.184.82 129.194.184.81 129.194.184.1 129.194.4.6 129.194.4.32 129.194.8.7 HEPIA Intranet Labo Switch Catalyst X 10.1.0.0/16 10.1.0.1 129.194.184.0/22 UNIGE Switch Firewall Clavister DHCP Server Salle A409 PC Dell PC ASUS (ESXi) Switchs Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 7 / 46
Matériel & Infrastructure CTI - Hardware Matériel à disposition pour la virtualisation : IBM eserver BladeCenter HS21 Intel Xeon E5430 2.66Ghz Instruction Set 64-bit 32GB ESX 4 build 244038 Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 8 / 46
Mate riel & Infrastructure CTI - Cha ssis CHÂSSIS IBM BLADE CENTER H IBM BLADE HS21 Ce dric Penas Performances d un syste me virtualise avec VMware ESX-ESXi 30 juin 2010 9 / 46
CTI - Réseau Matériel & Infrastructure CHÂSSIS IBM HS21 eth0 eth1 eth2 eth3 eth4 eth5 hba0 hba1 IBM HS21 eth0 eth1 eth2 eth3 eth4 eth5 hba0 hba1 x12... 56 GB/s 11 GB/s 4 GB/s LAN Fabric A SAN Fabric B Hitachi USP-V Hitachi USP-V VLAN 503 Applicatif VLAN 101 Administratif Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 10 / 46
Matériel & Infrastructure CTI - Stockage VMware cluster ESX 1 ESX 2 VM 1 VM 4 VM 2 VM 5 x12... VM 3 VM 6 HITACHI USP-V LUN DATA 1 TB LUN DATA 1 TB FICHIERS ESX FICHIERS ESX VM 5.vmx (config) Service Console Service Console.vmdk (disque).vswp (swap) LUN BOOT ESX1 15 GB LUN BOOT ESX2 15 GB LUN DATA 1 TB LUN DATA 1 TB Systèmes de fichiers VM 1.vmx (config) VMFS3.vmdk (disque).vswp (swap) LUN DATA 1 TB LUN DATA 1 TB EXT3 Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 11 / 46
Les outils Les outils Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 12 / 46
Les outils Outils utilisés Nagios vsphere 4 (Client + vcenter) Esxtop Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 13 / 46
Outils - Nagios Les outils Permet de monitorer toutes les machines physiques d un réseau grâce à des scripts (Pearl, Bash,...) et/ou des programmes (C, C++,...). Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 14 / 46
ESX / ESXi ESX / ESXi ESX / ESXi ESX / ESXi ESX / ESXi ESX / ESXi ESX / ESXi ESX / ESXi ESX / ESXi ESX / ESXi Outils - vsphere Les outils ESX / ESXi Cluster d'esx / ESXi BDD vcenter vsphere Client vsphere Client Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 15 / 46
Les outils Outils - Esxtop c : Statistiques CPU m : Statistiques RAM d : Statistiques Disques n : Statistiques Réseau Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 16 / 46
Guide pratique Bonnes pratiques Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 17 / 46
Guide pratique Bonnes pratiques générales Valider le hardware Benchmark Ressources pour le Service Console OS invité compatible Désactiver l interface graphique invité Périphérique non utilisés Backups & Scans Antivirus VMware tools Version hardware HA et le DRS Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 18 / 46
Guide pratique VMware tools Outils permettant l amélioration des interactions entre ESX/ESXi et les OS invités. Ils se divisent en 4 parties : VMware Device Drivers VMware Tools Service VMwareService.exe (Windows) vmware-guestd (Linux) VMware User Process VMwareUser.exe (Windows) vmware-user (Linux) VMware Tools Control Panel Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 19 / 46
Guide pratique Version hardware Supplément des VMware Tools qui contient tous les drivers hardware et des fonctionnalités supplémentaires : ESX 3.5 (version 4) - vsphere 4 (version 7) USB Hot Plug Support 256GB RAM VMXNET Generation 3 8-way SMP Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 20 / 46
Guide pratique VMware Tools et Version Hardware Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 21 / 46
VMware HA Guide pratique CLUSTER VM VM VM VM VM VM VM VM VM ESX/ESXi ESX/ESXi ESX/ESXi Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 22 / 46
VMware DRS Guide pratique CLUSTER CPU 90% CPU 10% CPU 10% VM VM VM VM VM VM VM VM ESX/ESXi ESX/ESXi ESX/ESXi Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 23 / 46
Guide pratique Bonnes pratiques CPU Maintenir à jour VMware Tools & Version Hardware Ne pas laisser des vcpu inutilisés (idle loop) Utiliser le minimum de vcpu par rapport à l OS Toujours activer l hyperthreading Utiliser des processeurs 64 bits avec Intel VT Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 24 / 46
vcpu & OS Guide pratique VM (Windows 2003 avec 8 vcpu) - Intel Xeon E5430 2.66Ghz (8 cores) Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 25 / 46
vcpu & OS Guide pratique VM (Windows 2008 avec 8 vcpu) - Intel Xeon E5430 2.66Ghz (8 cores) Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 26 / 46
Hyperthreading Guide pratique 1 CPU physique > 2 CPU logique > 2 vcpu Processeurs physique Processeurs logiques vus par l'os Exécution Sans Hyper-threading Thread 2 Thread 1 Thread 1 Thread 2 temps Avec Hyper-threading Thread 2 Thread 1 Thread 2 Thread 1 temps Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 27 / 46
Hyperthreading Guide pratique Windows Server 2008 - Intel Xeon E5530 2.40Ghz (8 cores) Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 28 / 46
Intel VT Guide pratique RING 3 Applications Applications RING 3 RING 2 RING 2 RING 1 Système d'exploitation de la machine virtuelle RING 1 RING 0 Hyperviseur (VMM) Système d'exploitation RING 0 Matériel physique Matériel physique Architecture virtualisée Architecture classique Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 29 / 46
Ring 3 Ring 0 VMX non root VMX root Intel VT Guide pratique Le VMM et l OS invité tourne sur un ring 0 mais avec des privilèges différents. Applications Applications OS invité OS invité VM exit VM entry Virtual Machine Monitor (VMM) Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 30 / 46
Guide pratique Performances Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 31 / 46
Guide pratique Détection de problèmes Méthode de détection de problèmes Symptômes Exemples - Faible débit - Temps de réponse élevé Observations des symptômes + Surveillance des alertes Nagios Sens d'investigation Problème possible Confirmation du problème et ressource associée Observer le problème avec vsphere Client Analyser les compteurs d'esxtop Exemples - Saturation du CPU - Accès mémoire importants Exemples - Mauvaise répartition de charge - Capacité mémoire max atteinte Déduction Exemples - Mémoire insuffisante - Mauvaise configuration Cause du problème Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 32 / 46
Monitoring CPU Guide pratique Au niveau du CPU, il y a deux compteurs importants à monitorer que ce soit dans vshpere Client ou Esxtop au niveau des machines virtuelles : %USED ou Usage : Le pourcentage d utilisation d un CPU par une VM %RDY ou Ready : Le pourcentage de temps d attente de la ressource CPU Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 33 / 46
Guide pratique Problèmes CPU possible Les différents problèmes CPU possible sont les suivants : Saturation CPU de l hôte %USED (moy > 75% ou pics > 90%) %RDY (moy > 2000ms) Saturation CPU de l invité %USED (moy > 75% ou pics > 90%) Utilisation d un seul vcpu Utilisation vcpu faible Trop grande utilisation du pcpu0 Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 34 / 46
Pistes à explorer Guide pratique Voici des solutions possibles à explorer : Saturation CPU de l hôte Réduire le nombre de VMs Ajouter l ESX/ESXi dans un cluster DRS Augmenter la ressource CPU Limiter les ressources de la VM qui surcharge Saturation CPU de l invité Ajouter des vcpu Mettre à jour les applications Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 35 / 46
Pistes à explorer Guide pratique Utilisation d un seul vcpu Vérifier la compatibilité de l OS Vérifier si l application accepte le multi-threading Utilisation vcpu faible Trop de vcpu Mauvais temps de réponse du stockage Trop grande utilisation du pcpu0 Réserver le pcpu0 pour le Service Console Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 36 / 46
Benchmarking Benchmarking Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 37 / 46
Logiciels Benchmarking VMware recommande d utiliser certains logiciels pour le Benchmarking. Passmark Software (http ://www.passmark.com) BurnInTest 6.0 PerformanceTest 7.0 Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 38 / 46
Résultats Benchmarking Win 2008 VM (Win 2008) VM (Win 2003) Integer (Op/s) 3261.1 M 3085.5 M 508.1 M Floating (Op/s) 4898.2 M 4700.6 M 1976.6 M Prime (P/s) 1423.0 K 1380.0 K 1073.1 K Multimedia (Mat/s) 26.8 M 26.2 M 8.8 M Compression (Oct/s) 11737.2 K 11445.3 K 5879.0 K Cryptage (Oct/s) 33.5 M 32.3 M 16.7 M Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 39 / 46
Hiatchi USP-V Hiatchi USP-V & True Copy Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 40 / 46
Problématique Hiatchi USP-V VMware cluster ESX 1 ESX 2 VM 1 VM 4? VM 2 VM 5 x12... VM 3 VM 6 Hitachi USP-V Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 41 / 46
Hiatchi USP-V Solution VMware cluster ESX 1 ESX 2 ESX 3 ESX 4 ESX X VM 1 VM 4 VM 7 VM 10 VM 13 VM 2 VM 5 VM 8 VM 11 VM 14 VM de contrôle 1 VM 6 VM 9 VM 12 VM de contrôle 2 CMD CMD CMD CMD P-VOL Hitachi True copy S-VOL S-VOL Hitachi True copy P-VOL Hitachi USP-V P-VOL => R/W S-VOL => R Hitachi USP-V P-VOL => R/W S-VOL => R Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 42 / 46
Hiatchi USP-V Configuration VMware cluster ESX 1 ESX 2 ESX 3 ESX 4 ESX Z VM 1 VM 4 VM 7 VM 10 VM 13 VM 2 VM 5 VM 8 VM 11 VM 14 VM 3 VM 6 VM 9 VM 12 ESX X ESX Y VM de contrôle 1 VM de contrôle 2 03:99 04:10 0B:87 0C:40 CMD CMD CMD CMD 02:76 0B:86 Hitachi USP-V ACA SN78362 Hitachi USP-V NHP SN78371 Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 43 / 46
Hiatchi USP-V Configuration /etc/horcm0.conf HORCM_MON #ip_address service poll(10ms) timeout(10ms) localhost 7000 1000 3000 HORCM_CMD # serial 78362 USP-V Acacias #dev_name dev_name dev_name \\.\CMD-78362:/dev/sd/ HORCM_LDEV #dev_group dev_name Serial# CU:LDEV(LDEV#) MU# synchro1 vm1 78362 02:76 HORCM_INST #dev_group ip_address service synchro1 localhost 7001 /etc/horcm1.conf HORCM_MON #ip_address service poll(10ms) timeout(10ms) localhost 7001 1000 3000 HORCM_CMD # serial 78371 USP-V NHP #dev_name dev_name dev_name \\.\CMD-78371:/dev/sd/ HORCM_LDEV #dev_group dev_name Serial# CU:LDEV(LDEV#) MU# 78362 0B:86 synchro1 vm1 HORCM_INST #dev_group ip_address service synchro1 localhost 7000 ESX X VM de contrôle 1 ESX Y VM de contrôle 2 03:99 04:10 0B:87 0C:40 CMD CMD CMD CMD 02:76 0B:86 Hitachi USP-V ACA SN78362 Hitachi USP-V NHP SN78371 Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 44 / 46
Configuration Hiatchi USP-V VMware cluster ESX 1 ESX 2 ESX 3 ESX 4 ESX Z VM 1 VM 4 VM 7 VM 10 VM 13 VM 2 VM 5 VM 8 VM 11 VM 14 VM 3 VM 6 VM 9 VM 12 ESX X Instance 0 VM de Instance 1 contrôle 1 Instance 10 Instance 11 ESX Y VM de contrôle 2 03:99 04:10 0B:87 0C:40 CMD CMD CMD CMD P-VOL 02:76 Paire de synchronisation Hitachi True Copy S-VOL 0B:86 Hitachi USP-V ACA SN78362 P-VOL -> R/W Hitachi USP-V NHP SN78371 S-VOL -> R Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 45 / 46
FIN Hiatchi USP-V Des questions? Cédric Penas Performances d un système virtualisé avec VMware ESX-ESXi 30 juin 2010 46 / 46