Skapa en virtuell Windows-dator med accelererat nätverk med Azure PowerShell

I den här självstudien får du lära dig hur du skapar en virtuell Windows-dator (VM) med accelererat nätverk.

Anteckning

Information om hur du använder accelererat nätverk med en virtuell Linux-dator finns i skapa en virtuell Linux-dator med accelererat nätverk.

Accelererat nätverk möjliggör Single Root I/O-virtualisering (SR-IOV) till en virtuell dator, vilket avsevärt förbättrar nätverkets prestanda. Med den här högpresterande sökvägen kringgås värden från datasökvägen, vilket minskar svarstiden, jitter och processoranvändningen för de mest krävande nätverksbelastningarna på VM-typer som stöds. Följande diagram illustrerar hur två virtuella datorer kommunicerar med och utan accelererat nätverk:

Kommunikation mellan virtuella Azure-datorer med och utan accelererat nätverk

Utan accelererat nätverk måste all nätverks trafik i och från den virtuella datorn passera värden och den virtuella växeln. Den virtuella växeln tillhandahåller all princip tillämpning, till exempel nätverks säkerhets grupper, åtkomst kontrol listor, isolering och andra virtualiserade nätverks tjänster till nätverks trafik.

Anteckning

Mer information om virtuella växlar finns i Hyper-V virtuell växel.

Med accelererat nätverk anländer nätverks trafiken till den virtuella datorns nätverks gränssnitt (NIC) och vidarebefordras sedan till den virtuella datorn. Alla nätverks principer som den virtuella växeln gäller avlastas nu och används i maskin vara. Eftersom principen tillämpas i maskin vara kan NÄTVERKSKORTet vidarebefordra nätverks trafik direkt till den virtuella datorn. NÄTVERKSKORTet kringgår värden och den virtuella växeln, medan den upprätthåller all princip som tillämpas på värden.

Fördelarna med accelererat nätverk gäller endast den virtuella dator som den är aktive rad på. För bästa resultat bör du aktivera den här funktionen på minst två virtuella datorer som är anslutna till samma virtuella Azure-nätverk. När du kommunicerar via virtuella nätverk eller ansluter lokalt har den här funktionen minimal påverkan på den totala svars tiden.

Fördelar

  • Lägre latens/högre paket per sekund (PPS): att ta bort den virtuella växeln från data Sök vägen tar bort de tid paket som ägnas åt värden för princip bearbetning. Det ökar också antalet paket som kan bearbetas inuti den virtuella datorn.

  • Reducerade Darr: bearbetning av virtuell växel beror på den mängd princip som måste tillämpas. Det beror också på arbets belastningen för den processor som utför bearbetningen. Genom att avlasta den tvingande principen till maskin varan tas den bort om du levererar paket direkt till den virtuella datorn. Avlastning tar också bort värd-till-VM-kommunikation, alla program avbrott och alla kontext växlar.

  • Minskad processor användning: om du kringgår den virtuella växeln på värden går det snabbare att bearbeta nätverks trafiken.

Operativsystem som stöds

Följande distributioner stöds direkt från Azure-galleriet:

  • Windows Server 2019 Datacenter
  • Windows Server 2016 Datacenter
  • Windows Server 2012 R2 Datacenter

Begränsningar och restriktioner

Virtuella dator instanser som stöds

Accelererat nätverk stöds i de flesta generella syftes-och beräknings optimerade instans storlekar med 2 eller fler virtuella processorer. På instanser som stöder hyperthreading stöds accelererat nätverk på VM-instanser med 4 eller fler virtuella processorer.

Stöd för accelererat nätverk finns i den enskilda dokumentationen för virtuella dator storlekar .

Anpassade avbildningar

Om du använder en anpassad avbildning och din avbildning har stöd för accelererat nätverk måste du se till att du har de driv rutiner som krävs för Mellanox ConnectX-3-och ConnectX-4 LX-nätverkskort på Azure.

Regioner

Accelererat nätverk är tillgängligt i alla globala Azure-regioner och Azure Government molnet.

Aktivera accelererat nätverk på en virtuell dator som körs

En virtuell dator storlek som stöds utan accelererat nätverk kan bara aktivera funktionen när den stoppas och frigörs.

Distribution via Azure Resource Manager

Virtuella datorer (klassiska) kan inte distribueras med accelererat nätverk.

Skapa virtuell dator med portalen

