Usare Azure PowerShell per creare una macchina virtuale con rete accelerata

Questo articolo descrive come usare Azure PowerShell per creare una macchina virtuale Windows con rete accelerata (AccelNet) abilitata. L'articolo illustra anche come abilitare e gestire la rete accelerata nelle macchine virtuali esistenti.

È anche possibile creare una macchina virtuale con rete accelerata abilitata usando il portale di Azure. Per altre informazioni sull'uso dei portale di Azure per gestire la rete accelerata nelle macchine virtuali, vedere Gestire la rete accelerata tramite il portale.

Per usare l'interfaccia della riga di comando di Azure per creare una macchina virtuale Linux o Windows con rete accelerata abilitata, vedere Usare l'interfaccia della riga di comando di Azure per creare una macchina virtuale con rete accelerata.

Prerequisiti

  • Un account Azure con una sottoscrizione attiva. È possibile creare gratuitamente un account.

  • Azure PowerShell 1.0.0 o versione successiva installata. Per trovare la versione attualmente installata, eseguire Get-Module -ListAvailable Az. Se è necessario installare o aggiornare, installare la versione più recente del modulo Az dal PowerShell Gallery.

  • In PowerShell accedere all'account Azure usando Connect-AzAccount.

Creare una macchina virtuale con rete accelerata

Negli esempi seguenti è possibile sostituire i parametri di esempio, <myResourceGroup>ad esempio , <myNic>e <myVm> con i propri valori.

Creare una rete virtuale

  1. Usare New-AzResourceGroup per creare un gruppo di risorse che contenga le risorse.

    New-AzResourceGroup -Name "<myResourceGroup>" -Location "<myAzureRegion>"
    
  2. Usare New-AzVirtualNetworkSubnetConfig per creare una configurazione della subnet.

    $subnet = New-AzVirtualNetworkSubnetConfig `
      -Name "<mySubnet>" `
      -AddressPrefix "<192.168.1.0/24>"
    
  3. Usare New-AzVirtualNetwork per creare una rete virtuale con la subnet.

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

Creare un gruppo di sicurezza di rete

  1. Un gruppo di sicurezza di rete contiene diverse regole predefinite, una delle quali disabilita l'accesso in ingresso da Internet. Usare New-AzNetworkSecurityRuleConfig per creare una nuova regola in modo che sia possibile connettersi in remoto alla macchina virtuale tramite Remote Desktop Protocol (RDP).

    $rdp = New-AzNetworkSecurityRuleConfig `
      -Name "Allow-RDP-All" `
      -Description "Allow RDP" `
      -Access Allow `
      -Protocol Tcp `
      -Direction Inbound `
      -Priority 100 `
      -SourceAddressPrefix * `
      -SourcePortRange * `
      -DestinationAddressPrefix * `
      -DestinationPortRange 3389
    
  2. Usare New-AzNetworkSecurityGroup per creare il gruppo di sicurezza di rete e assegnare la Allow-RDP-All regola al gruppo di sicurezza di rete.

    $nsg = New-AzNetworkSecurityGroup `
      -ResourceGroupName "<myResourceGroup>" `
      -Location "<myAzureRegion>" `
      -Name "<myNsg>" `
      -SecurityRules $rdp
    
  3. Usare Set-AzVirtualNetworkSubnetConfig per associare il gruppo di sicurezza di rete alla subnet. Le regole del gruppo di sicurezza di rete sono valide per tutte le risorse distribuite nella subnet.

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

Creare un'interfaccia di rete con rete accelerata

  1. Usare New-AzPublicIpAddress per creare un indirizzo IP pubblico. La macchina virtuale non richiede un indirizzo IP pubblico se non si accede da Internet, ma è necessario che l'indirizzo IP pubblico completi i passaggi per questo articolo.

    $publicIp = New-AzPublicIpAddress `
      -ResourceGroupName "<myResourceGroup>" `
      -Name "<myPublicIp>" `
      -Location "<myAzureRegion>" `
      -AllocationMethod Dynamic
    
  2. Usare New-AzNetworkInterface per creare un'interfaccia di rete con rete accelerata abilitata e assegnare l'indirizzo IP pubblico alla scheda di interfaccia di rete.

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

