Allt du behöver veta om applikationsbelastningsutjämnare

Den här bloggen ger dig djupgående kunskaper om en applikationsbelastningsutjämnare. Det visar skapandet och användningen av NLB till din applikations fördel.

Ju fler ledtrådar en detektiv har, desto lättare blir det för honom att lösa ärendet. Det är precis hur en lastbalanserare fungerar. Ju mer information en lastbalanserare har, desto bättre fungerar den. I den här bloggen ska jag prata om Application Load Balancer och hur den distribuerar inkommande trafik genom att få större tillgång till paketrubriker, HTTPS och HTTPS-detaljer.

Ämnen som behandlas:



Vad är applikationsbelastningsutjämnare?

Jag är säker på att ni har hört talas om OSI-modellen. Det är en 7-lags arkitektur med varje lager som utför en speciell uppgift för att överföra data över hela världen. Dessa lager inkluderar - Fysiskt lager, Data Link Layer, Network Layer, Transport lager, Session lager, presentation Layer och Application Layer. Application Load Balancer fungerar på det sjunde lagret av OSI-modellen som namnet antyder. denhar förmågan att undersöka innehållet på applikationsnivå och dirigera trafiken baserat på denna förvärvade information. Innehåll på applikationsnivå inkluderar paketdetaljer, HTTP- och HTTPS-detaljer. Detta gör routningen enklare, snabbare och mycket effektivare. Det är en av de mest använda .

vad är ett namnområde c ++

Working Of Application Load Balancer

Application Load Balancer består av lyssnare och regler . När en klient gör en begäran erkänner lyssnaren det. Reglerna är riktlinjer som styr routningen av varje klientförfrågan när den hörs av lyssnaren. Reglerna består av tre komponenter - Målgrupp , Prioritet och Betingelser . Målgrupper består av registrerade mål (servrar där trafiken ska dirigeras). Varje målgrupp dirigerar förfrågningar till ett eller flera registrerade mål, till exempel EC2-instanser, med det protokoll och portnummer som du anger. Så i grund och botten, när lyssnaren får begäran, går den genom prioritetsordning för att bestämma vilken regel som ska tillämpas, analysera reglerna och utifrån villkor bestämmer vilken målgrupp som får begäran.

ALB - Applikationsbelastningsutjämnare - Edureka

Du kan alltid lägga till eller ta bort mål från din belastningsutjämnare vid behov, utan att störa det totala flödet av förfrågningarna till din applikation. ELB skalar din belastningsutjämnare dynamiskt, dvs. när trafiken på din applikation förändras över tid och håller din applikation förberedd för olika situationer.

Funktioner som gör det bättre än klassisk belastningsbalans

Innehållsbaserad routing: Application Load Balancer måste komma åt HTTP-rubriker och därmed dirigera trafiken baserat på den.

Stöd för behållarbaserad applikation: Med det kraftfulla konceptet containerisering packar de flesta användare sina mikrotjänster i behållare och är värd för dem i EC2-instanser. Detta gör att en enda EC2-instans kan köra flera tjänster. Application Load Balancer stöder dessa containerbaserade applikationer. En instans kan vara värd för flera containrar och lyssna på flera portar, bakom samma målgrupp. Det utför också finkorniga hälsokontroller på hamnnivå.

Bättre mätvärden: Application Load Balancer utför hälsokontroller per port och genererar också en rapport. Hälsokontroll anger ett antal acceptabla HTTP-svar. Dessa hälsokontroller åtföljs också av detaljerade felkoder.

Banbaserad routing: Application Load Balancer stöder vägbaserad och värdbaserad routing vilket inte är fallet med Classic load balancer. YDu kan dirigera förfrågningar till flera domäner med en enda belastningsutjämnare.

Registrera IP-adress och Lambda-funktioner: Förutom att registrera EC2-instanser kan du också registrera IP-adresser och Lambda-funktioner till ditt mål. Och följaktligenDu kan också registrera mål som ligger utanför VPC.

Tillhandahåller ytterligare protokoll och arbetsbelastningar:

Application Load Balancer tillhandahåller ytterligare två protokoll - HTTP / 2 och WebSocket

HTTPS / 2: Detta protokoll stöder multiplexerade förfrågningar över en enda anslutning. Detta minskar nätverkstrafiken.

WebSocket: Med detta protokoll kan du skapa en långvarig TCP-anslutning mellan klienten och servern. Detta protokoll är mycket effektivare jämfört med de äldre metoderna.

Demo: Skapa en applikationsbelastningsbalans och visa att den fungerar

Låt oss förstå Application Load Balancer bättre genom att skapa en och använda den. I denna demo ska jag skapa två EC2-instanser, distribuera Nginx-webbservern på dem båda med olika HTML-utdata (lätt att skilja mellan dem), skapa en applikationsbelastningsutjämnare, registrera dessa två instanser till den belastningsutjämnaren och kontrollera om webbservern som distribuerats på instanserna kan nås från belastningsutjämnarens DNS. Låt oss börja.

