Delen via


Wat is Software Load Balancer (SLB) voor SDN?

Van toepassing op: Azure Stack HCI, versies 23H2 en 22H2; Windows Server 2022, Windows Server 2019, Windows Server 2016

Cloudserviceproviders (CSP's) en ondernemingen die SDN (Software Defined Networking) implementeren, kunnen Software Load Balancer (SLB) gebruiken om het netwerkverkeer van tenants en tenantklants gelijkmatig te verdelen over virtuele netwerkresources. Met SLB kunnen meerdere servers dezelfde workload hosten, wat hoge beschikbaarheid en schaalbaarheid biedt.

Software-Load Balancer kunnen een multitenant, geïntegreerde rand bieden door te integreren met SDN-technologieën zoals RAS-gateway, datacenterfirewall en Route Reflector.

Notitie

Multitenancy voor VLAN's wordt niet ondersteund door netwerkcontroller. U kunt echter VLAN's met SLB gebruiken voor door serviceproviders beheerde workloads, zoals de datacenterinfrastructuur en high-densitywebservers.

Met Software Load Balancer kunt u de mogelijkheden voor taakverdeling uitschalen met behulp van virtuele SLB-machines (VM's) op dezelfde Hyper-V-rekenservers die u voor uw andere VM-workloads gebruikt. Daarom biedt Software Load Balancer ondersteuning voor het snel maken en verwijderen van taakverdelingseindpunten, zoals vereist voor CSP-bewerkingen. Daarnaast ondersteunt Software Load Balancer tientallen gigabytes per cluster, biedt een eenvoudig inrichtingsmodel en is eenvoudig uit- en in te schalen.

Zie Software-Load Balancer voor SDN beheren voor meer informatie over het beheren van Software Load Balancer-beleid met behulp van Windows Admin Center.

Wat omvat Software Load Balancer?

Software Load Balancer bevat de volgende mogelijkheden:

  • Taakverdelingsservices van laag 4 (L4) voor verkeer van noord/zuid en oost/west TCP/UDP.

  • Taakverdeling van openbaar netwerk en intern netwerkverkeer.

  • Ondersteuning voor dynamische IP-adressen (DIPs) op virtuele VLAN's (Local Area Networks) en op virtuele netwerken die u maakt met behulp van Hyper-V-netwerkvirtualisatie.

  • Ondersteuning voor status-test.

  • Klaar voor cloudschaal, inclusief uitschaalmogelijkheden en omhoog schalen voor multiplexers en hostagents.

Zie Software Load Balancer-functies in dit artikel voor meer informatie.

Hoe Software Load Balancer werkt

Software Load Balancer werkt door het toewijzen van virtuele IP-adressen (VIP's) aan DIPs die deel uitmaken van een cloudserviceset met resources in het datacenter.

VIP's zijn één IP-adressen die toegang tot een groep load balance VM's bieden. VIP's zijn bijvoorbeeld IP-adressen die beschikbaar zijn op internet, zodat tenants en tenantklanten verbinding kunnen maken met tenantresources in het clouddatacenter.

Spanningsdips zijn de IP-adressen van de VM's van een groep met taakverdeling achter het VIP-lid. Spanningsdips worden binnen de cloudinfrastructuur voor de tenant resources toegewezen.

VIP's bevinden zich in de SLB Multiplexer (MUX). De MUX bestaat uit een of meer VM's. Netwerkcontroller biedt elke MUX met elke VIP en elke MUX op zijn beurt Border Gateway Protocol (BGP) gebruikt voor elke VIP routers op het fysieke netwerk als een /32 adverteren route. BGP laat de fysieke netwerkrouters naar:

  • Leer dat een VIP beschikbaar is op elke MUX, zelfs als de MUXes zich op verschillende subnetten in een Laag 3-netwerk bevinden.

  • De belasting voor elke VIP verdeeld over alle beschikbare MUXes met gelijke kosten Multipath (ECMP)-routering.

  • Automatisch detecteren van een MUX fout of verwijdering en verkeer verzenden naar de mislukte MUX stoppen.

  • De belasting van de mislukte of verwijderde MUX verdeeld over de goede MUXes.

Wanneer openbaar verkeer van internet komt, onderzoekt de SLB MUX het verkeer, dat het VIP als bestemming bevat, en wordt het verkeer toegewezen en herschreven, zodat het bij een afzonderlijke DIP aankomt. Voor binnenkomend netwerkverkeer wordt deze transactie uitgevoerd in een proces in twee stappen dat wordt gesplitst tussen de MUX-VM's en de Hyper-V-host waar de doel-DIP zich bevindt:

  1. Taakverdeling - MUX gebruikt het VIP en selecteer een DIP, wordt het pakket ingekapseld en verzendt het verkeer naar de Hyper-V-host waar het DIP zich bevindt.

  2. Network Address Translation (NAT): de Hyper-V-host verwijdert inkapseling van het pakket, vertaalt het VIP naar een DIP, wijs de poorten opnieuw toe en stuurt het pakket door naar de DIP-VM.

De MUX weet hoe VIP's moeten worden toegewezen aan de juiste DIPs vanwege taakverdelingsbeleid dat u definieert met behulp van netwerkcontroller. Deze regels omvatten protocol, front-endpoort, back-endpoort en distributie-algoritme (5, 3 of 2 tuples).

Wanneer tenant-VM's reageren en uitgaand netwerkverkeer terugsturen naar internet of externe tenantlocaties, omdat de NAT wordt uitgevoerd door de Hyper-V-host, omzeilt het verkeer de MUX en gaat rechtstreeks naar de randrouter vanaf de Hyper-V-host. Dit proces MUX bypass wordt directe Server retourneren (DSR) genoemd.

En na de initiële netwerkverkeer tot stand is gebracht, het inkomend netwerkverkeer de MUX SLB omzeilt volledig.

In de volgende afbeelding voert een clientcomputer een DNS-query uit voor het IP-adres van een SharePoint-site van een bedrijf, in dit geval een fictief bedrijf met de naam Contoso. Het volgende proces vindt plaats:

  1. De DNS-server retourneert het VIP 107.105.47.60 naar de client.

  2. De client stuurt een HTTP-aanvraag naar het VIP.

  3. Het fysieke netwerk heeft meerdere paden beschikbaar zijn voor het VIP zich op een MUX bereiken. ECMP elke router weg gebruikt voor het verzamelen van de volgende segment van het pad tot de aanvraag is ontvangen op een MUX.

  4. De MUX die de aanvraag ontvangt geconfigureerde beleid controleert en ziet er zijn twee Spanningsdips beschikbaar is, 10.10.10.5 en 10.10.20.5 op een virtueel netwerk om af te handelen van de aanvraag voor het VIP 107.105.47.60

  5. De MUX selecteert DIP 10.10.10.5 en kapselt de pakketten in met behulp van VXLAN, zodat deze kan worden verzonden naar de host met het DIP met behulp van het fysieke netwerkadres van de host.

  6. De host het ingekapselde pakket ontvangt en controleert deze. De inkapseling wordt verwijderd en het pakket wordt herschreven, zodat de bestemming nu DIP 10.10.10.5 is in plaats van het VIP, en verzendt vervolgens het verkeer naar DIP VM.

  7. De aanvraag bereikt de Contoso SharePoint-site in Server Farm 2. De server genereert een reactie en verzendt dit naar de client via een eigen IP-adres als de bron.

  8. De host onderschept het uitgaande pakket in de virtuele switch, die onthoudt dat de client, nu de bestemming, de oorspronkelijke aanvraag bij het VIP heeft ingediend. De host herschrijft de bron van het pakket om het VIP te zijn, zodat de client het DIP-adres niet ziet.

  9. De host stuurt het pakket rechtstreeks door naar de standaardgateway voor het fysieke netwerk dat de standaardrouteringstabel gebruikt om het pakket door te sturen naar de client, die uiteindelijk het antwoord ontvangt.

Softwaretaakverdelingsproces.

Laden van netwerktaakverdeling interne datacenter-verkeer

Bij taakverdeling van netwerkverkeer intern naar het datacenter, bijvoorbeeld tussen tenantresources die worden uitgevoerd op verschillende servers en lid zijn van hetzelfde virtuele netwerk, voert de virtuele Hyper-V-switch waarmee de virtuele machines zijn verbonden NAT uit.

Met interne taakverdeling voor verkeer wordt de eerste aanvraag verzonden naar en verwerkt door de MUX, die het juiste DIP selecteert en vervolgens het verkeer doorstuurt naar het DIP. Vanaf dat moment het tot stand gebrachte verkeersstroom de MUX omzeilt en rechtstreeks vanuit de virtuele Machine gaat naar VM.

Statuscontroles

Software-Load Balancer bevat statustests om de status van de netwerkinfrastructuur te valideren, waaronder:

  • Test TCP-poort

  • Test voor HTTP-poort en URL

In tegenstelling tot een traditionele load balancer appliance waar de test is afkomstig van het toestel en via de kabel wordt verzonden naar het DIP, van de test SLB afkomstig zijn op de host waar het DIP bevindt en gaat rechtstreeks vanuit de hostagent SLB naar het DIP, verder distribueren van het werk van de hosts.

Infrastructuur voor software Load Balancer

Voordat u Software Load Balancer kunt configureren, moet u eerst netwerkcontroller en een of meer SLB MUX-VM's implementeren.

Daarnaast moet u de Azure Stack HCI-hosts configureren met de virtuele Hyper-V-switch met SDN en ervoor zorgen dat de SLB-hostagent wordt uitgevoerd. De routers die de hosts bedienen, moeten ECMP-routering en Border Gateway Protocol (BGP) ondersteunen en ze moeten worden geconfigureerd om BGP-peeringaanvragen van de SLB MUXes te accepteren.

In de volgende afbeelding ziet u een overzicht van de SLB-infrastructuur.

Software Load Balancer infrastructuur.

De volgende secties bevatten meer informatie over deze elementen van de software-Load Balancer-infrastructuur.

Netwerkcontroller

Netwerkcontroller host de SLB Manager en voert de volgende acties uit voor Software Load Balancer:

  • Verwerkt SLB-opdrachten die binnenkomen via de Northbound-API vanuit Windows Admin Center, System Center, Windows PowerShell of een andere netwerkbeheertoepassing.

  • Berekent beleid voor distributie naar Azure Stack HCI-hosts en SLB MUXes.

  • Biedt de status van de Software Load Balancer-infrastructuur.

U kunt Windows Admin Center of Windows PowerShell gebruiken om netwerkcontroller en andere SLB-infrastructuur te installeren en configureren.

SLB MUX

De MUX SLB binnenkomend netwerkverkeer verwerkt en VIP's toegewezen aan Spanningsdips, wordt het verkeer wordt doorgestuurd naar het juiste DIP. Elke MUX gebruikt ook BGP VIP routes publiceren naar randrouters. BGP Keep Alive meldt MUXes wanneer een MUX mislukt, waardoor actieve MUXes de belasting opnieuw kunnen distribueren in het geval van een MUX-fout. Dit biedt in wezen taakverdeling voor de load balancers.

Hostagent SLB

Wanneer u Software Load Balancer implementeert, moet u Windows Admin Center, System Center, Windows PowerShell of een andere beheertoepassing gebruiken om de SLB-hostagent op elke hostserver te implementeren.

De Hostagent SLB luistert naar beleidsupdates SLB van de netwerkcontroller. Daarnaast programmat de hostagent regels voor SLB in de virtuele SdN-switches van Hyper-V die zijn geconfigureerd op de lokale computer.

Virtuele Hyper-V-switch met SDN

Een virtuele switch is alleen compatibel met SLB als de VFP-extensie (Virtual Filtering Platform) is ingeschakeld op de virtuele switch. Dit wordt automatisch gedaan door de PowerShell-scripts voor sdn-implementatie, Windows Admin Center implementatiewizard en System Center Virtual Machine Manager (SCVMM).

Zie voor informatie over het inschakelen van VFP op virtuele switches, de Windows PowerShell-opdrachten Get-VMSystemSwitchExtension en inschakelen VMSwitchExtension.

De virtuele Hyper-V-switch met SDN voert de volgende acties uit voor SLB:

  • Het gegevenspad verwerkt voor SLB.

  • Binnenkomend netwerkverkeer koppelen ontvangt van de MUX.

  • De MUX voor uitgaande netwerkverkeer verzending aan de router met DSR omzeilt.

BGP-router

De BGP-router voert de volgende acties uit voor software-Load Balancer:

  • Routes voor binnenkomend verkeer op de MUX ECMP gebruiken.

  • Uitgaand netwerkverkeer maakt gebruik van de route geleverd door de host.

  • Luistert naar updates van de route voor VIP's van SLB MUX.

  • Verwijdert uit de draaihoek SLB SLB MUXes als actief houden mislukt.

Functies voor software Load Balancer

In de volgende secties worden enkele van de functies en mogelijkheden van Software Load Balancer beschreven.

Kernfunctionaliteit

  • SLB biedt laag 4-taakverdelingsservices voor verkeer van noord/zuid en oost/west TCP/UDP.

  • U kunt SLB gebruiken in een netwerk op basis van Hyper-V-netwerkvirtualisatie.

  • U kunt SLB gebruiken met een op VLAN gebaseerd netwerk voor DIP-VM's die zijn verbonden met een virtuele Hyper-V-switch met SDN.

  • Eén SLB-exemplaar kan meerdere tenants verwerken.

  • SLB en DIP ondersteunen een schaalbaar retourpad met lage latentie, zoals geïmplementeerd door DSR.

  • SLB-functies wanneer u ook Switch Embedded Teaming (SET) of Single Root Input/Output Virtualization (SR-IOV) gebruikt.

  • SLB biedt ondersteuning voor Internet Protocol versie 6 (IPv6) en versie 4 (IPv4).

  • Voor scenario's met site-naar-site-gateways biedt SLB NAT-functionaliteit waarmee alle site-naar-site-verbindingen één openbaar IP-adres kunnen gebruiken.

Schaal en prestaties

  • Klaar voor cloudschaal, inclusief mogelijkheden voor uitschalen en omhoog schalen voor MUXes en hostagents.

  • Eén actieve SLB Manager-netwerkcontrollermodule kan acht MUX-exemplaren ondersteunen.

Hoge beschikbaarheid

  • U kunt SLB implementeren op meer dan twee knooppunten in een actieve/actieve configuratie.

  • MUXes kunnen worden toegevoegd en verwijderd uit de groep MUX zonder enige impact op de service SLB. Hierdoor blijft de SLB-beschikbaarheid behouden wanneer afzonderlijke MUXes worden gepatcht.

  • Afzonderlijke MUX-exemplaren hebben een uptime van 99 procent.

  • Statuscontrolegegevens zijn beschikbaar voor beheerentiteiten.

Volgende stappen

Zie ook voor gerelateerde informatie: