GNU/Linux >> Linux Esercitazione >  >> Cent OS

Installare HAProxy su CentOS 8 - Guida passo passo?

HAProxy è un server proxy e bilanciatore del carico ad alta disponibilità HTTP/TCP gratuito. Diffonde le richieste tra più server per mitigare i problemi derivanti da un errore di un singolo server. HA Proxy viene utilizzato da numerosi siti Web di alto profilo, tra cui GitHub, Bitbucket, Stack Overflow, Reddit, Tumblr, Twitter e Tuenti, e viene utilizzato nel prodotto OpsWorks di Amazon Web Services.

Qui a LinuxAPT, come parte dei nostri servizi di gestione del server, aiutiamo regolarmente i nostri clienti a eseguire query di configurazione HAProxy correlate.

In questo contesto, esamineremo come installare HAProxy sul tuo sistema CentOS 8.


Passaggi per installare e configurare HAProxy su CentOS 8

1. Esegui l'aggiornamento del sistema

Innanzitutto, iniziamo assicurandoci che il tuo sistema sia aggiornato:

$ sudo clean all
$ sudo dnf update


2. Installare HAProxy sul sistema

HAProxy è disponibile su CentOS 8 predefinito, ora usa il seguente comando dnfa per installare HAProxy:

$ sudo dnf install haproxy

Successivamente, dobbiamo verificare che HAProxy si avvii ogni volta che riavviamo il nostro server. Possiamo farlo con il comando chkconfig di seguito:

$ chkconfig haproxy on


3. Configura HAProxy

Creeremo un file di configurazione /etc/haproxy/haproxy.cfg contenente le impostazioni e le configurazioni necessarie:

$ sudo nano /etc/haproxy/haproxy.cfg

Inserisci quanto segue nel file:

global
    log         127.0.0.1 local2
    chroot      /var/lib/haproxy
    pidfile     /var/run/haproxy.pid
    maxconn     4000
    user        haproxy
    group       haproxy
    daemon
    stats socket /var/lib/haproxy/stats
    ssl-default-bind-ciphers PROFILE=SYSTEM
    ssl-default-server-ciphers PROFILE=SYSTEM
defaults
    mode                    http
    log                     global
    option                  httplog
    option                  dontlognull
    option http-server-close
    option forwardfor       except 127.0.0.0/8
    option                  redispatch
    retries                 3
    timeout http-request    10s
    timeout queue           1m
    timeout connect         10s
    timeout client          1m
    timeout server          1m
    timeout http-keep-alive 10s
    timeout check           10s
    maxconn                 3000
frontend main
    bind *:5000
    acl url_static       path_beg       -i /static /images /javascript /stylesheets
    acl url_static       path_end       -i .jpg .gif .png .css .js
    use_backend static          if url_static
    default_backend             app
backend static
    balance     roundrobin
    server      static 127.0.0.1:4331 check
backend app
    balance     roundrobin
    server  app1 127.0.0.1:5001 check
    server  app2 127.0.0.1:5002 check
    server  app3 127.0.0.1:5003 check
    server  app4 127.0.0.1:5004 check

È possibile visualizzare i dettagli di configurazione e ulteriori informazioni controlla questo URL. Dopo aver configurato HAProxy, è ora di avviare il servizio:

$ sudo systemctl start haproxy
$ sudo systemctl enable haproxy


4. Configura Firewall

Aggiungeremo HAProxy al firewall CentOS 8 e aggiorneremo le regole con i seguenti comandi:

$ sudo firewall-cmd --add-port=8088/tcp --permanent
$ sudo firewall-cmd --reload


5. Configurare la registrazione HAProxy

Per configurare la registrazione standard HAProxy, modificare /etc/rsyslog.conf e abilitare la ricezione UDP Syslog sulla porta 514:

$ sudo nano /etc/rsyslog.conf
...
# Provides UDP syslog reception
# for parameters see http://www.rsyslog.com/doc/imudp.html
module(load="imudp") # needs to be done just once
input(type="imudp" port="514")
...
*.info;mail.none;authpriv.none;cron.none,local2.none /var/log/messages
local2.* /var/log/haproxy.log
...

Quindi, salva il file di configurazione ed esegui il comando seguente per verificare la presenza di eventuali errori:

$ rsyslogd -N1
$ sudo systemctl restart rsyslog haproxy


6. Configura Apache X-Forwarded-For Logging su server backend

Ora accediamo ai server back-end e configuriamo Apache per registrare le intestazioni X-Forwarded-For. La riga predefinita che stiamo modificando è:

...
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
...

Modifica questa riga in modo che assomigli a:

...
LogFormat "\"%{X-Forwarded-For}i\" %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
...

Salva il file e riavvia Apache:

$ apachectl configtest
$ sudo systemctl restart httpd


Come testare HAProxy Load Balancer?

Per verificare che HAProxy sia in grado di bilanciare il carico delle richieste HTTP, accedere al browser e accedere a HAProxy utilizzando il nome host o l'indirizzo IP.


Come riavviare HAProxy?

Dopo aver configurato il livello 4 o il livello 7, riavviare HAProxy con il comando seguente:

$ systemctl restart haproxy

Un riavvio riuscito non produrrà alcun output, il che significa che HAProxy è attivo e funzionante con le modifiche appena implementate.



Cent OS
  1. Installa Grafana su CentOS 8 - Guida passo passo?

  2. Installa FreeIPA su CentOS 8 - Guida passo passo?

  3. Installare OrangeScrum su CentOS 8 - Guida passo passo?

  4. Installa Rar/Unrar su Centos 8 - Guida passo passo?

  5. Installa ClamAV su CentOS 8 - Guida passo passo?

Guida passo passo per installare CentOS 8 (con screenshot)

Installa Mattermost su CentOS 8 - Una guida passo passo?

Installare Microsoft SQL Server su CentOS 8 - Una guida passo passo?

Installa Vtiger CRM su CentOS 8 - Una guida passo passo?

Installare Gparted su CentOS 8 - Una guida passo passo?

Come installare HAProxy su CentOS 8