Vad är Software Load Balancer (SLB) för SDN?

Gäller för: Azure Stack HCI, versionerna 22H2 och 21H2; Windows Server 2022, Windows Server 2019, Windows Server 2016

Molntjänstleverantörer (CSP:er) och företag som distribuerar SDN (Software Defined Networking) kan använda Software Load Balancer (SLB) för att jämnt distribuera klient- och klientkunders nätverkstrafik mellan virtuella nätverksresurser. Med SLB kan flera servrar vara värdar för samma arbetsbelastning, vilket ger hög tillgänglighet och skalbarhet.

Programvara Load Balancer kan ge en enhetlig gräns för flera klientorganisationer genom att integrera med SDN-tekniker som RAS Gateway, Datacenter Firewall och Route Reflector.

Anteckning

Flera klientorganisationer för VLAN stöds inte av nätverksstyrenheten. Du kan dock använda VLAN med SLB för tjänstleverantörshanterade arbetsbelastningar, till exempel datacenterinfrastruktur och webbservrar med hög densitet.

Med hjälp av Software Load Balancer kan du skala ut dina belastningsutjämningsfunktioner med hjälp av virtuella SLB-datorer (VM) på samma Hyper-V-beräkningsservrar som du använder för dina andra VM-arbetsbelastningar. Därför stöder Software Load Balancer snabb skapande och borttagning av belastningsutjämningsslutpunkter som krävs för CSP-åtgärder. Dessutom stöder Software Load Balancer tiotals gigabyte per kluster, tillhandahåller en enkel etableringsmodell och är enkel att skala ut och in.

Information om hur du hanterar principer för programvara Load Balancer med Windows Admin Center finns i Hantera Load Balancer för SDN.

Vad inkluderar Software Load Balancer?

Programvara Load Balancer innehåller följande funktioner:

  • Layer 4 (L4) belastningsutjämningstjänster för nord/syd och öst/väst TCP/UDP-trafik.

  • Belastningsutjämning för offentligt nätverk och intern nätverkstrafik.

  • Stöd för dynamiska IP-adresser (DIP: er) på virtuella lokala nätverk (VLAN) och i virtuella nätverk som du skapar med hjälp av Hyper-V-nätverksvirtualisering.

  • Stöd för hälsoavsökning.

  • Redo för molnskala, inklusive utskalningskapacitet och uppskalningsfunktion för multiplexer och värdagenter.

Mer information finns i Software Load Balancer-funktioner i den här artikeln.

Så här fungerar Load Balancer för programvara

Programvara Load Balancer fungerar genom att mappa virtuella IP-adresser (VIP) till DIP:er som ingår i en molntjänstuppsättning med resurser i datacentret.

VIP:er är enskilda IP-adresser som ger offentlig åtkomst till en pool med belastningsutjämning av virtuella datorer. VIP:er är till exempel IP-adresser som exponeras på Internet så att klienter och klientkunder kan ansluta till klientresurser i molndatacentret.

DIP:er är IP-adresserna för de virtuella medlemsdatorerna i en belastningsutjämningspool bakom VIP:en. DIP:er tilldelas klientresurserna i molninfrastrukturen.

VIP finns i SLB Multiplexer (MUX). MUX består av en eller flera virtuella datorer. Nätverksstyrenheten tillhandahåller varje MUX med varje VIP, och varje MUX i sin tur använder Border Gateway Protocol (BGP) för att annonsera varje VIP till routrar i det fysiska nätverket som en /32-väg. Med BGP kan de fysiska nätverksroutrarna:

  • Lär dig att en VIP är tillgänglig på varje MUX, även om MUXes finns i olika undernät i ett Layer 3-nätverk.

  • Sprid belastningen för varje VIP över alla tillgängliga MUX med hjälp av ECMP-routning (Equal Cost Multi-Path).

  • Identifiera automatiskt ett MUX-fel eller borttagning och sluta skicka trafik till det misslyckade MUX.

  • Sprid belastningen från det misslyckade eller borttagna MUX över felfria MUXes.

När offentlig trafik kommer från Internet undersöker SLB MUX trafiken, som innehåller VIP som mål, och mappar och skriver om trafiken så att den anländer till en enskild DIP. För inkommande nätverkstrafik utförs den här transaktionen i en tvåstegsprocess som delas mellan de virtuella MUX-datorerna och Hyper-V-värden där mål-DIP finns:

  1. Belastningsutjämning – MUX använder VIP för att välja ett DIP, kapslar in paketet och vidarebefordrar trafiken till Hyper-V-värden där DIP finns.

  2. NAT (Network Address Translation) – Hyper-V-värden tar bort inkapsling från paketet, översätter VIP till en DIP, mappar om portarna och vidarebefordrar paketet till den virtuella DIP-datorn.