Creare una macchina virtuale e collegare l'interfaccia di rete

  1. Usare Get-Credential per impostare un nome utente e una password per la macchina virtuale e archiviarli nella $cred variabile .

    $cred = Get-Credential
    
  2. Usare New-AzVMConfig per definire una macchina virtuale con dimensioni di macchina virtuale che supportano la rete accelerata, come indicato in Rete accelerata di Windows. Per un elenco di tutte le dimensioni e le caratteristiche delle macchine virtuali Windows, vedere Dimensioni delle macchine virtuali Windows.

    $vmConfig = New-AzVMConfig -VMName "<myVm>" -VMSize "Standard_DS4_v2"
    
  3. Usare Set-AzVMOperatingSystem e Set-AzVMSourceImage per creare il resto della configurazione della macchina virtuale. L'esempio seguente crea una macchina virtuale Windows Server 2019 Datacenter:

    $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. Usare Add-AzVMNetworkInterface per collegare la scheda di interfaccia di rete creata in precedenza alla macchina virtuale.

    $vmConfig = Add-AzVMNetworkInterface -VM $vmConfig -Id $nic.Id
    
  5. Usare New-AzVM per creare la macchina virtuale con rete accelerata abilitata.

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

Verificare che il controller Ethernet sia installato

Dopo aver creato la macchina virtuale in Azure, connettersi alla macchina virtuale e verificare che il controller Ethernet sia installato in Windows.

  1. Nella portale di Azure cercare e selezionare macchine virtuali.

  2. Nella pagina Macchine virtuali selezionare la nuova macchina virtuale.

  3. Nella pagina Panoramica della macchina virtuale selezionare Connetti.

  4. Nella schermata Connetti selezionare RDP nativo.

  5. Nella schermata RDP nativoselezionare Scarica file RDP.

  6. Aprire il file RDP scaricato e quindi accedere con le credenziali immesse al momento della creazione della macchina virtuale.

  7. Nella macchina virtuale remota fare clic con il pulsante destro del mouse su Start e scegliere Gestione dispositivi.

  8. Nella finestra Gestione dispositivi espandere il nodo Schede di rete.

  9. Verificare che venga visualizzata la scheda Ethernet virtuale Mellanox ConnectX-4 Lx , come illustrato nell'immagine seguente:

    Scheda Ethernet della funzione virtuale Mellanox ConnectX-3, nuova scheda di rete per la rete accelerata, Gestione dispositivi

    La presenza dell'adattatore conferma che la rete accelerata è abilitata per la macchina virtuale.

Nota

Se l'adapter Mellanox non viene avviato, aprire un prompt dei comandi di amministratore nella macchina virtuale remota e immettere il comando seguente:

netsh int tcp set global rss = enabled

Gestire la rete accelerata nelle macchine virtuali esistenti

È possibile abilitare la rete accelerata in una macchina virtuale esistente. La macchina virtuale deve soddisfare i requisiti seguenti per supportare la rete accelerata:

  • Essere una dimensione supportata per la rete accelerata.
  • Essere un'immagine Azure Marketplace supportata.
  • Essere arrestata o deallocata prima di abilitare la rete accelerata in qualsiasi scheda di interfaccia di rete. Questo requisito si applica a tutte le singole macchine virtuali o macchine virtuali in un set di disponibilità o in un set di scalabilità di macchine virtuali di Azure.

Abilitare la rete accelerata in singole macchine virtuali o macchine virtuali nei set di disponibilità

  1. Arrestare o deallocare la macchina virtuale o, se un set di disponibilità, tutte le macchine virtuali nel set:

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

    Se la macchina virtuale è stata creata singolarmente senza un set di disponibilità, è necessario arrestare o deallocare solo la singola macchina virtuale per abilitare la rete accelerata. Se la macchina virtuale è stata creata con un set di disponibilità, è necessario arrestare o deallocare tutte le macchine virtuali nel set, in modo che le macchine virtuali vengano completate in un cluster che supporta la rete accelerata.

    Il requisito di arresto o deallocazione non è necessario per disabilitare la rete accelerata. I cluster che supportano la rete accelerata funzionano anche correttamente con le schede di interfaccia di rete che non usano la rete accelerata.

  2. Abilitare la rete accelerata nella scheda di interfaccia di rete della macchina virtuale:

    $nic = Get-AzNetworkInterface -ResourceGroupName "<myResourceGroup>" -Name "<myNic>"
    
    $nic.EnableAcceleratedNetworking = $true
    
    $nic | Set-AzNetworkInterface
    
  3. Riavviare la macchina virtuale o tutte le macchine virtuali nel set di disponibilità e verificare che la rete accelerata sia abilitata.

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

