Utilisez Azure PowerShell pour créer une machine virtuelle avec Performances réseau accélérées

Cet article explique comment utiliser Azure PowerShell pour créer une machine virtuelle Windows avec Performances réseau accélérées (AccelNet) activé. Il explique aussi comment activer et gérer les performances réseau accélérées sur des machines virtuelles existantes.

Vous pouvez aussi créer une machine virtuelle avec les performances réseau accélérées activées à l’aide du portail Azure. Pour plus d’informations sur l’utilisation du portail Azure pour gérer les performances réseau accélérées sur des machines virtuelles, consultez la section Gérer les performances réseau accélérées dans le portail.

Pour utiliser Azure CLI pour créer une machine virtuelle Windows avec Performances réseau accélérées activé, consultez l’article Créer une machine virtuelle dotée de performances réseau accélérées à l’aide d’Azure CLI.

Prérequis

  • Compte Azure avec un abonnement actif. Vous pouvez créer un compte gratuitement.

  • Azure PowerShell version 1.0.0 ou une version ultérieure installée. Pour connaître la version actuellement installée, exécutez Get-Module -ListAvailable Az. Si vous devez installer ou mettre à niveau le module Az, installez la dernière version du module à partir de PowerShell Gallery.

  • Dans PowerShell, connectez-vous à votre compte Azure à l’aide de Connect-AzAccount.

Créer une machine virtuelle avec Performances réseau accélérées activé

Dans les exemples suivants, vous pouvez remplacer les exemples de paramètres tels que <myResourceGroup>, <myNic>et <myVm> par vos propres valeurs.

Créez un réseau virtuel

  1. Utilisez la commande New-AzResourceGroup pour créer un groupe de ressources destiné à contenir les ressources.

    New-AzResourceGroup -Name "<myResourceGroup>" -Location "<myAzureRegion>"
    
  2. Utilisez la commande New-AzVirtualNetworkSubnetConfig pour créer une configuration de sous-réseau.

    $subnet = New-AzVirtualNetworkSubnetConfig `
      -Name "<mySubnet>" `
      -AddressPrefix "<192.168.1.0/24>"
    
  3. Créez un réseau virtuel à l’aide de la commande New-AzVirtualNetwork avec un sous-réseau.

    $vnet = New-AzVirtualNetwork -ResourceGroupName "<myResourceGroup>" `
      -Location "<myAzureRegion>" `
      -Name "<myVnet>" `
      -AddressPrefix "<192.168.0.0/16>" `
      -Subnet $Subnet
    

Créer un groupe de sécurité réseau

  1. Un groupe de sécurité réseau (NSG) contient plusieurs règles par défaut, dont l’une désactive tous les accès entrants à partir d’Internet. Utilisez la commande New-AzNetworkSecurityRuleConfig pour créer une règle afin de pouvoir vous connecter à distance à la machine virtuelle via le protocole RDP (Remote Desktop Protocol).

    $rdp = New-AzNetworkSecurityRuleConfig `
      -Name "Allow-RDP-All" `
      -Description "Allow RDP" `
      -Access Allow `
      -Protocol Tcp `
      -Direction Inbound `
      -Priority 100 `
      -SourceAddressPrefix * `
      -SourcePortRange * `
      -DestinationAddressPrefix * `
      -DestinationPortRange 3389
    
  2. Utilisez la commande New-AzNetworkSecurityGroup pour créer le groupe de sécurité réseau et affecter la règle Allow-RDP-All au NSG.

    $nsg = New-AzNetworkSecurityGroup `
      -ResourceGroupName "<myResourceGroup>" `
      -Location "<myAzureRegion>" `
      -Name "<myNsg>" `
      -SecurityRules $rdp
    
  3. Utilisez la commande Set-AzVirtualNetworkSubnetConfig pour associer le NSG au sous-réseau. Les règles NSG sont efficaces pour toutes les ressources déployées dans le sous-réseau.

    Set-AzVirtualNetworkSubnetConfig `
      -VirtualNetwork $vnet `
      -Name "<mySubnet>" `
      -AddressPrefix "<192.168.1.0/24>" `
      -NetworkSecurityGroup $nsg
    

