Hoe u de prestaties van virtuele machines kunt optimaliseren voor NFV-taakverdeling

Categorieën bekijken

Hoe u de prestaties van virtuele machines kunt optimaliseren voor NFV-taakverdeling

Beschrijving #

Network Function Virtualization , ook wel NFV genoemd , is een nieuw paradigma dat het gebruik van netwerkapparaten in virtuele omgevingen bevordert om flexibiliteit en eenvoudiger onderhoud te realiseren. Elke toepassing moet echter afzonderlijk worden bekeken om te bepalen of een hardware- of een virtuele oplossing de beste optie is, afhankelijk van de vereisten, het budget en de beschikbare middelen.

In dit artikel bespreken we de verschillen tussen netwerkhardware-apparaten , definiëren we enkele VM-tuningoptimalisaties voor netwerken en load balancing, en vergelijken we de prestaties van hypervisors van verschillende leveranciers.

Prestatieverschillen tussen hardware en virtuele apparaten #

Wanneer we een nieuwe load balancer moeten implementeren, is de belangrijkste technische reden om voor een hardware -appliance te kiezen het behalen van maximale prestaties en een zo laag mogelijke netwerklatentie . Een virtuele appliance biedt echter meer flexibiliteit en een eenvoudiger beheer van de infrastructuur.

In een ideale wereld, waarbij een virtuele machine wordt geïmplementeerd met alle bronnen die beschikbaar zijn op de host, kunnen we in de virtuele machine tussen 96% en 97% van de CPU van de host, tussen 70% en 90% van de netwerkprestaties van de host en tussen 40% en 70% van de opslag-I/O-prestaties van de host behalen. Dit alles is te danken aan de overhead van de hypervisor.

Het benchmarken van virtuele machines is geen gemakkelijke opgave, omdat de verschillende mogelijke configuraties kunnen leiden tot een gebrek aan nauwkeurige cijfers. Bovendien zijn er te veel factoren die de prestaties van een virtuele machine kunnen beïnvloeden, zoals:

De hypervisorleverancier en de gebruikte versie
De hostoptimalisaties
Toegewezen bronnen per VM
Aantal VM's dat per host draait
Netwerkverkeer, CPU of schijf-I/O-belasting in de hypervisor
Geconfigureerde netwerkstuurprogramma's
Gedeelde bronnen tussen VM's
Uitgevoerde taak (routering, inhoudswisseling, SSL-offload, enz.)
onder andere…

Dit artikel is gewijd aan netwerkoptimalisatie voor load balancing in virtuele omgevingen. Het richt zich daarom op CPU-belasting en netwerk-I/O-afstemming om het maximale uit uw load balancing VM's te halen. De prestaties van schijfopslag zijn niet zo cruciaal, aangezien dit soort NFV-toepassingen geen hoge schijf-I/O-belasting vereist.

VM-optimalisaties voor netwerken en load balancing #

Om uw NFV (en specifiek voor load balancing) in uw virtuele infrastructuur te verbeteren, raden wij u aan de volgende instructies te volgen.

1. Moderne en bijgewerkte hardware . De nieuwste hardwareplatforms bevatten al diverse processorversnellings- en softwaretechnieken op BIOS- of firmwareniveau om betere prestaties te leveren bij virtualisatie. Het is over het algemeen raadzaam om de firmware en BIOS up-to-date te houden om nieuwe functies te activeren en bekende problemen te voorkomen.

2. Selecteer de hypervisor van uw voorkeur . De hypervisor die op de host draait, is van groot belang voor de netwerkprestaties. Ons benchmarkonderzoek naar de meest gebruikte hypervisors wordt in de volgende sectie beschreven. Het geeft u een breed overzicht van de meest geoptimaliseerde virtuele platforms voor netwerkprestaties en load balancing. Daarnaast bieden sommige leveranciers in hun betaalde oplossingen diverse prestatieverbeteringen en schaalbaarheidsfuncties die voor NFV-oplossingen ingeschakeld zouden moeten worden.

