Existe-t-il un moyen standard de comparer les performances d'une machine virtuelle Windows à partir du système d'exploitation invité?


9

Nous constatons que notre logiciel se comporte de manière inhabituelle chez l'un des clients où il est exécuté sur une machine virtuelle Windows 2008. L'hôte est VMWare ESX Server.

Le plus gros problème que j'ai vu est que nos processus abandonnent les connexions de socket ou que les connexions de socket expirent. Certains de nos processus communiquent entre eux via des sockets TCP. Dans certains cas, nous établissons une connexion socket avec des systèmes distants (par exemple, WMI, JDBC).

Je suis amené à croire que la VM manque de ressources. Nous n'avons pas accès aux tableaux de bord d'administration / de performance ESX. J'ai également appris que les chiffres fournis par perfmon ou le gestionnaire de tâches à l'intérieur de la machine virtuelle hôte ne sont pas une véritable indication de la santé du système d'exploitation hôte.

Je pourrais écrire un programme qui fait beaucoup de mathématiques en virgule flottante et affiche le temps pris. Comparez ensuite ce temps à celui obtenu sur différentes machines virtuelles ou de véritables fenêtres Windows.

Cette approche est suffisante pour que nous puissions déterminer si la cause première est bien les performances des VM. Cependant, il serait beaucoup plus facile de convaincre le client s'il existait une méthode ou un outil standard pour ce faire.

Est-ce qu'il y a un?


Je crois que Windows 2008, et certainement Windows2008R2, vous permet de regarder de nouveaux compteurs (et autres) qui vous montrent la fréquence du processeur, la mémoire, etc. spécialement pour la virtualisation. Mais le moyen le plus rapide serait de demander à l'administrateur de la machine virtuelle - assurez-vous qu'il n'a pas sursouscrit la mémoire, en particulier sur l'hôte VM (la boîte hôte peut avoir 64 Go, mais la somme des machines virtuelles sur cet hôte peut avoir 80 Go de RAM) . Oh, et si cela vient juste de se produire, alors peut-être que l'hôte VM est devenu plus lourd. Demandez-leur de déplacer l'invité VM vers un hôte moins occupé.
Peter Schofield

Cela me rappelle - Blame (Virtualisation) lonesysadmin.net/2011/02/08/blame
Doug Luxem

Veuillez partager si vous avez une idée de ces compteurs. En ce moment, je joue avec cette URL pour obtenir des indications précoces fossiltoys.com/speed.html (ce n'est peut-être pas un test fiable, mais je cherche à en trouver un plus fiable)
akirekadu

Réponses:


2

J'ai tendance à utiliser les mêmes produits que j'utilise pour comparer le matériel physique.

http://www.passmark.com/products/pt.htm

Sautez le test 3d bien sûr, mais les autres peuvent être utiles, en particulier les tests de performances du disque et du réseau. Assurez-vous que vous utilisez le bon réseau et les pilotes d'E / S, et assurez-vous que tous vos paramètres Windows sont optimisés pour VM.


1

Pour tester la mise en réseau, j'utilise iperf et netperf pour tester cela.

Pour tester les E / S disque, utilisez sqlio qui est un autre outil standard de l'industrie. Exécutez des tests d'E / S aléatoires et séquentiels avec différentes tailles de bloc.

Pour les tests CPU / RAM, je ne peux penser à rien pour Windows du haut de ma tête.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.