MUX vet hur du mappar VIP:er till rätt DIP:er på grund av belastningsutjämningsprinciper som du definierar med hjälp av nätverksstyrenheten. Dessa regler omfattar protokoll, klientdelsport, serverdelsport och distributionsalgoritm (5, 3 eller 2 tupplar).

När virtuella klientdatorer svarar och skickar utgående nätverkstrafik tillbaka till Internet eller fjärrklientplatser, eftersom NAT utförs av Hyper-V-värden, kringgår trafiken MUX och går direkt till gränsroutern från Hyper-V-värden. Den här MUX-förbikopplingsprocessen kallas DSR (Direct Server Return).

Och när det första nätverkstrafikflödet har upprättats kringgår den inkommande nätverkstrafiken SLB MUX helt.

I följande bild utför en klientdator en DNS-fråga för IP-adressen för en företags SharePoint-webbplats – i det här fallet ett fiktivt företag med namnet Contoso. Följande process sker:

  1. DNS-servern returnerar VIP 107.105.47.60 till klienten.

  2. Klienten skickar en HTTP-begäran till VIP:en.

  3. Det fysiska nätverket har flera tillgängliga sökvägar för att nå vip-adressen som finns på valfritt MUX. Varje router längs vägen använder ECMP för att välja nästa segment av sökvägen tills begäran kommer till ett MUX.

  4. Det MUX som tar emot begäran kontrollerar konfigurerade principer och ser att det finns två tillgängliga DIP:er, 10.10.10.5 och 10.10.20.5, i ett virtuellt nätverk för att hantera begäran till VIP 107.105.47.60

  5. MUX väljer DIP 10.10.10.5 och kapslar in paketen med VXLAN så att det kan skicka det till värden som innehåller DIP med värdens fysiska nätverksadress.

  6. Värden tar emot det inkapslade paketet och inspekterar det. Den tar bort inkapslingen och skriver om paketet så att målet nu är DIP 10.10.10.5 i stället för VIP och skickar sedan trafiken till den virtuella DIP-datorn.

  7. Begäran når Contoso SharePoint-webbplatsen i Servergrupp 2. Servern genererar ett svar och skickar det till klienten med sin egen IP-adress som källa.

  8. Värden fångar upp det utgående paketet i den virtuella växeln som kommer ihåg att klienten, nu målet, gjorde den ursprungliga begäran till VIP:en. Värden skriver om paketets källa till VIP så att klienten inte ser DIP-adressen.

  9. Värden vidarebefordrar paketet direkt till standardgatewayen för det fysiska nätverket som använder sin standardroutningstabell för att vidarebefordra paketet till klienten, som så småningom tar emot svaret.

Process för belastningsutjämning av programvara.

Belastningsutjämning av intern datacentertrafik

När belastningsutjämning av nätverkstrafik internt i datacentret, till exempel mellan klientresurser som körs på olika servrar och är medlemmar i samma virtuella nätverk, utför den virtuella Hyper-V-växeln som de virtuella datorerna är anslutna till NAT.

Med intern belastningsutjämning för trafik skickas den första begäran till och bearbetas av MUX, som väljer lämplig DIP och dirigerar sedan trafiken till DIP. Från och med då kringgår det etablerade trafikflödet MUX och går direkt från virtuell dator till virtuell dator.

Hälsotillståndsavsökningar

Programvara Load Balancer innehåller hälsoavsökningar för att verifiera nätverksinfrastrukturens hälsotillstånd, inklusive följande:

  • TCP-avsökning till port

  • HTTP-avsökning till port och URL

Till skillnad från en traditionell lastbalanserare där avsökningen kommer från apparaten och färdas över kabeln till DIP, kommer SLB-avsökningen från värden där DIP finns och går direkt från SLB-värdagenten till DIP, vilket ytterligare distribuerar arbetet över värdarna.

Programvara Load Balancer infrastruktur

Innan du kan konfigurera Software Load Balancer måste du först distribuera nätverksstyrenheten och en eller flera virtuella SLB MUX-datorer.

Dessutom måste du konfigurera Azure Stack HCI-värdarna med den SDN-aktiverade virtuella Hyper-V-växeln och se till att SLB-värdagenten körs. Routrarna som betjänar värdarna måste ha stöd för ECMP-routning och Border Gateway Protocol (BGP), och de måste konfigureras för att acceptera BGP-peeringbegäranden från SLB MUXes.

Följande bild innehåller en översikt över SLB-infrastrukturen.

Programvara Load Balancer infrastruktur.

Följande avsnitt innehåller mer information om dessa element i programvarans Load Balancer infrastruktur.

Nätverksstyrenhet

