VMware Fling - ESXi Mac Leren dvFilter

Gepubliceerd op 26 augustus 2014 • 3 min leestijd • 539 woorden
MAC-leerfunctionaliteit lost prestatieproblemen op voor gebruiksscenario’s zoals geneste ESX. Deze ESX-extensie voegt functionaliteit toe aan ESX ter…

MAC-leerfunctionaliteit lost prestatieproblemen op voor gebruiksscenario’s zoals geneste ESX. Deze ESX-extensie voegt functionaliteit toe aan ESX ter ondersteuning van MAC-learning op vswitch-poorten. Voor de meeste gevallen van ESX-gebruik is MAC-leren niet vereist, omdat ESX precies weet welk MAC-adres door een VM zal worden gebruikt. Voor toepassingen zoals het uitvoeren van geneste ESX, d.w.z. ESX als gast-VM op ESX, is de situatie echter anders. Omdat een ESX VM pakketten voor een groot aantal verschillende MAC-adressen kan uitzenden, vereist deze momenteel dat de vswitch-poort in de “promiscue modus” wordt gezet. Dat zal er echter toe leiden dat er te veel pakketten worden afgeleverd in de ESX VM, omdat het ertoe leidt dat alle pakketten op de vswitch door alle ESX VM’s worden gezien. Wanneer meerdere ESX-VM’s worden uitgevoerd, kan dit leiden tot zeer aanzienlijke CPU-overhead en merkbare verslechtering van de netwerkdoorvoer. Het combineren van MAC-leren met de “promiscue modus” lost dit probleem op.

De MAC-leerfunctionaliteit wordt geleverd als een snelle VMkernel-extensie die per poort kan worden ingeschakeld. Het werkt op oudere standaardswitches en op virtuele gedistribueerde switches.

De MAC-leermodule heeft een paar opmerkelijke beperkingen:

  • Eenmaal geleerd, is een MAC-adres nooit verouderd. Voor zeer langlopende ESX-VM’s met een hoog verloop in gebruikte MAC-adressen (bijvoorbeeld via geneste gast-VM’s) kan dit een probleem zijn. Als de MAC-tabel van een bepaalde poort vol is, kan de MAC-leerfunctionaliteit de prestaties niet langer verbeteren.
  • MAC-leren wordt niet toegepast op multicast-verkeer en multicast-verkeer zal geen prestatieverbetering zien.

Lees voor meer informatie deze blog van William Lam.

Systeemvereisten

  • vSphere ESXi 5.0, 5.1 of 5.5 host

Instructies

Voor meer details kunt u deze blogpost van William Lam raadplegen

De installatie bestaat uit twee delen:

Download en installeer de VIB op alle ESXi-hosts Activeer de functionaliteit per VM-basis 1. Om de VIB te installeren, kunt u de volgende ESXCLI-opdracht uitvoeren als u de VIB naar een ESXi-datastore hebt geüpload:

esxcli software vib install -v /vmfs/volumes/[DATASTORE-NAME]/vmware-esx-dvfilter-maclearn-0.1-ESX-5.0.vib -f

Een herstart van het systeem is niet nodig en u kunt bevestigen dat dvFilter succesvol is geïnstalleerd door de volgende opdracht uit te voeren:

/sbin/summarize-dvfilter

Je zou de dvfilter-maclearn-module geladen moeten zien, zoals te zien in de onderstaande schermafbeelding:

2. Om dvFilter te laten werken, moet u twee geavanceerde virtuele machine-instellingen toevoegen aan elk van uw geneste ESXi-VM’s. Deze instelling geldt per vNIC, wat betekent dat u N-vermeldingen moet toevoegen als u N-vNIC’s op uw geneste ESXi-VM hebt.

ethernet0.filter4.name=dvfilter-maclearn ethernet0.filter4.onFailure=failOpen

Deze configuratie kan online worden uitgevoerd zonder de geneste ESXi-VM’s opnieuw op te starten als u gebruikmaakt van de vSphere API. Een andere manier om dit toe te voegen is door uw geneste ESXi-VM af te sluiten en de “legacy” vSphere C# Client of vSphere Web Client te gebruiken, of voor degenen die weten hoe ze het .VMX-bestand moeten toevoegen en opnieuw laden, aangezien daar het configuratiebestand op schijf wordt bewaard.

Als u normaal gesproken geneste ESXi-VM’s inricht met twee vNIC’s, heeft u twee overeenkomstige vermeldingen. Om te bevestigen dat de instellingen zijn geladen, kunnen we de opdracht summary-dvfilter opnieuw uitvoeren. Nu zouden we onze virtuele machine samen met elke vNIC-instantie in de uitvoer moeten zien staan.  

U kunt de ESXi Mac Learning dvFilter hier downloaden

Zie ook

    Follow me