Optimiser le débit du réseau des machines virtuelles AzureOptimize network throughput for Azure virtual machines

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.Azure virtual machines (VM) have default network settings that can be further optimized for network throughput. 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.This article describes how to optimize network throughput for Microsoft Azure Windows and Linux VMs, including major distributions such as Ubuntu, CentOS, and Red Hat.

Machine virtuelle WindowsWindows VM

Si votre machine virtuelle Windows prend en charge la mise en réseau accélérée, l’activation de cette fonctionnalité constitue la configuration optimale pour le débit.If your Windows VM supports Accelerated Networking, enabling that feature would be the optimal configuration for throughput. 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.For all other Windows VMs, using Receive Side Scaling (RSS) can reach higher maximal throughput than a VM without RSS. La mise à l’échelle côté réception (RSS) peut être désactivée par défaut sur une machine virtuelle Windows.RSS may be disabled by default in a Windows VM. 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 :To determine whether RSS is enabled, and enable it if it's currently disabled, complete the following steps:

  1. Utilisez la commande PowerShell Get-NetAdapterRss pour savoir si la mise à l’échelle côté réception (RSS) est activée sur une carte réseau.See if RSS is enabled for a network adapter with the Get-NetAdapterRss PowerShell command. Dans l’exemple de sortie suivant retourné par Get-NetAdapterRss, la mise à l’échelle côté réception (RSS) n’est pas activée.In the following example output returned from the Get-NetAdapterRss, RSS is not enabled.

    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 :To enable RSS, enter the following command:

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

    La commande précédente n’a pas de sortie.The previous command does not have an output. La commande a modifié les paramètres de la carte réseau, entraînant une perte temporaire de la connectivité pendant environ une minute.The command changed NIC settings, causing temporary connectivity loss for about one minute. Une boîte de dialogue de reconnexion s’affiche lors de la perte de connectivité.A Reconnecting dialog box appears during the connectivity loss. En général, la connectivité est rétablie après la troisième tentative.Connectivity is typically restored after the third attempt.

  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.Confirm that RSS is enabled in the VM by entering the Get-NetAdapterRss command again. Si l’opération réussit, l’exemple de sortie suivant est retourné :If successful, the following example output is returned:

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

Machine virtuelle LinuxLinux VM

La mise à l’échelle côté réception (RSS) est toujours activée par défaut sur une machine virtuelle Azure Linux.RSS is always enabled by default in an Azure Linux VM. 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é.Linux kernels released since October 2017 include new network optimizations options that enable a Linux VM to achieve higher network throughput.

Ubuntu pour les nouveaux déploiementsUbuntu for new deployments

Le noyau Ubuntu Azure fournit les meilleures performances réseau sur Azure et est le noyau par défaut depuis le 21 septembre 2017.The Ubuntu Azure kernel provides the best network performance on Azure and has been the default kernel since September 21, 2017. Pour utiliser ce noyau, installez d’abord la version la plus récente de 16.04-LTS, comme ci-dessous :In order to get this kernel, first install the latest supported version of 16.04-LTS, as follows:

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

Une fois la création terminée, entrez les commandes suivantes pour obtenir les mises à jour les plus récentes.After the creation is complete, enter the following commands to get the latest updates. Ces étapes fonctionnent aussi pour les machines virtuelles qui s’exécutent actuellement sur le noyau Ubuntu Azure.These steps also work for VMs currently running the Ubuntu Azure kernel.

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

L’ensemble de commandes optionnel suivant peut être utile pour les déploiements Ubuntu existants qui disposent déjà du noyau Azure mais qui ont rencontré des erreurs lors de mises à jour.The following optional command set may be helpful for existing Ubuntu deployments that already have the Azure kernel but that have failed to further updates with errors.

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

Mise à niveau du noyau Ubuntu Azure pour les machines virtuelles existantesUbuntu Azure kernel upgrade for existing VMs

Des performances significatives en termes de débit peuvent être atteintes en mettant à jour vers le noyau Azure Linux proposé.Significant throughput performance can be achieved by upgrading to the Azure Linux kernel. Pour vérifier si vous avez ce noyau, vérifiez la version de votre noyau.To verify whether you have this kernel, check your kernel version.

#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 ».If your VM does not have the Azure kernel, the version number usually begins with "4.4." Si la machine virtuelle n’a pas le noyau Azure, exécutez les commandes suivantes à la racine :If the VM does not have the Azure kernel, run the following commands as root:

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

CentOSCentOS

Pour bénéficier des dernières optimisations, il est préférable de créer une machine virtuelle avec la version la plus récente prise en charge en spécifiant les paramètres suivants :In order to get the latest optimizations, it is best to create a VM with the latest supported version by specifying the following parameters:

"Publisher": "OpenLogic",
"Offer": "CentOS",
"Sku": "7.4",
"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).New and existing VMs can benefit from installing the latest Linux Integration Services (LIS). L’optimisation du débit est incluse dans les LIS, à partir de la version 4.2.2-2, bien que les versions ultérieures contiennent d’autres améliorations.The throughput optimization is in LIS, starting from 4.2.2-2, although later versions contain further improvements. Entrez les commandes suivantes pour installer la dernière version de LIS :Enter the following commands to install the latest LIS:

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

Red HatRed Hat

Pour bénéficier des optimisations, il est préférable de créer une machine virtuelle avec la version la plus récente prise en charge en spécifiant les paramètres suivants :In order to get the optimizations, it is best to create a VM with the latest supported version by specifying the following parameters:

"Publisher": "RedHat"
"Offer": "RHEL"
"Sku": "7-RAW"
"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).New and existing VMs can benefit from installing the latest Linux Integration Services (LIS). L’optimisation du débit est incluse dans les LIS, à partir de la version 4.2.The throughput optimization is in LIS, starting from 4.2. Entrez les commandes suivantes pour télécharger et installer les LIS :Enter the following commands to download and install LIS:

mkdir lis4.2.3-5
cd lis4.2.3-5
wget https://download.microsoft.com/download/6/8/F/68FE11B8-FAA4-4F8D-8C7D-74DA7F2CFC8C/lis-rpms-4.2.3-5.tar.gz
tar xvzf lis-rpms-4.2.3-5.tar.gz
cd LISISO
install.sh #or upgrade.sh if prior LIS was previously installed

Apprenez-en plus sur les Services d’intégration Linux version 4.2 pour Hyper-V en consultant la page de téléchargement.Learn more about Linux Integration Services Version 4.2 for Hyper-V by viewing the download page.

Étapes suivantesNext steps