3. Bijgewerkte hypervisor . Door de host up-to-date te houden, profiteert u van alle optimalisatiefuncties en verbeteringen van de resources die in de hypervisor zijn doorgevoerd, evenals van de verholpen beveiligingslekken.

4. Schakel Intel VT-x of AMD-V in . Nieuwere Intel- en AMD-processors beschikken over het algemeen over deze versnellingsoptie, maar deze is niet standaard ingeschakeld in de BIOS. Zodra u er zeker van bent dat deze optie in de BIOS is ingeschakeld, moet u deze ook op VM-niveau inschakelen.

5. Speciaal netwerk voor onderhoud . Tijdens de netwerkconfiguratie van een virtuele machine is het belangrijk om een ​​geïsoleerd netwerk te creëren voor productiediensten en voor onderhoudstaken in een intern privénetwerk met de host, dat kan worden gebruikt voor verplaatsingen (het verplaatsen van workloads tussen hosts). Dit privénetwerk is sneller en veiliger, en heeft bovendien geen invloed op uw productiediensten tijdens onderhoud.

6. Selecteer verbeterde netwerkstuurprogramma's . Zorg ervoor dat u het best presterende virtuele netwerkstuurprogramma gebruikt voor elke hypervisor en voor uw specifieke netwerkkaart. Door het meest geschikte en bijgewerkte netwerkstuurprogramma voor uw host te gebruiken, verlaagt u de latentie en presteert u beter bij hoge netwerkbelastingen.

7. Toegewezen vCPU . Vanuit prestatieoogpunt is het beter om minder vCPU's aan een bepaalde VM toe te wijzen, maar deze wel specifiek aan die VM toe te wijzen. Door CPU-bronnen niet te delen, worden contextwisselingen en wachttijden op de host verminderd en wordt voorkomen dat de werklast van de ene VM naar de andere wordt overgedragen.

8. Geoptimaliseerde sjablonen, klaar voor implementatie . Het is belangrijk om geoptimaliseerde sjablonen te hebben voor de specifieke hypervisor en versie, inclusief de juiste tools, drivers en een besturingssysteem dat is afgestemd op netwerken aan de gastzijde. Een sjabloon dat direct klaar is voor implementatie verhoogt de efficiëntie, het beheer en bespaart tijd.

Prestaties tussen hypervisors #

Op basis van de benchmarks voor load balancing en netwerkbelasting in ons lab kunnen we stellen dat nieuwere versies van VMware ESXi beter presteren dan Xen Server, Hyper-V of andere hypervisors op de markt.

Het definiëren van de juiste toewijzing van middelen voor RELIANOID virtuele apparaten #

Rekening houdend met het feit dat we volgens onze laboratoriumtest de meest prestatiegerichte hypervisor op de markt gebruiken, kunnen we een optimale prestatie verzamelen RELIANOID Load Balancer virtuele omgevingen van 7% tot 20% van straf dan dezelfde fysieke configuratie.

Per toegewezen vCPU kunnen we het volgende schatten:

~18k HTTP-verzoeken per seconde met LSLB HTTP-farm.
~220k HTTP-verzoeken per seconde met LSLB L4XNAT-farm.

Als sessiepersistentie is ingeschakeld, moeten we zorg dragen voor de geheugenbronnen van de virtuele machine:

512 MB RAM per virtuele service of farm geïnstantieerd in de VM.
512 MB extra RAM per virtuele service of farm met meer dan 10,000 gebruikers.

Wat betreft de opslag, RELIANOID Virtuele apparaten reserveren 8 GB aan schijfruimte. De grootte ervan kan indien nodig worden aangepast, maar in de meeste gevallen zal dit voldoende zijn.

📄 Download dit document in PDF-formaat #

    E-MAIL: *

    Mogelijk gemaakt door BetterDocs