Även om den här artikeln innehåller steg för att skapa en virtuell dator med accelererat nätverk med Azure PowerShell, kan du också använda Azure Portal för att skapa en virtuell dator som möjliggör accelererat nätverk. När du skapar en virtuell dator i portalen väljer du fliken nätverk på sidan skapa en virtuell dator . På den här fliken finns ett alternativ för accelererat nätverk. Om du har valt ett operativ system som stöds och storleken på den virtuella datornär det här alternativet automatiskt inställt . Annars är alternativet inställt på av och Azure visar anledningen till varför det inte går att aktivera.

Anteckning

Endast operativ system som stöds kan aktive ras via portalen. Om du använder en anpassad avbildning och din avbildning har stöd för accelererat nätverk skapar du en virtuell dator med CLI eller PowerShell.

När du har skapat den virtuella datorn kan du kontrol lera om det accelererade nätverket är aktiverat. Följ dessa anvisningar:

  1. Gå till Azure Portal för att hantera dina virtuella datorer. Sök efter och välj virtuella datorer.

  2. I listan virtuell dator väljer du den nya virtuella datorn.

  3. Välj nätverk i meny raden VM.

I nätverks gränssnitts information, bredvid den accelererade nätverks etiketten, visar portalen antingen inaktive rad eller aktive rad för status för accelererat nätverk.

Skapa virtuell dator med PowerShell

Innan du fortsätter installerar du Azure PowerShell version 1.0.0 eller senare. Kör för att hitta den version som är installerad Get-Module -ListAvailable Az . Om du behöver installera eller uppgradera installerar du den senaste versionen av AZ-modulen från PowerShell-galleriet. Logga in på ett Azure-konto med Connect-AzAccounti en PowerShell-session.

Ersätt exempel parameter namn med dina egna värden i följande exempel. Exempel på parameter namn som ingår myResourceGroup, myNic och myVM.

Skapa ett virtuellt nätverk

  1. Skapa en resursgrupp med New-AzResourceGroup. Följande kommando skapar en resurs grupp med namnet myResourceGroup på platsen för den centrala platsen:

    New-AzResourceGroup -Name "myResourceGroup" -Location "centralus"
    
  2. Skapa en under näts konfiguration med New-AzVirtualNetworkSubnetConfig. Följande kommando skapar ett undernät med namnet undernät:

    $subnet = New-AzVirtualNetworkSubnetConfig `
        -Name "mySubnet" `
        -AddressPrefix "192.168.1.0/24"
    
  3. Skapa ett virtuellt nätverk med New-AzVirtualNetwork, med under nätet undernät.

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

Skapa en nätverkssäkerhetsgrupp

  1. Skapa en regel för nätverks säkerhets grupp med New-AzNetworkSecurityRuleConfig.

    $rdp = New-AzNetworkSecurityRuleConfig `
        -Name 'Allow-RDP-All' `
        -Description 'Allow RDP' `
        -Access Allow `
        -Protocol Tcp `
        -Direction Inbound `
        -Priority 100 `
        -SourceAddressPrefix * `
        -SourcePortRange * `
        -DestinationAddressPrefix * `
        -DestinationPortRange 3389
    
  2. Skapa en nätverks säkerhets grupp med New-AzNetworkSecurityGroup och tilldela den tillåtelse-RDP-all säkerhets regeln. Förutom den tillåtna-RDP-all- regeln innehåller nätverks säkerhets gruppen flera standard regler. En standard regel inaktiverar all inkommande åtkomst från Internet. När den har skapats tilldelas nätverks säkerhets gruppen den tillåtna-RDP-all- regeln, så att du kan fjärrans luta till den virtuella datorn.

    $nsg = New-AzNetworkSecurityGroup `
        -ResourceGroupName myResourceGroup `
        -Location centralus `
        -Name "myNsg" `
        -SecurityRules $rdp
    
  3. Koppla nätverks säkerhets gruppen till under nätet under nät med set-AzVirtualNetworkSubnetConfig. Regeln i nätverks säkerhets gruppen är effektiv för alla resurser som distribueras i under nätet.

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

Skapa ett nätverks gränssnitt med accelererat nätverk

  1. Skapa en offentlig IP-adress med hjälp av New-AzPublicIpAddress. En offentlig IP-adress är onödig om du inte planerar att komma åt den virtuella datorn från Internet. Men det krävs för att slutföra stegen i den här artikeln.

    $publicIp = New-AzPublicIpAddress `
        -ResourceGroupName myResourceGroup `
        -Name 'myPublicIp' `
        -location centralus `
        -AllocationMethod Dynamic
    
  2. Skapa ett nätverks gränssnitt med New-AzNetworkInterface med accelererat nätverk aktiverat och tilldela den offentliga IP-adressen till nätverks gränssnittet. I följande exempel skapas ett nätverks gränssnitt med namnet myNic i under nätet undernät för det virtuella myVnet -nätverket, och tilldelar den offentliga myPublicIp -IP-adressen:

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

