PROBLEME PERFORMANCE DISQUE DUR VMWARE ESXi

Le serveur est un HP DL180 G6 équipé d’un Xeon E5504 de 4 Go Ram DDR3 et d’une carte raid HP SmartArray P212, 2 x HDD 160 Go 7200tr/min en Raid 1+0.

Un retour d’expérience assez intéressant sur les performances disque avec VMware ESXi 4.0 mais aussi sur Windows Server 2008. Nous avons remarqué le problème avec des tests de ping qui était très irréguliers voir parfois impossibles, les temps de réponse varient entre <1ms jusqu’à plus de 1200 ms.

Après des tests avec le logiciel CrystalDiskMark 3.0 nous avons des performances très mauvaises en écriture sur des machines virtuelles avec des datastores locaux mais aussi sur un Windows serveur 2008 non virtualisé.

CrystalDiskMark est un outil qui permet de tester les performances des disques durs.

Dans un premier temps, le bench fait une lecture continu de 100 Mo sur le disque avec 5 passes, ça donne la moyenne en Mo seconde. Puis la même chose mais en écriture continu de 50 Mo avec 5 passes ceci donne la moyenne en Mo par seconde

Il fait de même pour le 512K mais il écrit et lit par tranches de 512Ko pour émuler la l’écriture et la lecture de fichier de taille moyenne.

Et enfin l’opération est identique pour le 4Ko pour émuler l’écriture et la lecture de fichier de petites tailles.

Plus les fichiers sont petits plus ils sont nombreux donc le débit diminue à cause des nombreuses pauses pour l’accès à chaque fichier.

Voici les résultats de CrystalMark.

Windows Serveur 2008 Standard Edition 32 Bits, Avec Cache, Sans Batterie

Machine virtuelle (Windows XP Pro 32 Bits) sur ESXi 4, Sans batterie, Avec cache

Après investigation, ce problème provient de chez HP qui livre ses carte RAID sans cache ni batterie. Lors de l’achat du serveur la carte SmartArray P212 était livrée sans mémoire cache.

La première chose a était d’acheter 256 Mo de mémoire cache (http://h10010.www1.hp.com/wwpc/uk/en/sm/WF06c/A1-329290-332469-3965891-3965891-434812-3886524.html) après installation de la mémoire le problème était identique. En effet pour activer le cache en écriture il faut que le module de cache soit protégé par une batterie (BBWC) qui évite de perdre des données en cas de coupure du serveur (Par exemple une coupure électrique). Pour résoudre ce problème récurrent il a fallu acheter cette batterie ou BBWC (Battery-Backed Write Cache http://h10010.www1.hp.com/wwpc/aa/fr/sm/WF06c/A1-329290-332469-3965891-3965891-434812-3890511.html). La batterie est livré avec le câble pour la brancher sur le module cache.

/!\ Il est possible d’activer le cache en écriture sans la batterie, mais cela est fortement déconseillé pour cause de perte de données en cas de coupure ou crash du système /!\

/!\ La batterie ou Battery-Backed Write Cache doit être chargée complétement avant toute utilisation. Dans mon cas, celle-ci a mis environ deux heures à charger. /!\

Après installation de la batterie et activation du cache en écriture, les performances ont explosé. J’ai refait les tests avec le logiciel CrystalDiskMark avec les même configuration, voici les résultats :

Windows Serveur 2008 Standard Edition 32 Bits, Avec Cache, Avec Batterie


Machine virtuelle (Windows XP Pro 32 Bits) sur ESXi 4, Avec batterie, Avec cache

Merci à Cédric Bravo et Guillaume Mathieu pour leur article :

http://www.guvirt.org/serveurs/6-hyper-v/137-virtualisation-sur-hp-proliant-dl580-avec-carte-raid-p400i.html

http://msreport.free.fr/?p=167

Branchement de la batterie sur le module cache

Emplacement de la batterie dans le serveur HP DL 180 G6

Auteur : POMENTE Guillaume et LUSSAGNET Yannick