Créer une interface réseau avec mise en réseau accélérée

  1. Utilisez New-AzPublicIpAddress pour créer une adresse IP publique. La machine virtuelle n’a pas besoin d’une adresse IP publique si vous n’y accédez pas à partir d’Internet. Toutefois, vous avez besoin de l’adresse IP publique pour effectuer les étapes de cet article.

    $publicIp = New-AzPublicIpAddress `
      -ResourceGroupName "<myResourceGroup>" `
      -Name "<myPublicIp>" `
      -Location "<myAzureRegion>" `
      -AllocationMethod Dynamic
    
  2. Utilisez la commande New-AzNetworkInterface pour créer une interface réseau (NIC) avec Performances réseau accélérées activé, et attribuez l’adresse IP publique à la NIC.

    $nic = New-AzNetworkInterface `
      -ResourceGroupName "<myResourceGroup>" `
      -Name "<myNic>" `
      -Location "<myAzureRegion>" `
      -SubnetId $vnet.Subnets[0].Id `
      -PublicIpAddressId $publicIp.Id `
      -EnableAcceleratedNetworking
    

Créer une machine virtuelle et attacher l’interface réseau

  1. Utilisez la commande Get-Credential pour définir un nom d’utilisateur et un mot de passe pour la machine virtuelle et les stocker dans la variable $cred.

    $cred = Get-Credential
    
  2. Utilisez New-AzVMConfig pour définir une machine virtuelle avec une taille de machine virtuelle qui prend en charge la mise en réseau accélérée, comme indiqué dans Mise en réseau accélérée Windows. Pour obtenir la liste de toutes les tailles de machine virtuelle Windows et leurs caractéristiques, consultez Tailles de machines virtuelles Windows.

    $vmConfig = New-AzVMConfig -VMName "<myVm>" -VMSize "Standard_DS4_v2"
    
  3. Utilisez les commandes Set-AzVMOperatingSystem et Set-AzVMSourceImage pour créer le reste de la configuration de votre machine virtuelle. L’exemple suivant crée une machine virtuelle Datacenter Windows Server 2019 R2 :

    $vmConfig = Set-AzVMOperatingSystem -VM $vmConfig `
      -Windows `
      -ComputerName "<myVM>" `
      -Credential $cred `
      -ProvisionVMAgent `
      -EnableAutoUpdate
    $vmConfig = Set-AzVMSourceImage -VM $vmConfig `
      -PublisherName "MicrosoftWindowsServer" `
      -Offer "WindowsServer" `
      -Skus "2019-Datacenter" `
      -Version "latest"
    
  4. Utilisez la commande Add-AzVMNetworkInterface pour attacher à la machine virtuelle la carte réseau précédemment créée.

    $vmConfig = Add-AzVMNetworkInterface -VM $vmConfig -Id $nic.Id
    
  5. Utilisez la commande New-AzVM pour créer la machine virtuelle avec Performances réseau accélérées activé.

    New-AzVM -VM $vmConfig -ResourceGroupName "<myResourceGroup>" -Location "<myAzureRegion>"
    

Confirmer que le contrôleur Ethernet est installé

Une fois la machine virtuelle créée dans Azure, connectez-vous à cette dernière et vérifiez que le contrôleur Ethernet est installé dans Windows.

  1. Dans le portail Azure, recherchez et sélectionnez machines virtuelles.

  2. Sur la page Machines virtuelles, sélectionnez votre nouvelle machine virtuelle.

  3. Sur la page Vue d’ensemble de la machine virtuelle, sélectionnez Connecter.

  4. Dans l’écran Connecter, sélectionnez RDP natif.

  5. Dans l’écran RDP natif, sélectionnez Télécharger le fichier RDP.

  6. Ouvrez le fichier RDP téléchargé, puis connectez-vous avec les informations d’identification que vous avez entrées lors de la création de la machine virtuelle.

  7. Sur la machine virtuelle distante, cliquez avec le bouton droit sur Démarrer, puis sélectionnez Gestionnaire de périphériques.

  8. Dans la fenêtre Gestionnaire d'appareils, développez le nœud Cartes réseau.

  9. Vérifiez que la mention Mellanox ConnectX-4 Lx Virtual Ethernet Adapter (Carte Ethernet virtuelle Mellanox ConnectX-4 Lx) s’affiche comme dans l’image suivante :

    Carte Ethernet Mellanox ConnectX-3 fonction virtuelle, nouvelle carte réseau pour la mise en réseau accélérée, Gestionnaire d'appareils

    La présence de la carte confirme que Performances réseau accélérées est activé pour votre machine virtuelle.

Notes

Si la carte Mellanox ne parvient pas à démarrer, ouvrez une invite de commandes Administrateur sur la machine virtuelle distante, puis entrez la commande suivante :

netsh int tcp set global rss = enabled

Gérer les performances réseau accélérées sur des machines virtuelles existantes

Vous pouvez activer les performances réseau accélérées sur une machine virtuelle existante. La machine virtuelle doit répondre aux exigences suivantes pour prendre en charge Performances réseau accélérées :

  • Avoir une taille prise en charge pour Performances réseau accélérées.
  • Être une image Place de marché Azure prise en charge.
  • Être arrêtée ou libérée avant l’activation des performances réseau accélérées sur une carte réseau. Cette exigence s’applique à une machine virtuelle individuelle ou aux machines virtuelles d’un groupe à haute disponibilité ou dans Azure Virtual Machine Scale Sets.

Activer les performances réseau accélérées sur une machine virtuelle individuelle ou des machines virtuelles dans des groupes à haute disponibilité

  1. Arrêtez ou libérez la machine virtuelle individuelle ou, dans le cas d’un groupe à haute disponibilité, toutes les machines virtuelles du groupe :

    Stop-AzVM -ResourceGroup "<myResourceGroup>" -Name "<myVM>"
    

    Si vous avez créé la machine virtuelle individuellement, sans groupe à haute disponibilité, vous ne devez arrêter ou libérer que cette machine pour activer les performances réseau accélérées. Si vous avez créé votre machine virtuelle avec un groupe à haute disponibilité, vous devez arrêter ou libérer toutes les machines virtuelles du groupe pour que les machines virtuelles finissent sur un cluster qui prend en charge des performances réseau accélérées.

    L’exigence d’arrêt ou de désallocation n’est pas nécessaire pour désactiver les performances réseau accélérées. Les clusters qui prennent en charge les performances réseau accélérées fonctionnent également correctement avec les cartes réseau qui n’utilisent pas les performances réseau accélérées.

  2. Activez les performances réseau accélérées sur la carte réseau de votre machine virtuelle :

    $nic = Get-AzNetworkInterface -ResourceGroupName "<myResourceGroup>" -Name "<myNic>"
    
    $nic.EnableAcceleratedNetworking = $true
    
    $nic | Set-AzNetworkInterface
    
  3. Redémarrez la machine virtuelle ou toutes les machines virtuelles du groupe à haute disponibilité, puis vérifiez que Performances réseau accélérées est bien activé.

    Start-AzVM -ResourceGroup "<myResourceGroup>" -Name "<myVM>"
    

Activer les performances réseau accélérées dans Virtual Machine Scale Sets

Azure Virtual Machine Scale Sets est légèrement différent, mais suit le même flux de travail.

  1. Arrêtez les machines virtuelles :

    Stop-AzVmss -ResourceGroupName "<myResourceGroup>" -VMScaleSetName "<myScaleSet>"
    
  2. Mettez à jour la propriété Performances réseau accélérées sur la NIC :

    $vmss = Get-AzVmss -ResourceGroupName "<myResourceGroup>" -VMScaleSetName "<myScaleSet>"
    
    $vmss.VirtualMachineProfile.NetworkProfile.NetworkInterfaceConfigurations[0].EnableAcceleratedNetworking = $true
    
    Update-AzVmss 
      -ResourceGroupName "<myResourceGroup>" `
      -VMScaleSetName "<myScaleSet>" `
      -VirtualMachineScaleSet $vmss
    
  3. Virtual Machine Scale Sets a une stratégie de mise à niveau qui applique des mises à jour à l’aide de paramètres automatiques, propagés ou manuels. Définissez les stratégies de mise à niveau sur « automatique » afin que les modifications soient immédiatement récupérées.

    $vmss.UpgradePolicy.Mode = "Automatic"
    
    Update-AzVmss 
      -ResourceGroupName "<myResourceGroup>" `
      -VMScaleSetName "<myScaleSet>" `
      -VirtualMachineScaleSet $vmss
    
  4. Redémarrez le groupe identique :

    Start-AzVmss -ResourceGroupName "<myResourceGroup>" -VMScaleSetName "<myScaleSet>"
    

Une fois le redémarrage et les mises à niveau terminés, la fonction virtuelle (VF) apparaît dans les machines virtuelles qui utilisent un système d’exploitation et une taille de machine virtuelle pris en charge.

Redimensionner des machines virtuelles existantes avec Performances réseau accélérées

Les machines virtuelles avec Performances réseau accélérées activé peuvent être redimensionnées uniquement en fonction de tailles qui prennent également en charge les performances réseau accélérées. Vous ne pouvez pas redimensionner une machine virtuelle avec Performances réseau accélérées en une instance de machine virtuelle qui ne prend pas en charge les performances réseau accélérées à l’aide de l’opération de redimensionnement. Utilisez plutôt la procédure suivante pour redimensionner ces machines virtuelles :

  1. Arrêtez et libérez la machine virtuelle ou toutes les machines virtuelles du groupe à haute disponibilité ou dans Virtual Machine Scale Sets.
  2. Désactivez les performances réseau accélérées sur la carte réseau de la machine virtuelle ou sur toutes les machines virtuelles du groupe à haute disponibilité ou dans Virtual Machine Scale Sets.
  3. Attribuez aux machines virtuelles une nouvelle taille qui ne prend pas en charge les performances réseau accélérées, puis redémarrez-les.

Gérer les performances réseau accélérées dans le portail

Quand vous créez une machine virtuelle dans le portail Azure, vous pouvez activer la case à cocher Activer les performances réseau accélérées sous l’onglet Mise en réseau de l’écran Créer une machine virtuelle. Si la machine virtuelle utilise un système d’exploitation et une taille de machine virtuelle pris en charge pour les performances réseau accélérées, la case est automatiquement cochée. Si les performances réseau accélérées ne sont pas prises en charge, la case à cocher n’est pas activée, et un message en explique la raison.

Notes

Vous pouvez activer les performances réseau accélérées lors de la création d’une machine virtuelle du portail uniquement pour les systèmes d’exploitation pris en charge de la Place de marché Azure. Pour créer et activer les performances réseau accélérées pour une machine virtuelle avec une image de système d’exploitation personnalisée, vous devez utiliser PowerShell ou Azure CLI.

Pour activer ou désactiver les performances réseau accélérées pour une machine virtuelle existante à l’aide du portail Azure :

  1. Dans le portail Azure, sur la page de la machine virtuelle, sélectionnez Mise en réseau dans le menu de gauche.
  2. Sur la page Mise en réseau, sélectionnez Interface réseau.
  3. En haut de la page Vue d’ensemble de la carte réseau, sélectionnez Modifier les performances réseau accélérées.
  4. Sélectionnez l’option Automatique, Activé ou Désactivé, puis sélectionnez Enregistrer.

Pour vérifier si les performances réseau accélérées sont activées pour une machine virtuelle existante :

  1. Dans le portail Azure, sur la page de la machine virtuelle, sélectionnez Mise en réseau dans le menu de gauche.
  2. Sur la page Mise en réseau, sélectionnez Interface réseau.
  3. Sur la page Vue d’ensemble de la NIC, sous Informations de base, notez si le paramètre Performances réseau accélérées est défini sur l’option Activé ou Désactivé.

Étapes suivantes