Skapa en virtuell dator och bifoga nätverks gränssnittet

  1. Ange autentiseringsuppgifterna för din virtuella dator till $cred variabeln med Get-Credential, som gör att du kan logga in:

    $cred = Get-Credential
    
  2. Definiera din virtuella dator med New-AzVMConfig. Följande kommando definierar en virtuell dator med namnet myVM med en VM-storlek som har stöd för accelererat nätverk (Standard_DS4_v2):

    $vmConfig = New-AzVMConfig -VMName "myVm" -VMSize "Standard_DS4_v2"
    

    En lista över alla storlekar och egenskaper för virtuella datorer finns i storlekar för virtuella Windows-datorer.

  3. Skapa resten av din VM-konfiguration med set-AzVMOperatingSystem och set-AzVMSourceImage. Följande kommando skapar en virtuell Windows Server 2016-dator:

    $vmConfig = Set-AzVMOperatingSystem -VM $vmConfig `
        -Windows `
        -ComputerName "myVM" `
        -Credential $cred `
        -ProvisionVMAgent `
        -EnableAutoUpdate
    $vmConfig = Set-AzVMSourceImage -VM $vmConfig `
        -PublisherName "MicrosoftWindowsServer" `
        -Offer "WindowsServer" `
        -Skus "2016-Datacenter" `
        -Version "latest"
    
  4. Bifoga nätverks gränssnittet som du skapade tidigare med Add-AzVMNetworkInterface:

    $vmConfig = Add-AzVMNetworkInterface -VM $vmConfig -Id $nic.Id
    
  5. Skapa din virtuella dator med New-AzVM.

    New-AzVM -VM $vmConfig -ResourceGroupName "myResourceGroup" -Location "centralus"
    

Bekräfta att Ethernet-styrenheten är installerad på den virtuella Windows-datorn

När du har skapat den virtuella datorn i Azure ansluter du till den virtuella datorn och kontrollerar att Ethernet-styrenheten är installerad i Windows.

  1. Gå till Azure Portal för att hantera dina virtuella datorer. Sök efter och välj virtuella datorer.

  2. I listan virtuell dator väljer du den nya virtuella datorn.

  3. På sidan VM-översikt, om status för den virtuella datorn visas som skapa, väntar du tills Azure har skapat den virtuella datorn. Status kommer att ändras till att köras när den virtuella datorn har skapats.

  4. I verktygsfältet översikt över virtuell dator väljer du Anslut > RDP > Download RDP-fil.

  5. Öppna. RDP-filen och logga sedan in på den virtuella datorn med de autentiseringsuppgifter som du angav i avsnittet skapa en virtuell dator och bifoga nätverks gränssnittet . Om du aldrig har anslutit till en virtuell Windows-dator i Azure, se Anslut till virtuell dator.

  6. När fjärrskrivbordssessionen för den virtuella datorn visas högerklickar du på Start-knappen i Windows och väljer Enhetshanteraren.

  7. I fönstret Enhetshanteraren expanderar du noden nätverkskort .

  8. Bekräfta att Ethernet-adaptern för den virtuella funktionen Mellanox ConnectX-3 visas, som du ser i följande bild:

    Mellanox ConnectX – 3 virtuell funktion Ethernet-kort, nytt nätverkskort för accelererat nätverk, Enhetshanteraren

Accelererat nätverk har nu Aktiver ATS för den virtuella datorn.

Anteckning

Om Mellanox-adaptern inte kan starta öppnar du en administratörs kommando tolk i fjärrskrivbordssessionen och anger följande kommando:

netsh int tcp set global rss = enabled

Aktivera accelererat nätverk på befintliga virtuella datorer

Om du har skapat en virtuell dator utan accelererat nätverk kan du aktivera den här funktionen på en befintlig virtuell dator. Den virtuella datorn måste ha stöd för accelererat nätverk genom att uppfylla följande krav, som också beskrivs ovan:

  • Den virtuella datorn måste ha en storlek som stöds för accelererat nätverk.
  • Den virtuella datorn måste vara en Azure Gallery-avbildning som stöds (och kernel-version för Linux).
  • Alla virtuella datorer i en tillgänglighets uppsättning eller en virtuell dators skalnings uppsättning måste stoppas eller frigöras innan du aktiverar accelererat nätverk på något nätverkskort.

Enskilda virtuella datorer och virtuella datorer i en tillgänglighets uppsättning

  1. Stoppa eller frigör den virtuella datorn eller, om det finns en tillgänglighets uppsättning, alla virtuella datorer i uppsättningen:

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

    Anteckning

    När du skapar en virtuell dator individuellt, utan en tillgänglighets uppsättning, behöver du bara stoppa eller frigöra den enskilda virtuella datorn för att aktivera accelererat nätverk. Om den virtuella datorn skapades med en tillgänglighets uppsättning måste du stoppa eller frigöra alla virtuella datorer som finns i tillgänglighets uppsättningen innan du aktiverar accelererat nätverk på något av nätverkskorten, så att de virtuella datorerna slutar på ett kluster som har stöd för accelererat nätverk. Kravet på att stoppa eller frigöra är onödigt om du inaktiverar accelererat nätverk, eftersom kluster som har stöd för accelererat nätverk också fungerar bra med nätverkskort som inte använder accelererat nätverk.

  2. Aktivera accelererat nätverk på den virtuella datorns nätverkskort:

    $nic = Get-AzNetworkInterface -ResourceGroupName "myResourceGroup" `
        -Name "myNic"
    
    $nic.EnableAcceleratedNetworking = $true
    
    $nic | Set-AzNetworkInterface
    
  3. Starta om den virtuella datorn eller, om den finns i en tillgänglighets uppsättning, alla virtuella datorer i uppsättningen och bekräfta att accelererat nätverk är aktiverat:

    Start-AzVM -ResourceGroup "myResourceGroup" `
        -Name "myVM"
    

Skaluppsättning för virtuella datorer

En skalnings uppsättning för en virtuell dator är något annorlunda, men den följer samma arbets flöde.

  1. Stoppa de virtuella datorerna:

    Stop-AzVmss -ResourceGroupName "myResourceGroup" `
        -VMScaleSetName "myScaleSet"
    
  2. Uppdatera egenskapen för accelererat nätverk under nätverks gränssnittet:

    $vmss = Get-AzVmss -ResourceGroupName "myResourceGroup" `
        -VMScaleSetName "myScaleSet"
    
    $vmss.VirtualMachineProfile.NetworkProfile.NetworkInterfaceConfigurations[0].EnableAcceleratedNetworking = $true
    
    Update-AzVmss -ResourceGroupName "myResourceGroup" `
        -VMScaleSetName "myScaleSet" `
        -VirtualMachineScaleSet $vmss
    
  3. Ställ in de uppdateringar som tillämpas automatiskt så att ändringarna omedelbart hämtas:

    $vmss.UpgradePolicy.Mode = "Automatic"
    
    Update-AzVmss -ResourceGroupName "myResourceGroup" `
        -VMScaleSetName "myScaleSet" `
        -VirtualMachineScaleSet $vmss
    

    Anteckning

    En skalnings uppsättning har VM-uppgraderingar som tillämpar uppdateringar med tre olika inställningar: automatisk, rullande och manuell. I dessa instruktioner är principen inställd på automatisk, så skalnings uppsättningen hämtar ändringarna direkt efter att den startats om.

  4. Starta om skalnings uppsättningen:

    Start-AzVmss -ResourceGroupName "myResourceGroup" `
        -VMScaleSetName "myScaleSet"
    

