Optimiser le débit du réseau des machines virtuelles Azure

Attention

Cet article fait référence à CentOS, une distribution Linux proche de l’état EOL (End Of Life). Faites le point sur votre utilisation et organisez-vous en conséquence. Pour plus d’informations, consultez l’aide relative à la fin de vie de CentOS.

Les machines virtuelles Azure disposent de paramètres réseau par défaut qui peuvent être davantage optimisés pour le débit du réseau. Cet article décrit comment optimiser le débit du réseau pour les machines virtuelles Microsoft Azure Windows et Linux, notamment les distributions majeures telles que Ubuntu, CentOS et Red Hat.

Machines virtuelles Windows

Si votre machine virtuelle Windows prend en charge les performances réseau accélérées, activez cette fonctionnalité pour un débit optimal. Pour plus d’informations, consultez l’article Créer une machine virtuelle avec les performances réseau accélérées.

Pour toutes les autres machines virtuelles Windows, l’utilisation de la mise à l’échelle côté réception (RSS) peut permettre d’atteindre un débit maximal supérieur à celui d’une machine virtuelle sans RSS. La mise à l’échelle côté réception (RSS) peut être désactivée par défaut sur une machine virtuelle Windows. Pour déterminer si la mise à l’échelle côté réception (RSS) est activée et, si elle ne l’est pas, l’activer, effectuez les étapes suivantes :

  1. Utilisez la commande PowerShell Get-NetAdapterRss pour déterminer si la mise à l’échelle côté réception (RSS) est activée sur une carte réseau. Dans l’exemple de sortie suivant retourné par Get-NetAdapterRss, la mise à l’échelle côté réception (RSS) n’est pas activée.

    Name                    : Ethernet
    InterfaceDescription    : Microsoft Hyper-V Network Adapter
    Enabled                 : False
    
  2. Pour activer la mise à l’échelle côté réception (RSS), entrez la commande suivante :

    Get-NetAdapter | % {Enable-NetAdapterRss -Name $_.Name}
    

    Cette commande n’a pas de sortie. La commande modifie les paramètres de carte réseau. Elle provoque une perte de connectivité temporaire pendant environ une minute. Une boîte de dialogue de reconnexion s’affiche lors de la perte de connectivité. En général, la connectivité est rétablie après la troisième tentative.

  3. Vérifiez que la mise à l’échelle côté réception (RSS) est activée sur la machine virtuelle en entrant de nouveau la commande Get-NetAdapterRss. Si l’opération réussit, l’exemple de sortie suivant est retourné :

    Name                    : Ethernet
    InterfaceDescription    : Microsoft Hyper-V Network Adapter
    Enabled                 : True
    

Machines virtuelles Linux

La mise à l’échelle côté réception (RSS) est toujours activée par défaut sur une machine virtuelle Azure Linux. Les noyaux Linux publiés depuis octobre 2017 incluent de nouvelles options d’optimisation du réseau qui permettent à une machine virtuelle Linux d’obtenir un débit réseau plus élevé.

Ubuntu pour les nouveaux déploiements

Le noyau Ubuntu Azure est le plus optimisé pour les performances réseau sur Azure. Pour obtenir les dernières optimisations, installez d’abord la version la plus récente de 18.04-LTS, comme suit :

"Publisher": "Canonical",
"Offer": "UbuntuServer",
"Sku": "18.04-LTS",
"Version": "latest"

Une fois la création terminée, entrez les commandes suivantes pour obtenir les mises à jour les plus récentes. Ces étapes fonctionnent aussi pour les machines virtuelles qui s’exécutent actuellement sur le noyau Ubuntu Azure.

#run as root or preface with sudo
sudo apt-get -y update
sudo apt-get -y upgrade
sudo apt-get -y dist-upgrade

En cas d’échec de la mise à jour avec erreurs sur un déploiement Ubuntu existant ayant déjà le noyau Azure, ce jeu de commandes facultatif peut être utile.

#optional steps might be helpful in existing deployments with the Azure kernel
#run as root or preface with sudo
sudo apt-get -f install
sudo apt-get --fix-missing install
sudo apt-get clean
sudo apt-get -y update
sudo apt-get -y upgrade
sudo apt-get -y dist-upgrade

Mise à niveau du noyau Ubuntu Azure pour les machines virtuelles existantes

Vous pouvez obtenir des performances significatives en termes de débit en effectuant une mise à niveau vers le noyau Azure Linux. Pour vérifier si vous avez ce noyau, vérifiez la version de votre noyau. Elle doit être identique ou ultérieure à l’exemple.

#Azure kernel name ends with "-azure"
uname -r

#sample output on Azure kernel:
#4.13.0-1007-azure

Si votre machine virtuelle ne dispose pas du noyau Azure, le numéro de version commence en général par « 4.4 ». Si la machine virtuelle n’a pas le noyau Azure, exécutez les commandes suivantes à la racine :

#run as root or preface with sudo
sudo apt-get update
sudo apt-get upgrade -y
sudo apt-get dist-upgrade -y
sudo apt-get install "linux-azure"
sudo reboot

CentOS

Pour bénéficier des dernières optimisations, nous vous recommandons de créer une machine virtuelle avec la version la plus récente prise en charge en spécifiant les paramètres suivants :

"Publisher": "OpenLogic",
"Offer": "CentOS",
"Sku": "7.7",
"Version": "latest"

Il peut être bénéfique pour les machines virtuelles nouvelles ou existantes d’installer la dernière version de Linux Integration Services (LIS). L’optimisation du débit est incluse dans les LIS, à partir de la version 4.2.2-2. Les versions ultérieures contiennent d’autres améliorations. Entrez les commandes suivantes pour installer la dernière version de LIS :

sudo yum update
sudo reboot
sudo yum install microsoft-hyper-v

Red Hat

Pour bénéficier des optimisations, nous vous recommandons de créer une machine virtuelle avec la version la plus récente prise en charge en spécifiant les paramètres suivants :

"Publisher": "RedHat"
"Offer": "RHEL"
"Sku": "7-RAW"
"Version": "latest"

Les machines virtuelles nouvelles et existantes peuvent tirer parti de l’installation de la dernière version de LIS. L’optimisation du débit est incluse dans les LIS, à partir de la version 4.2. Entrez les commandes suivantes pour télécharger et installer les LIS :

wget https://aka.ms/lis
tar xvf lis
cd LISISO
sudo ./install.sh #or upgrade.sh if prior LIS was previously installed

Pour en savoir plus sur Linux Integration Services version 4.3 pour Hyper-V, consultez la page de téléchargement.

Étapes suivantes