Megosztás:


Az Azure gyorsított hálózatkezelésének áttekintése

Az Azure gyorsított hálózatkezelés jelentősen javítja a virtuális gépek hálózatkezelési teljesítményét a késés és a processzorhasználat csökkentésével. Ez a cikk bemutatja a Gyorsított Hálózatok előnyeit, korlátait és a támogatott konfigurációkat. Az Accelerated Networking lehetővé teszi az egy gyökér I/O virtualizációt (SR-IOV) a támogatott virtuális gépek típusain, jelentősen javítva a hálózati teljesítményt. Ez a nagyteljesítményű adatútvonal megkerüli a gazdagépet, csökkentve ezzel a késleltetést, a jittert és a CPU-használatot a legigényesebb hálózati munkaterhelések esetén.

Az alábbi diagram azt szemlélteti, hogyan kommunikál egymással két virtuális gép gyorsított hálózat nélkül és annak használatával.

Képernyőkép, amely az Azure VM-ek közötti kommunikációt mutatja felgyorsított hálózatkezeléssel és anélkül.

Without Accelerated Networking esetén az összes hálózati forgalom, amely be- és kilép a virtuális gépből, áthalad a gazda és a virtuális kapcsoló között. A virtuális kapcsoló biztosítja az összes szabályzat érvényesítését a hálózati forgalomhoz. A házirendek közé tartoznak a hálózati biztonsági csoportok, a hozzáférésvezérlési listák, az izoláció és más hálózati virtualizált szolgáltatások.

Accelerated Networking használatával a VM hálózati interfészére (NIC) érkező hálózati forgalom közvetlenül a VM-hez kerül továbbításra. Az Accelerated Networking leterheli az összes hálózati házirendet, amit a virtuális kapcsoló alkalmazott, és azokat hardveresen alkalmazza. Mivel a hardver alkalmazza a szabályokat, a hálózati kártya közvetlenül továbbíthatja a hálózati forgalmat a virtuális gépre. Az NIC megkerüli a gazdagépet és a virtuális kapcsolót, miközben megtartja az összes szabályzatot, amelyet a gazdagépben alkalmazott.

Benefits

Gyorsított Hálózatépítés a következő előnyökkel jár:

  • Alacsonyabb késleltetés és több csomag másodpercenként. Az adatútvonalból történő virtuális kapcsoló eltávolítása megszünteti az időt, amit a csomagok a gazdagépben töltenek a házirend feldolgozásához. Ez növeli a VM által feldolgozható csomagok számát is.

  • Csökkentett jitter. A virtuális kapcsolók feldolgozási ideje függ az alkalmazandó szabályok mennyiségétől és attól, hogy a feldolgozást végző CPU milyen terheléssel dolgozik. Az irányelvek végrehajtásának hardverre történő áthelyezése megszünteti ezt a változékonyságot azáltal, hogy a csomagokat közvetlenül a virtuális géphez juttatja el. Az offloading eltávolítja a host és a VM közötti kommunikációt, valamint az összes szoftveres megszakítást és kontextusváltást.

  • Csökkentett CPU kihasználtság. A hostban található virtuális kapcsoló megkerülése csökkenti a CPU igénybevételét a hálózati forgalom feldolgozásakor.