Steg 1: och anslut dina instanser till antingen Putty eller cmder.

Steg 2: Installera Nginx-webbservern på båda instanserna. Utför följande kommandon för installation av Nginx:

$ sudo apt-get update $ sudo apt install nginx $ sudo ufw applista $ sudo ufw tillåt 'Nginx HTTP' $ sudo ufw status

Kopiera instansernas offentliga IP och klistra in den i en webbläsare som en URL för att kontrollera om Nginx har installerats.

Steg 3 : Ändra HTML-utdata från Nginx-webbservern för att undvika förvirring mellan distributionerna i båda instanserna.

$ cd / var / www / html $ sudo vi index.nginx-debian.html

Ändra innehållet i H1-taggen som “Välkommen till Nginx! - SERVER 1 ”. Gör detsamma i den andra instansen utom, ändra den till “Välkommen till Nginx! - SERVER 2 ”.

Steg 4: Skapa en applikationsbelastningsutjämnare. I navigeringsfönstret under LASTBALANSERING , välj Lastbalanserare och klicka på Skapa under Application Load Balancer.

Du navigeras till en annan sida, välj Skapa Load Balancer där.

Låt oss konfigurera belastningsutjämnaren. För Namn skriver du det namn du vill att din belastningsutjämnare ska ha. För Scheme väljer du antingen Internet-vänd eller Internt. I det här fallet har jag valt internetinriktning. Internet-riktning dirigerar i princip förfrågningar från klienter till målet via internet.

För lyssnare är standard att acceptera TCP-trafik på port 80 och jag fortsätter med samma standard lyssnarkonfiguration. Om du vill lägga till ytterligare en lyssnare kan du välja Lägg till lyssnare .

För tillgänglighetszon väljer du den VPC som du har använt för att skapa dina EC2-instanser. Välj en tillgänglighetszon och undernätet för den tillgänglighetszonen för varje tillgänglighetszon som används för att skapa en EC2-instans.

Du lägger till taggar i din belastningsutjämnare efter behov. Taggar är särskilt användbara när du har flera belastningsbalanserare.

Klicka på Nästa: Konfigurera säkerhetsinställningar . Du kanske ser en varning men du kan ignorera den.

I det här steget kan du konfigurera säkerheten för din lastbalanserare. Du kan antingen Skapa en ny säkerhetsgrupp eller Välj en befintlig säkerhetsgrupp . I det här fallet har jag valt en befintlig säkerhetsgrupp.

tablå hur man skapar en uppsättning

När du är klar med säkerhetskonfiguration klickar du på Nästa: Konfigurera routing . Välj en Ny målgrupp. Lägg till namn du vill ge din Målgrupp . Välj Måltyp som instans, som vi bifogar instanser. Application load Balancer låter dig också bifoga IP-adresser och Lambda-funktioner. Låt Protokoll och Hamn vara standard.

Jag har inte förändrat någonting i Hälsokontroller och Avancerade hälsokontroller antingen. Standardinställningarna är tillräckligt bra för oss.

Klicka på Nästa: Registrera mål för att lägga till dina mål (i detta fall fall) till din belastningsutjämnare.

Välj de instanser du vill lägga till som mål och klicka sedan på Lägg till i registret.

Dina mål (instanser) har nu registrerats i Load Balancer.

Klicka på Nästa: Recension . Granska din Load Balancer och klicka äntligen på Skapa .

Din Load Balancer är nu skapad och du kan kontrollera dess status.

Yayyy !! Du har skapat en Load Balancer för applikationer. Låt oss nu kontrollera om det faktiskt fungerar.

Steg 5: Kopiera DNS-namnet på din belastningsutjämnare och klistra in det i en webbläsare som en URL. Du bör se den första instansens utdata.

Gå nu till en annan webbläsare och klistra in samma DNS-namn, du ska se den andra instansens utdata.

Och det visar att belastningsutjämnaren balanserar belastningen av två instanser på den. Lasten på båda dina EC2-instanser hanteras av den här belastningsbalansen. Ett annat sätt att testa din Load Balancer är att stänga en instans och kontrollera om dess distributioner distribueras på Load Balancer's DNS.

Detta leder oss till slutet av denna blogg om applikationsbelastning. Jag hoppas ni har förstått konceptet bakom denna fantastiska tjänst som tillhandahålls av Amazon. För fler sådana bloggar, besök “ '.

Om du vill lära dig mer om Cloud Computing och bygga en karriär inom Cloud Computing, kolla in vår som kommer med instruktörsledad liveutbildning och verklig projektupplevelse. Den här utbildningen hjälper dig att förstå Cloud Computing på djupet och hjälper dig att behärska ämnet.

Har du en fråga till oss? Vänligen nämna det i kommentarfältet så kommer vi tillbaka till dig eller lägger upp din fråga på . På Edureka Community har vi mer än 1 000 000 tekniska fanatiker redo att hjälpa till.