HAProxy

Installeer HAProxy om Load Balancing Server te configureren op Debian 10

Installeer HAProxy om Load Balancing Server te configureren op Debian 10

Load-balancing is de meest voorkomende praktijk voor het verdelen van inkomend webverkeer over meerdere back-endservers. Dit maakt de applicatie zeer beschikbaar, zelfs als sommige servers om de een of andere reden uitvallen.  Load Balancing verhoogt de efficiëntie en betrouwbaarheid van een webtoepassing. HAProxy load-balancer wordt voor hetzelfde doel gebruikt. Het is de meest gebruikte load-balancer in industrieën. Volgens de officiële website wordt HAProxy gebruikt door toonaangevende bedrijven zoals AWS, Fedora, Github en nog veel meer.

HAProxy of High Availability Proxy biedt een oplossing voor hoge beschikbaarheid en proxy. Het is geschreven in C en werkt op netwerk- en applicatielagen van het TCP/IP-model. Het beste is dat het een gratis community-editie heeft en dat het een open-sourcetoepassing is. Het werkt op de besturingssystemen Linux, FreeBSD en Solaris. De enterprise-editie is er ook, maar heeft een prijskaartje.

In deze gids zullen we zien HAProxy installeren en de load balancing-server configureren op Debian 10.

Vereisten:

  1. "sudo"-toegang tot alle machines en basiskennis van het uitvoeren van opdrachten in Linux-terminal.
  2. Privé IP-adressen toegevoegd aan load-balancer en backend-servers.
  3. Debian 10 besturingssysteem geïnstalleerd op alle machines.

HAProxy installeren op Debian 10

Voor onze gids gaan we uit van de volgende IP-adresconfiguratie:

  1. HAProxy load balancer 10.0.12.10
  2. Webserver1: IP-adres: 10.0.12.15
  3. Webserver2: IP-adres: 10.0.12.16

Stap 1. Debian systeemrepository en pakketten bijwerken

Voer eerst de onderstaande opdrachten uit op alle systemen om softwarepakketten bij te werken naar de nieuwste:.

$ sudo apt-update
$ sudo apt upgrade -y

Stap: 2 Installeer Nginx op back-endservers

Bereid uw back-endservers voor door Nginx-webserver op elke te installeren installing. U kunt er ook voor kiezen om andere webservers te installeren, zoals apache.

Om Nginx te installeren, voert u de volgende opdrachten uit op elke back-endserver in uw omgeving:

$ sudo apt install nginx

Stap: 3 Nadat Nginx op uw back-endservers is geïnstalleerd, start u de service, zoals hieronder weergegeven:

$  sudo systemctl start nginx

TIP: We kunnen de nginx-webserver ook beheren met de onderstaande opdracht:

$ sudo /etc/init.d/nginx “optie”
optie: start herladen herstart status stop

Stap: 4 Maak aangepaste indexpagina's in de webmap van elke Nginx-webserver. Dit zal ons helpen om te onderscheiden welke back-end server de inkomende verzoeken bedient.

Voer op elke webserver de volgende taken uit:

Maak een back-up van het originele indexbestand met behulp van de volgende opdracht:

$ sudo cp /usr/share/nginx/html/index.html /usr/share/nginx/html/index.html.origineel

Aangepaste tekst toevoegen aan de index.html-bestand. We voegen het IP-adres van elke webserver toe.

Voor webserver 1:

$ sudo echo "Webserver 1: 10.0.12.15" | sudo tee /usr/share/nginx/html/index.html

Voor webserver 2:

$ sudo echo "Webserver 2: 10".0.12.16" | sudo tee /usr/share/nginx/html/index.html

Je kunt ook vi editor gebruiken als je je daar prettiger bij voelt. Dit is hieronder weergegeven:

$ sudo vi /usr/share/nginx/html/index.html

Wanneer het bestand is geopend, voert u de tekst in en slaat u het bestand op.

Open het standaard virtuele hostbestand in de map "/etc/nginx/sites-available/".

$ sudo nano /etc/nginx/sites-available/default

Verander nu binnen het serverblok de root-richtlijn van "/var/www/html" in "/usr/share/nginx/html".

Voer de volgende opdracht uit om de Nginx-configuratie te controleren:

$ sudo nginx -t

Stap 5: Start nu de service opnieuw met de opdracht:

$ sudo systemctl herstart nginx

U kunt de status van nginx controleren met de volgende opdracht:

