Oversigt #
Load balancing på tværs af flere instanser af en applikation er en fantastisk måde at forbedre ydeevnen på ved at reducere overbelastning og latenstid og øge leveringen ved at cachelagre statiske ressourcer.
Selvom Nginx tjener et godt formål inden for webserver, har platformen mange kompleksiteter. Efterhånden som trafikken stiger, bliver det sværere at load balancere trafik på lag 4 og lag 7 uden at ofre sikkerheden. Af denne grund har du brug for en load balancer med mere avancerede funktioner, der giver kontrol over en forretningsapplikation gennem en brugervenlig brugergrænseflade.
I denne artikel vil vi diskutere, hvordan man overfører Nginx load balancer-konfigurationer til RELIANOID ADC.
Forudsætninger #
For at følge denne vejledning skal du sørge for at opfylde følgende benchmarks.
- Et eksempel på RELIANOID Apparatet skal være installeret på din arbejdsstation eller en cloudplatform. Anmod om en evaluering hvis du ikke har en instans installeret endnu.
- Du skal have adgang til webpanelet. Hvis ikke, skal du følge denne hurtige vejledning installationsvejledning.
- Nginx er en leg for dig, men du er ikke tilfreds med dens load balancing-funktioner. Så du har brug for RELIANOID at træde ind.
- En virtuel server er afgørende for at distribuere trafik til backend-servere. Hvis du ikke har oprettet en, skal du følge denne vejledning om Oprettelse af en virtuel server (Farm) på lag 4 og lag 7
Basale koncepter #
opstrøms: Upstream-direktivet definerer en klynge af servere, der hoster en webapplikation. Normalt defineres upstream i http-konteksten. RELIANOID ADC'en Det vi er gode til Afsnittet indeholder et backend-underafsnit til administration af værtsservere.
lytte: Lyttefunktionen definerer, hvilken port Nginx vil lytte til for indgående trafik fra internettet. RELIANOID bruge til Virtuel port at lytte efter indgående trafik gennem en Farm.
placering: Placeringskonteksten giver dig mulighed for at give instruktioner om mapperne for at hente data fra HTML-filer.
proxy_adgangskode: Denne direktiv bruges til at specificere placeringen af proxyservere. Placeringen er normalt den værdi tildelt upstream-direktivet. Et lignende koncept i RELIANOID er en FarmDet er her, du definerer en IP-adresse og port, der er forbundet til en tjeneste, der indeholder backend-servere.
server: Denne direktiv specificerer en server, der er vært for et program, ved hjælp af dens IP-adresse i IPv4- eller IPv6-formater. Serverblokken er der, hvor du definerer placering direktivet, den lytter, og omfatter direktiv. Du kan definere en server i RELIANOID gennem Bagende sektion.
ssl_ciphers og ssl_protocols: Direktiverne ssl_ciphers og ssl_protocol bruges til at begrænse forbindelsen til de stærkeste eller nyeste SSL/TLS-versioner. Nogle af disse protokoller inkluderer TLSV1 og TLSV2. Standardkrypteringen med nginx er HØJ:!aNULL:!MD5Sådan bruger du kryptering og tilpasser du SSL-protokoller i RELIANOID, skal du bruge HTTPS-lytteren. Få adgang til HTTPS-parametre inden for de globale indstillinger for den pågældende gård.
Eksempelkonfigurationer: Aktivering af fastlåste sessioner #
Sessionspersistens, også kendt som sticky sessions, er en teknik, der bruges i load balancing for at sikre, at anmodninger fra en klient sendes til den samme server i en klynge i hele en session. Dette bruges ofte til at opretholde tilstand eller for at sikre, at ressourcer, såsom filer eller data, er tilgængelige for klienten i hele sessionen. Der er flere måder at implementere sessionspersistens på, herunder brug af cookies eller IP-adresseaffinitet. Den anvendte metode afhænger af applikationens specifikke krav og load balancing-arkitekturen.
Nginx-konfigurationer #
Nginx har primært to metoder til at aktivere sessionspersistens, dvs. ved hjælp af hash_ip belastningsbalanceringsmetode og brugen af klæbrige småkager.
Hash_ip: Hash_ip-belastningsbalanceringsmetoden henter destinations- og kilde-IP-adresserne og bruger dem til at danne en unik identitet for en etableret forbindelse.
upstream backend-servere { hash_ip; server 192.168.0.112; server 192.168.0.115; }
klæbrig småkage: Du kan også bruge klæbende cookies ved at definere en klæbrig småkage mulighed inden for den opstrøms kontekst.
upstream backend-servere { server 192.168.0.112; server 192.168.0.116; sticky cookie zensessionid udløber=2t domæne=.example.com sti="/"; }
zensessionid identificerer entydigt en cookie og dens tilknyttede server. Fra ovenstående konfiguration, cookien udløber i 2 timer.
RELIANOID konfigurationer #
For at aktivere cookie-vedligeholdelse ved brug RELIANOID belastningsbalancer:
- Gå til LSLB > Gårde og klik på Redigere Ikon på en http-farm.
- Naviger til Det vi er gode til Tab.
- Rul indtil du når til udholdenhed sektion.
- For at aktivere persistens ved hjælp af klientens IP-adresse skal du vælge persistens IP: klient adresse.
- For at aktivere sessionsvedholdenhed ved hjælp af en cookie, ignorer trin 4 og forlad Vedholdenhed felt ved Ingen vedholdenhed.
- Toggle på cookieindsats knappen og udfyld navn, domæne, stiog tid til at leve (TTL) i sekunder.
- Opdater indstillingerne ved at klikke på Ansøg .
Eksempelkonfigurationer: oprettelse af omdirigeringsregler #
Omdirigeringsregler bruges til automatisk at omdirigere en webside til en anden webside. Dette bruges ofte, når et websted har ændret sin struktur eller indhold, eller når en side er blevet flyttet til en ny placering. Omdirigeringsregler kan bruges til at sikre, at brugere og søgemaskiner ledes til den rigtige side, og til at forhindre ødelagte links. Der findes flere typer omdirigeringer, der kan bruges, herunder 301-omdirigeringer, 302-omdirigeringer og meta refresh-omdirigeringer. Den anvendte type omdirigering afhænger af webstedets specifikke behov og årsagen til omdirigeringen.
Nginx-konfigurationer #
For at oprette en omdirigeringsregel deklarerer vi en return-direktiv i server- eller lokationskonteksten. Return-direktivet bruges, når du vil omdirigere brugere fra en URL til en anden, eller fra en usikker kanal til en sikker server.
Nginx-omdirigeringsregler følger følgende syntaks.
return (301 | 302 | 303 | 307) omdirigerings-url;
Her er et eksempel på en konfiguration, når du omdirigerer brugere fra en usikker http-adresse til en sikret https-adresse.
server { # Omdiriger brugere til HTTPS listen 80; server_name test.relianoid.com www.test.relianoid.com; return 301 https://www.test.relianoid.com$request_uri; }
$anmodning_uri Indstillingen sikrer, at al http-trafik på det samme domæne omdirigerer til den sikre https, selvom stien ændres.
RELIANOID konfigurationer #
For at opnå et lignende resultat med RELIANOID ADC.
- Sørg for at du har to gårde kørende, begge HTTP og httpsSe denne artikel om hvordan man opretter lag 4 og lagindlæsningsfarme
- Gå til LSLB >> Gårde og klik på Redigere ikon på en https-farm.
- Find den Det vi er gode til fanen og åbn en af de konfigurerede tjenester for at redigere dem. Hvis der ikke er nogen, skal du klikke på Ny service knappen og opret en.
- Rul indtil du når til Omdiriger sektion og slå til Aktiver omdirigering.
- Vælg omdirigeringstypen Tilføj, omdirigeringskode 301 og skriv den fulde URL til, hvor den skal omdirigeres. I dette eksempel bruger vi http://10.0.0.18
- Opdater konfigurationerne ved at klikke på Ansøg .
Eksempelkonfigurationer: omskrivning af headerregler #
HTTP-headere er vigtige for, at værter og klienter kan dele yderligere oplysninger udover at forespørge på anmodninger. Disse headere gør det muligt for klienter at få adgang til ressourcer på deres foretrukne sprog og tilgå websider, der er optimeret til deres enheder. Webservere kan bruge disse oplysninger til at optimere den type information, der skal vises til klienter ved hjælp af cookie-headere.
Desværre kan brugen af mange svaroverskrifter afsløre mange følsomme oplysninger, som hackere kan bruge til angrebsforsøg. Derfor er det vigtigt at fjerne upålidelige overskrifter eller ændre noget indhold. Dette hjælper med at forhindre ondsindede angreb som cross-site scripting ved at give X-XSS-beskyttelse.
Nginx-konfigurationer #
Nginx tilbyder to direktiver til at ændre og tilføje headere. Disse inkluderer add_header og flere_sæt_overskrifterBrug disse lokationsoverskrifter inde i lokationsblokken.
Eksempelkonfiguration ved hjælp af add_header i nginx.
placering / { ... add_header Server “servernavn”; ... }
flere_sæt_overskrifter er ikke installeret naturligt i Nginx, så brugerne installerer normalt dette plugin manuelt, før de kompilerer nginx.
Eksempelkonfiguration ved hjælp af flere_sæt_overskrifter.
placering /{ ... more_set_headers Server “servernavn”; ... }
RELIANOID konfigurationer #
- Først skal du gå til LSLB>>Gårde og vælg en HTTP gård, hvis regler du gerne vil fastsætte.
- Under Global indstillinger, klik på Avancerede indstillinger fane.
- Inden for Avancerede indstillinger, Vælg Aktiver mulighed inden for omskriv placeringsoverskrifter Herske.
- Opdater konfigurationerne ved at klikke på Ansøg .
- Rul ned til overskriftssektionen, og klik på Opret regel .
- Inden for Type rullemenuen, vælg en der passer til din anvendelse. I dette eksempel bruger vi Svar: Tilføj overskrift.
- Indtast den overskrift, hvis værdi du vil ændre. I dette eksempel ændrer vi værdien af Server header.
- Gem konfigurationerne ved at klikke på Ansøg .
- Genstart gården for at konfigurationerne kan træde i kraft.
Yderligere ressourcer #
Brug af programmet Let's encrypt til at autogenerere et SSL-certifikat.
Datalink/Uplink belastningsbalancering Med RELIANOID ADC.
DNS belastningsbalancering med RELIANOID ADC.
Beskyttelse mod DDoS-angreb.
Applikations-, sundheds- og netværksovervågning i Relianoid ADC.
Web Application Firewall-konfiguration.
Konfiguration af SSL-certifikater til belastningsbalanceren.