Korlátozások és megkötések

  • Az Accelerated Networking előnyei csak arra a virtuális gépre vonatkoznak, amely engedélyezi ezt.

  • A legjobb eredmény elérése érdekében engedélyezze a Gyorsított Hálózatot legalább két virtuális gépen ugyanabban az Azure virtuális hálózatban. Ennek a funkciónak minimális hatása van a késleltetésre, amikor virtuális hálózatok között kommunikál vagy helyben kapcsolódik.

  • Nem lehet engedélyezni a gyorsított hálózatot egy futó virtuális gépen. Az "Gyorsított Hálózatkezelés" egy támogatott virtuális gépen csak akkor engedélyezhető, ha a virtuális gép leállított és deallokált állapotban van.

  • Nem lehet virtuális gépeket (klasszikus) telepíteni gyorsított hálózati kapcsolattal az Azure Resource Manageren keresztül.

  • Az Azure platform nem frissíti a Mellanox NIC- vagy MANA-illesztőprogramokat a virtuális gépen. Linuxot és FreeBSD-t futtató virtuális gépek esetén naprakésznek kell lennie a disztribúció által kínált legújabb kernelfrissítésekkel. Windows rendszerű virtuális gépek esetén alkalmazza a frissített illesztőprogramokat az NVIDIA támogatási oldaláról, ha problémákat tapasztal a Marketplace-lemezképhez szállított vagy egyéni rendszerképre alkalmazott illesztőprogrammal kapcsolatban. A legújabb MANA-illesztőprogramok a MANA dokumentációs oldalán találhatók Windows rendszeren

Támogatott régiók

A gyorsított hálózatkezelés elérhető minden globális Azure régióban és az Azure kormányzati felhőben.

Támogatott operációs rendszerek

A Windows alábbi verziói támogatják a gyorsított hálózatkezelést az összes adapter esetében:

  • Windows Server 2022
  • Windows Server 2019
  • Windows Server 2016
  • Windows 11

Az alábbi Linux és FreeBSD disztribúciók az Azure Marketplace kínálatában már eleve támogatják a Gyorsított Hálózatkezelést.

  • Azure Linux 3
  • Ubuntu 24.04 LTS
  • Ubuntu 22.04 LTS
  • Red Hat Enterprise Linux 10.0
  • Red Hat Enterprise Linux 9.6
  • AlmaLinux 10.0
  • AlmaLinux 9.6
  • Rocky Linux 10.0
  • Rocky Linux 9.6
  • SUSE Linux Enterprise Server 16
  • SUSE Linux Enterprise Server 15 SP7
  • SUSE Linux Enterprise Server 15 SP6
  • Debian 13 "Trixie"
  • Debian 12 "Bookworm"
  • Oracle Linux UEK R8
  • Oracle Linux UEK R7

A nem támogatott Linux-disztribúciók vagy egyéni kerneleket használó felhasználók számára javasoljuk a Linux Kernel 6.12 vagy újabb verzióját, amely a kernel.org

Note

Az újabb MANA-funkciók aktív fejlesztés alatt állnak, és a Linux disztribúciós szállítói a Microsofttal együttműködve frissítik a kerneleket a felsőbb rétegbeli módosításokkal. A frissítések gyakorisága a terjesztési szállítótól függően változik. Minél újabb a disztribúció és a kernel, annál valószínűbb, hogy a legújabb frissítéseket használja.

Támogatott VM példányok

A legtöbb általános célú és számítási optimalizált VM példányméret, amelynél kettő vagy több vCPU van, támogatja a gyorsított hálózatépítést. A hyperthreadinget támogató példányok esetén azok a VM-példányok, amelyek négy vagy több vCPU-val rendelkeznek, támogatják a Gyorsított Hálózatot.

Annak ellenőrzéséhez, hogy egy VM-méret támogatja-e a Gyorsított Hálózatot, tekintse meg az Azure virtuális gép méretek oldalt.

Lehet közvetlenül lekérdezni azoknak a VM SKU-knak a listáját, amelyek támogatják a Gyorsított Hálózatépítést, az Azure CLI az vm list-skus parancs segítségével.

az vm list-skus \
  --location westus \
  --all true \
  --resource-type virtualMachines \
  --query '[].{size:size, name:name, acceleratedNetworkingEnabled: capabilities[?name==`AcceleratedNetworkingEnabled`].value | [0]}' \
  --output table

Note

Bár az NC és NV méretek megjelennek a parancs kimenetében, ezek a méretek nem támogatják a gyorsított hálózatot. Az NC vagy NV virtuális gépeken az Accelerated Networking engedélyezése nincs hatással.

