GNU/Linux >> Linux Esercitazione >  >> Rocky Linux

Come installare e configurare HAProxy su Rocky Linux 8

Quando si distribuisce un'applicazione su Internet, la disponibilità, la scalabilità e le prestazioni dell'applicazione sono molto importanti per una migliore esperienza utente. Esistono molte tecnologie che introducono la ridondanza, come il bilanciamento del carico, il clustering e il proxy.

HAProxy è un sistema di bilanciamento del carico gratuito, open source e affidabile progettato per siti Web ad alto traffico. Bilancia il carico del traffico in entrata distribuendolo su più server back-end.

In questo articolo ti mostriamo come installare HAProxy su Rocky Linux 8.

Allo scopo di questo tutorial, utilizzeremo la seguente configurazione:

Server                      Indirizzo IP

HAProxy 172.16.10.10

Backend1 172.16.10.11

Backend2 172.16.10.12

Prerequisiti

  • Un server che esegue RockyLinux 8.
  • Sul server è configurata una password di root.

Installa HAProxy

Per impostazione predefinita, il pacchetto HAProxy è disponibile nel repository predefinito di Rocky Linux 8. Puoi installarlo con il seguente comando:

dnf install haproxy -y

Una volta installato HAProxy, avviare il servizio HAProxy e consentirne l'avvio al riavvio del sistema:

systemctl start haproxy
systemctl enable haproxy

Configura HAProxy

Successivamente, dovrai modificare il file /etc/haproxy/haproxy.cfg e modificare due sezioni frontend e backend. Nella sezione Frontend, dovrai definire HAProxy IP la sua porta, l'URI delle statistiche e il nome del backend. Nella sezione Backend, dovrai definire l'algoritmo di bilanciamento del carico, il nome del server backend, gli IP e la porta.

nano /etc/haproxy/haproxy.cfg

Modifica le seguenti sezioni:

frontend http_balancer
    bind 172.16.10.10:80
    option http-server-close
    option forwardfor
    stats uri /haproxy?stats

default_backend     Apache_webservers

backend apache_webservers
    mode        http
    balance     roundrobin
    option httpchk HEAD / HTTP/1.1\r\nHost:\ localhost    
    server  apache1  172.16.10.11:80  check
    server  apache2  172.16.10.12:80  check

Salva e chiudi il file al termine, quindi dovrai modificare il file /etc/rsyslog.conf.

nano /etc/rsyslog.conf

Decommenta le seguenti righe:

module(load="imudp")
input(type="imudp" port="514")

Salva e chiudi il file, quindi crea il file haproxy.conf per rsyslog con il seguente comando:

nano /etc/rsyslog.d/haproxy.conf

Aggiungi le seguenti righe:

local2.=info     /var/log/haproxy-access.log
local2.notice    /var/log/haproxy-info.log

Quindi, avvia il servizio rsyslog e abilitalo per l'avvio al riavvio del sistema:

systemctl start rsyslog
systemctl enable rsyslog

Infine, riavvia il servizio HAProxy per applicare le modifiche:

systemctl restart haproxy

È inoltre possibile verificare lo stato del servizio HAProxy con il seguente comando:

systemctl status haproxy

Dovresti vedere il seguente output:

? haproxy.service - HAProxy Load Balancer
   Loaded: loaded (/usr/lib/systemd/system/haproxy.service; disabled; vendor preset: disabled)
   Active: active (running) since Tue 2021-08-03 03:10:37 EDT; 1min 16s ago
  Process: 44032 ExecStartPre=/usr/sbin/haproxy -f $CONFIG -c -q $OPTIONS (code=exited, status=0/SUCCESS)
 Main PID: 44036 (haproxy)
    Tasks: 2 (limit: 12524)
   Memory: 3.1M
   CGroup: /system.slice/haproxy.service
           ??44036 /usr/sbin/haproxy -Ws -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid
           ??44111 /usr/sbin/haproxy -Ws -f /etc/haproxy/haproxy.cfg -p /run/haproxy.pid

Aug 03 03:10:36 RockyLinux8 systemd[1]: Starting HAProxy Load Balancer...
Aug 03 03:10:37 RockyLinux8 systemd[1]: Started HAProxy Load Balancer.

Configura Firewall

Successivamente, dovrai configurare il firewall su tutti i server e consentire la porta 80 attraverso il firewall.

Puoi eseguire il comando seguente per consentire la porta 80:

firewall-cmd --permanent --add-port=80/tcp

Quindi, ricarica il servizio firewalld per applicare le modifiche.

firewall-cmd --reload

Configura i server di backend

Successivamente, dovrai installare il server Apache su entrambi i server back-end. Esegui il comando seguente per installare il server Apache.

dnf install httpd -y

Una volta installato il server Apache, avvia il servizio Apache e abilitalo all'avvio al riavvio del sistema:

systemctl start httpd
systemctl enable httpd

Successivamente, dovrai modificare il file index.html predefinito su entrambi i server back-end.

Sul primo backend, modifica il file index.html con il seguente comando:

nano /usr/share/httpd/noindex/index.html

Rimuovi tutte le righe e aggiungi la seguente riga:

Welcome to First Apache Web Server!

Salva e chiudi il file quando hai finito.

Sul secondo back-end, modifica il file index.html con il seguente comando:

nano /usr/share/httpd/noindex/index.html

Rimuovi tutte le righe e aggiungi la seguente riga:

Welcome to Second Apache Web Server!

Salva e chiudi il file quando hai finito.

Verifica HAProxy

A questo punto, HAProxy è configurato per inoltrare tutte le richieste in entrata ai server back-end in base all'algoritmo di bilanciamento del carico. Ora è il momento di verificare se HAProxy funziona correttamente o meno.

Apri il tuo browser web e digita l'IP HAProxy nell'URL http://172.16.10.10 . Dovresti vedere la tua prima pagina del server web apache:

Quindi, aggiorna di nuovo la stessa pagina, dovresti vedere la tua seconda pagina del server web apache:

Ciò conferma che HAProxy funziona come previsto e sta distribuendo il traffico tra due server back-end.

Conclusione

Congratulazioni! hai installato e configurato correttamente il sistema di bilanciamento del carico HAProxy su Rocky Linux 8. Ora puoi implementare HAProxy nell'ambiente di produzione per ottenere prestazioni e scalabilità elevate.


Rocky Linux
  1. Installa e configura Elasticsearch su Rocky Linux 8

  2. Come installare e configurare la finestra mobile in Rocky Linux/Centos 8

  3. Come installare e configurare Ansible su Rocky Linux/CentOS 8

  4. Come installare e configurare il sistema di bilanciamento del carico HAProxy su Rocky Linux/Alma Linux 8

  5. Come installare e configurare Elasticsearch su Rocky Linux 8

Come installare e utilizzare Firewalld su Rocky Linux 8

Come installare e configurare HAproxy su CentOS 6

Come installare e configurare OpenCV su Rocky Linux 8.4

Come installare Docker su Rocky Linux e AlmaLinux

Come installare MongoDB su Rocky Linux e AlmaLinux

Come installare Java 16 in Rocky Linux e AlmaLinux