Abilitare la rete accelerata in set di scalabilità di macchine virtuali

Azure set di scalabilità di macchine virtuali è leggermente diverso, ma segue lo stesso flusso di lavoro.

  1. Arrestare le macchine virtuali:

    Stop-AzVmss -ResourceGroupName "<myResourceGroup>" -VMScaleSetName "<myScaleSet>"
    
  2. Aggiornare la proprietà Rete accelerata nella scheda di interfaccia di rete:

    $vmss = Get-AzVmss -ResourceGroupName "<myResourceGroup>" -VMScaleSetName "<myScaleSet>"
    
    $vmss.VirtualMachineProfile.NetworkProfile.NetworkInterfaceConfigurations[0].EnableAcceleratedNetworking = $true
    
    Update-AzVmss 
      -ResourceGroupName "<myResourceGroup>" `
      -VMScaleSetName "<myScaleSet>" `
      -VirtualMachineScaleSet $vmss
    
  3. set di scalabilità di macchine virtuali dispone di criteri di aggiornamento che applicano gli aggiornamenti tramite impostazioni automatiche, in sequenza o manuali. Impostare i criteri di aggiornamento su automatico in modo che le modifiche vengano immediatamente prelevate.

    $vmss.UpgradePolicy.Mode = "Automatic"
    
    Update-AzVmss 
      -ResourceGroupName "<myResourceGroup>" `
      -VMScaleSetName "<myScaleSet>" `
      -VirtualMachineScaleSet $vmss
    
  4. Riavviare il set di scalabilità:

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

Al termine del riavvio e degli aggiornamenti, la funzione virtuale (VF) viene visualizzata all'interno di macchine virtuali che usano un sistema operativo e una dimensione di macchina virtuale supportati.

Ridimensionare le macchine virtuali esistenti con rete accelerata

Le macchine virtuali con rete accelerata abilitata possono essere ridimensionate solo alle dimensioni che supportano anche la rete accelerata. Non è possibile ridimensionare una macchina virtuale con rete accelerata in un'istanza di macchina virtuale che non supporta la rete accelerata usando l'operazione di ridimensionamento. Usare invece il processo seguente per ridimensionare queste macchine virtuali:

  1. Arrestare e deallocare la macchina virtuale o tutte le macchine virtuali nel set di disponibilità o set di scalabilità di macchine virtuali.
  2. Disabilitare rete accelerata nella scheda di interfaccia di rete della macchina virtuale o in tutte le macchine virtuali nel set di disponibilità o set di scalabilità di macchine virtuali.
  3. Spostare la macchina virtuale o le macchine virtuali in una nuova dimensione che non supporta la rete accelerata e riavviarle.

Gestire la rete accelerata tramite il portale

Quando si crea una macchina virtuale nella portale di Azure, è possibile selezionare la casella di controllo Abilita rete accelerata nella scheda Rete della schermata Crea macchina virtuale. Se la macchina virtuale usa un sistema operativo supportato e le dimensioni della macchina virtuale per la rete accelerata, la casella di controllo viene selezionata automaticamente. Se la rete accelerata non è supportata, la casella di controllo non è selezionata e un messaggio spiega il motivo.

Nota

È possibile abilitare la rete accelerata durante la creazione di macchine virtuali del portale solo per Azure Marketplace sistemi operativi supportati. Per creare e abilitare la rete accelerata per una macchina virtuale con un'immagine del sistema operativo personalizzata, è necessario usare PowerShell o l'interfaccia della riga di comando di Azure.

Per abilitare o disabilitare la rete accelerata per una macchina virtuale esistente tramite il portale di Azure:

  1. Nella pagina portale di Azure per la macchina virtuale selezionare Rete dal menu a sinistra.
  2. Nella pagina Rete selezionare l'interfaccia di rete.
  3. Nella parte superiore della pagina Panoramica scheda di interfaccia di rete selezionare Modifica rete accelerata.
  4. Selezionare Automatico, Abilitato o Disabilitato e quindi selezionare Salva.

Per verificare se la rete accelerata è abilitata per una macchina virtuale esistente:

  1. Nella pagina portale di Azure per la macchina virtuale selezionare Rete dal menu a sinistra.
  2. Nella pagina Rete selezionare l'interfaccia di rete.
  3. Nella pagina Panoramica della scheda di interfaccia di rete, in Informazioni di base, prendere nota se la rete accelerata è impostata su Abilitato o Disabilitato.

Passaggi successivi