Nätverksstyrenheten är värd för SLB Manager och utför följande åtgärder för Software Load Balancer:

  • Bearbetar SLB-kommandon som kommer in via Northbound API från Windows Admin Center, System Center, Windows PowerShell eller något annat program för nätverkshantering.

  • Beräknar principen för distribution till Azure Stack HCI-värdar och SLB MUXes.

  • Ger hälsostatus för infrastrukturen software Load Balancer.

Du kan använda Windows Admin Center eller Windows PowerShell för att installera och konfigurera nätverksstyrenhet och annan SLB-infrastruktur.

SLB MUX

SLB MUX bearbetar inkommande nätverkstrafik och mappar VIP:er till DIP:er och vidarebefordrar sedan trafiken till rätt DIP. Varje MUX använder också BGP för att publicera VIP-vägar till gränsroutrar. BGP Keep Alive meddelar MUXes när ett MUX misslyckas, vilket gör att aktiva MUXes kan omdistribuera belastningen vid ett MUX-fel. Detta ger i princip belastningsutjämning för lastbalanserarna.

SLB-värdagent

När du distribuerar Software Load Balancer måste du använda Windows Admin Center, System Center, Windows PowerShell eller ett annat hanteringsprogram för att distribuera SLB-värdagenten på varje värdserver.

SLB-värdagenten lyssnar efter SLB-principuppdateringar från nätverksstyrenheten. Dessutom regler för värdagentprogram för SLB till de SDN-aktiverade virtuella Hyper-V-växlar som är konfigurerade på den lokala datorn.

SDN-aktiverad virtuell Hyper-V-växel

För att en virtuell växel ska vara kompatibel med SLB måste VFP-tillägget (Virtual Filtering Platform) vara aktiverat på den virtuella växeln. Detta görs automatiskt av PowerShell-skript för SDN-distribution, Windows Admin Center distributionsguiden och distribution av System Center Virtual Machine Manager (SCVMM).

Information om hur du aktiverar VFP på virtuella växlar finns i Windows PowerShell kommandona Get-VMSystemSwitchExtension och Enable-VMSwitchExtension.

Den SDN-aktiverade virtuella Hyper-V-växeln utför följande åtgärder för SLB:

  • Bearbetar datasökvägen för SLB.

  • Tar emot inkommande nätverkstrafik från MUX.

  • Kringgår MUX för utgående nätverkstrafik och skickar den till routern med hjälp av DSR.

BGP-router

BGP-routern utför följande åtgärder för Software Load Balancer:

  • Dirigerar inkommande trafik till MUX med hjälp av ECMP.

  • För utgående nätverkstrafik använder den väg som tillhandahålls av värden.

  • Lyssnar efter routningsuppdateringar för VIP:er från SLB MUX.

  • Tar bort SLB MUXes från SLB-rotationen om Keep Alive misslyckas.

Programvarufunktioner Load Balancer

I följande avsnitt beskrivs några av funktionerna i Software Load Balancer.

Kärnfunktioner

  • SLB tillhandahåller layer 4-belastningsutjämningstjänster för nord/syd och öst/väst TCP/UDP-trafik.

  • Du kan använda SLB i ett Hyper-V-nätverksvirtualiseringsbaserat nätverk.

  • Du kan använda SLB med ett VLAN-baserat nätverk för virtuella DIP-datorer som är anslutna till en SDN-aktiverad virtuell Hyper-V-växel.

  • En SLB-instans kan hantera flera klienter.

  • SLB och DIP stöder en skalbar returväg med låg svarstid, som implementeras av DSR.

  • SLB-funktioner när du också använder Switch Embedded Teaming (SET) eller SR-IOV (Single Root Input/Output Virtualization).

  • SLB innehåller stöd för Internet Protocol version 6 (IPv6) och version 4 (IPv4).

  • För scenarier med plats-till-plats-gateway tillhandahåller SLB NAT-funktioner för att göra det möjligt för alla plats-till-plats-anslutningar att använda en enda offentlig IP-adress.

Skala och prestanda

  • Redo för molnskala, inklusive utskalnings- och uppskalningsfunktioner för MUXes och värdagenter.

  • En aktiv SLB Manager-nätverksstyrenhetsmodul kan stödja åtta MUX-instanser.

Hög tillgänglighet

  • Du kan distribuera SLB till fler än två noder i en aktiv/aktiv konfiguration.

  • MUX kan läggas till och tas bort från MUX-poolen utan att påverka SLB-tjänsten. Detta upprätthåller SLB-tillgängligheten när enskilda MUX-filer korrigeras.

  • Enskilda MUX-instanser har en drifttid på 99 procent.

  • Hälsoövervakningsdata är tillgängliga för hanteringsentiteter.

Nästa steg

Relaterad information finns i även: