Partagez l'article

Connexion






Mot de passe oublié ?
Identifiant oublié ?
Pas encore inscrit ? Créer un compte

Up-coming events

There are no up-coming events

Hyper-V 2012 R2-optimisation réseau PDF Imprimer Envoyer
Note des utilisateurs: / 17
MauvaisTrès bien 
Écrit par Cédric Bravo   

Hyper-V 2012 R2, optimisation réseau

optimisation Reseau Hyper-V

Hyper-V 2012 R2 offre une grande varieté de configuration possible.

Pour ces raisons, il existe de nombreuses façon d'optimiser de manière importante les performances réseau de votre plateforme.

Dans cet article, nous allons vous montrer comment  optimiser les performances de vos cartes 10Gig pour vos machines virtuelles et vos réseaux de management.

 

Si vous avez déjà consulté notre "guide d’architecture SCVMM / Hyper-V 2012R2", vous savez que 4 cartes réseau sont un minimum conseillées pour assurer une bonne isolation des flux.

Dans ce guide, nous exposons une architecture entièrement basée sur des switchs logiques, poussés par VMM. Si ce design est valable pour les infrastructures équipées de cartes 1Gbit (ce qui est le cas dans notre guide), il n’est pas optimisé pour les cartes 10Gbit et plus sous Hyper-V 2012R2. Dans cet article, nous allons vous expliquer pourquoi.

   ManagementVswitchdesign 

                    

 

Utiliser des switchs logiques pour les cartes de management (Admin, Live Migration, Heartbeat/CSV)

Les avantages :

Il est possible d’utiliser un switch logique pour gérer l’ensemble des ports de administratifs (Management, Live Migration, HeartBeat/CSV) .

Avec les switchs logiques, il est plus facile de déployer les hosts depuis VMM, de gérer la configuration IP de tous les ports et de positionner de la QoS pour les différents attachements.

 

Les inconvénients :

Quand on utilise une carte virtuelle, il n’y a pas de RSS (ceci sera corrigé avec Windows 2016).

Qu’est-ce que RSS me direz-vous ? Et bien en raccourci, RSS ou Receive Side Scaling est une fonction matérielle des cartes réseaux qui permet d’étaler le traitement des paquets sur l’ensemble des cœurs physiques disponibles.

Si cette fonction ne trouve pas grande utilité quand on utilise des cartes 1Gbit, celle-ci trouve tout son sens quand on utilise des cartes 10Gbits ou plus !

En effet, une carte 10Gbit est largement en mesure de saturer un cœur sur un processeur moderne.

La conséquence est un plafonnement des performances bien en deçà des performances de la carte.

 

Exemple :

Ci-dessous la charge processeur lors d’une migration live depuis un serveur Hyper-V sans RSS sur un team 2x10Gbit. On voit clairement que le 1Er processeur est saturé.

 sans RSS

Ceci a pour effet de plafonner le débit réseau bien en dessous de la capacité du team (ici on dépasse péniblement les 2Gbit avec un team 2x10Gibts).

 

Avec RSS, on peut voir l’ensemble des cœurs physiques (un sur 2) mis à contributions pour effectuer une migration à chaud (ici sans la compressions activée pour plus de visibilité), le débit s’en ressent énormément. On dépasse ici facilement les 10gbit, soit 5 fois plus que précédemment !

AvecRss