Vänta tills uppgraderingarna har startats om. När uppgraderingen är färdig visas den virtuella funktionen (VF) i den virtuella datorn. Kontrol lera att du använder ett operativ system och en virtuell dator storlek som stöds.

Ändra storlek på befintliga virtuella datorer med accelererat nätverk

Om en virtuell dator har accelererat nätverk kan du bara ändra storlek på den till en virtuell dator som har stöd för accelererat nätverk.

Det går inte att ändra storlek på en virtuell dator med accelererat nätverk till en VM-instans som inte stöder accelererat nätverk med åtgärden ändra storlek. I stället kan du ändra storlek på en av de virtuella datorerna:

  1. Stoppa eller frigör den virtuella datorn. Stoppa eller frigör alla virtuella datorer i tillgänglighets uppsättningen eller skalnings uppsättningen för en tillgänglighets uppsättning eller skalnings uppsättning.

  2. Inaktivera accelererat nätverk på NÄTVERKSKORTet för den virtuella datorn. För en tillgänglighets uppsättning eller skalnings uppsättning inaktiverar du accelererat nätverk på nätverkskorten för alla virtuella datorer i tillgänglighets uppsättningen eller skalnings uppsättningen.

  3. När du har inaktiverat accelererat nätverk flyttar du den virtuella datorn, tillgänglighets uppsättningen eller skalnings uppsättningen till en ny storlek som inte stöder accelererat nätverk och startar sedan om dem.