$ sudo systemctl status nginx

Stap: 6 Om HAProxy op Debian 10 (Buster) te installeren, voert u de volgende opdracht uit op de load-balancer:.

$ sudo apt install haproxy -y

Tip: Zodra HAProxy is geïnstalleerd, kunt u HAProxy beheren via een init-script. Stel hiervoor de parameter “enabled” in op 1 in “/etc/default/haproxy” zoals hieronder getoond:

$ sudo vi /etc/default/haproxy
INGESCHAKELD=1

Nu kan de volgende optie worden gebruikt met een init-script:

$ sudo service haproxy "optie".”
optie: start herladen herstart status stop

Stap: 7 Configureer nu HAProxy load-balancer door het haproxy standaard configuratiebestand te bewerken, i.e. “/etc/haproxy/haproxy.cfg”. Voer de volgende opdracht uit om dit bestand te bewerken:

$ sudo vi /etc/haproxy/haproxy.cfg

Tip: Maak een back-up van het originele bestand, zodat we allemaal veilig zijn als er iets misgaat wrong. Gebruik de volgende opdracht om de back-up uit te voeren:

$ sudo cp /etc/haproxy/haproxy.cfg /etc/haproxy/haproxy.cfg.origineel

Ga nu naar het einde van het bestand en bewerk de volgende informatie:

frontend Local_Server
bind 10.0.12.10:80
modus http
default_backend webserver
backend webserver
modus http
balans roundrobin
optie doorsturenvoor
http-request set-header X-Forwarded-Port %[dst_port]
http-verzoek add-header X-Forwarded-Proto https if ssl_fc
optie httpchk HEAD / HTTP/1.1rnHost:lokalehost
serverweb1 10.0.12.15:80
serverweb2 10.0.12.16:80

Opmerking: Vergeet niet de IP-adressen in het bovenstaande bestand te wijzigen in degene die u aan uw webservers hebt toegevoegd.

Stap: 8 Controleer de configuratiesyntaxis van het bovenstaande bestand met de volgende opdracht:

$ sudo haproxy -c -f /etc/haproxy/haproxy.cfg

Als alles goed gaat, zal het een uitvoer tonen zoals: "Configuratiebestand is geldig."Als u een fout in de uitvoer krijgt, controleer dan uw configuratiebestand opnieuw en verifieer het opnieuw.

Stap: 9 Start nu de HAProxy-service opnieuw om de wijzigingen toe te passen

$ sudo-service haproxy opnieuw opstarten

De configuratie testen

Nu is het tijd om te kijken of onze setup goed werkt. Voer het IP-adres van het load-balancersysteem in een webbrowser in (in ons geval is dit 10.0.12.10) en ververs de pagina continu gedurende 2-4 keer om te zien of HAProxy load-balancer correct werkt. U zou verschillende IP-adressen moeten zien of welke tekst u ook in de index hebt ingevoerd.html-bestand wanneer u de pagina meerdere keren blijft vernieuwen.

Een andere manier om te controleren is door een webserver offline te halen en te controleren of een andere webserver de verzoeken afhandelt.

Dat is het voor nu! Probeer te experimenteren met HAProxy om meer te weten te komen over hoe het werkt. voor e.g., je kan het proberen:

HAProxy heeft uitgebreide documentatie beschikbaar voor zowel de HAProxy community-editie als de HAProxy enterprise-versie. Verken deze documentatie om meer inzicht te krijgen in het verbeteren van de prestaties en betrouwbaarheid van uw serveromgeving.

Deze handleiding is met succes uitgevoerd op Debian 10(Buster). Probeer HAProxy te installeren op andere op Debian gebaseerde distributies zoals Ubuntu, Linux Mint enz. Vergeet deze gids niet met anderen te delen.

Hoe FPS-teller in Linux-games te tonen
Linux-gaming kreeg een grote duw toen Valve in 2012 Linux-ondersteuning voor Steam-client en hun games aankondigde. Sindsdien hebben veel AAA- en indi...
Sid Meier's Civilization VI downloaden en spelen op Linux and
Inleiding tot het spel Civilization 6 is een moderne versie van het klassieke concept dat werd geïntroduceerd in de serie Age of Empires-games. Het id...
Doom installeren en spelen op Linux
Inleiding tot Doom De Doom-serie is ontstaan ​​in de jaren 90 na de release van de originele Doom. Het was meteen een hit en vanaf die tijd heeft de g...