Note : RSS (Comme VMQ) n'utilise que des coeurs physiques. Sur les Systèmes ou l'Hyperthreading est activé (c'est à dir à peu près tous) un coeur physique affiche deux processeurs logiques (Coeur 0 = Processeur Logique 0 et 1). Le processeur physiques est représenté par un indice Pair. En conséquence, RSS n'utilise que les coeurs logiques LP0, LP2, LP4 etc...
NDL : On notera que certains modèles de cartes permettent l'utilisation de l'hyperthreading et tirent donc partis des LP impairs (c'est le cas sur cette capture).

 

VMQ (Virtual Machine Queue) à la rescousse.

Introduite avec Windows Server 2012, les VMQ ont fait l’objet de nombreux articles. Souvent pointées du doigt comme responsable de problèmes liés aux drivers, il est souvent préconisé de désactiver cette fonction. Les VMQ jouent cependant un rôle essentiel pour les performances réseaux de votre infrastructure et, à moins d’un bug avéré sur vos pilotes de carte réseau, il n’y a aucune raison de désactiver cette fonction, bien au contraire.

 

VMQ c’est quoi ?

Si l’un des premiers bénéfices de la virtualisation a été de permettre la mutualisation des ressources CPU et RAM, les choses se sont considérablement compliquées avec l’avènement des cartes 10Gbits.

Comme pour les processeurs et leurs instructions dédiées à la virtualisation, il s’est rapidement avéré nécessaire de disposer de fonctions similaires pour partager efficacement les ressources des cartes réseau.

RSS n'étant disponible que pour les cartes physiques, c’est là qu’interviens VMQ…

 

Tout comme RSS, VMQ est une fonctionnalité Hardware des cartes réseaux à la différence que celle ci est dédiée à la virtualisation.

Avec VMQ, chaque interface réseau virtuelle est associée à une « Queue » matérielle, elle même associée à un processeur logique (LP). De cette manière, la bande passante passe de 3 à 4Gbit pour toutes les cartes virtuelles du serveur Hyper-V à 3 à 4 Gbit par carte ! Ce qui est déjà beaucoup mieux, mais pas top.


VMQ DeepDive

Source Networking blog (Technet.com)

Note : Comme RSS, VMQ n’utilise que des cœurs physiques. Sur un système avec Hyperthreading, un cœur physique est représenté par deux cœurs logiques. Le cœur physique est représenté par le cœur logique pair (Ex : Cœurs 0 = Logical Processor 0, Cœur 1 = Logical Processor 2 etc…).

 

Cette limitation peu s'avérer assez frustrante pour le Live Migration. Une solution (peu élégante) est de multiplier les interfaces virtuelles.

En effet, en utilisant plusieurs cartes virtuelles dédiée au Live Migration, on multiplie le nombre de queue associées (et donc le nombre de processeur). Il suffit alors d'activer le mode "SMB Multichannel" pour le Live Migration pour utiliser tous les ports disponibles pour ce traffic. Cristian Edwards illustre cette architecture sur son blog.

 

VMQ + vRSS le ticket gagnant.

Depuis Hyper-V 2012 R2 , les VMQ sont complétées par vRSS qui se charge de reproduire le fonctionnement de RSS dans la VM (à condition que celle-ci dispose de plusieurs vCPU).

Petite astuce, cette fonction n’est pas activée par défaut, et nécessite que VMQ fonctionne.

Pour activer cette fonction, rendez-vous dans les propriétés avancées du pilote de la carte virtuelle.

 RSSenable

Ou en Powershell avec la commande suivante (active RSS pour toutes les cartes de la machine)

get-netadapter |enable-netadapterRss

Note : Atention, une courte coupure réseau peut intervenir lors de l'activation de cette fonction.

 

Vous me direz qu’il suffit alors de faire de même avec les cartes virtuelles de notre partition parent ?

La partition parent n’est finalement qu’une machine virtuelle disposant de « droits » plus importants lui permettant de créer des partitions enfants.

Problème, avec Hyper-V 2012 R2, le vRSS n’est pas disponible pour les cartes virtuelles de la partition parent (Ce point est corrigé dans la prochaine version de Hyper-V).

 

Actuellement, quand le nombre de port le permet, la meilleure solution reste l'utilisation d'un team dédié, non relié à un switch virtuel pour les ports de management.

Cette architecture permet d'assurer une bonne isolation des flux et de débloquer toute la puissance disponible des cartes 10Gbit pour le management.

RSSArchitecture

 

Avantage :

Des performances 4 à 5 fois supérieure à des cartes virtuelles reliées à un vSwitch.

 

Inconvénient :

Vous devez créer les attachements de management de votre cluster « à l’ancienne », c’est-à-dire, à la main, sans passer par VMM.

Le switch virtuel sera alors découvert par VMM en « legacy ». Pas de gestion de profil de ports (QoS), pas d’attribution IP automatique etc.

Les ports de management n’utilisant plus des cartes virtuelles, il est nécessaire de configurer la QoS par d’autres moyens (création de politique de QoS classique ou utilisation de DCB, si vous avez du FCoE ou du SMB V3)

 

D'autres éléments peuvent aussi influer notablement sur les performances réseau de votre infrastructure Hyper-V et ne doivent pas être négligés.

  • Les options d’économie d’énergie (très souvent configuré d'usine en mode balance, dans le bios des serveurs), à désactiver.
  • L'utilisation du Jumbo Frame (quand c'est possible).
  • Dans certains cas, la configuration fine de VMQ (Exclusion du processeur logique 0, car utilisé pour le traffic non VMQ et non RSS).

Pour aller plus loin, nous vous conseillons les articles suivants :

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Mise à jour le Vendredi, 18 Décembre 2015 20:38
 

Joomla! is Free Software released under the GNU/GPL License.