Egyéni VM képek

Ha saját képet használ, amely támogatja a gyorsított hálózatkezelést, győződjön meg arról, hogy megfelel a következő követelményeknek.

Eszköz- és illesztőprogram támogatás

Minden olyan egyedi kép, amely támogatja a Gyorsított Hálózatépítést, tartalmazzon olyan illesztőprogramokat, amelyek lehetővé teszik a Single Root I/O Virtualization használatát az Azure platformokon használt hálózati interfészkártyák (NIC) esetében. Ez a hardverlista tartalmazza az NVIDIA ConnectX-3, ConnectX-4 Lx, ConnectX-5 eszközöket, valamint a Microsoft Azure Network Adapter (MANA)-t.

Dinamikus kötés és virtuális függvény visszavonása

Az Accelerated Networking megköveteli, hogy a vendég operációs rendszer képes legyen megfelelően kezelni a virtuális funkció dinamikus eltávolítását vagy hozzáadását. Olyan helyzetekben, mint a gazdagép karbantartása vagy az élő migráció, a virtuális funkció dinamikus visszavonásra kerül, majd a karbantartási esemény után helyreállításra kerül. Továbbá, az alkalmazásoknak biztosítaniuk kell, hogy a szintetikus eszközhöz csatlakoznak, és nem a virtuális funkcióhoz, hogy fenntartsák a hálózati kapcsolatot ezek alatt az események alatt.

További információt az alkalmazás kötési követelményeiről A gyorsított hálózat működése Linux és FreeBSD virtuális gépekben részben talál.

Konfigurálja a meghajtókat, hogy ne legyenek kezeltek

A gyorsított hálózatkezeléshez konfigurálni kell az NVIDIA-illesztőprogramokat nem felügyelt eszközként a hálózati beállításokban. A cloud-init 23.2-es vagy újabb verzióját használó képek automatikusan a megfelelő hálózati konfigurációt alkalmazzák a gyorsított hálózatkezelés támogatásához a kiépítés során. Határozottan javasoljuk, hogy kerülje egyidejű hálózati interfész kezelő eszközök (például ifupdown és networkd) használatát az egyéni rendszerképeken, és ne futtassa közvetlenül a dhcpclient programot több interfészen.

Győződjön meg arról, hogy az Azure-vm-utils 0.6.0-s vagy újabb verziója telepítve van. Ellenőrizze, hogy létezik-e /usr/lib/udev/rules.d/10-azure-unmanaged-sriov.rules .
Ha nem érhető el a disztribúció számára, akkor használjon egy egyéni udev-szabályt /etc/udev/rules.d/10-azure-unmanaged-sriov.rules a következő tartalommal:

# Azure VMs with accelerated networking may have MANA, mlx4, or mlx5 SR-IOV devices which are transparently bonded to a synthetic
# hv_netvsc device.  Mark devices with the 0x800 bit set as unmanaged devices:
#   AZURE_UNMANAGED_SRIOV=1 for 01-azure-unmanaged-sriov.network
#   ID_NET_MANAGED_BY=unmanaged for systemd-networkd >= 255
#   NM_UNMANAGED=1 for NetworkManager
#
# ATTR{flags}=="0x?[89ABCDEF]??" checks the 0x800 bit.
SUBSYSTEM=="net", ACTION!="remove", DRIVERS=="mana|mlx4_core|mlx5_core", ATTR{flags}=="0x?[89ABCDEF]??", ENV{AZURE_UNMANAGED_SRIOV}="1", ENV{ID_NET_MANAGED_BY}="unmanaged", ENV{NM_UNMANAGED}="1"

A hálózati forgalom az Accelerated Networking adatútvonalat használja.

Az NVIDIA illesztőprogramok esetén: Ellenőrizze, hogy a csomagok a VF interfészen keresztül áramlanak.

MANA illesztőprogramhoz: Ellenőrizze, hogy a forgalom áthalad-e a MANA-n