Come configurare HAProxy con Keepalived per l'alta disponibilità

Come Configurare Haproxy Con Keepalived Per L Alta Disponibilita



Quando si dispone di un sistema di bilanciamento del carico, una sfida comune consiste nel garantire la disponibilità, soprattutto laddove è richiesta la disponibilità continua del servizio. Anche un bilanciatore del carico può deluderti se non hai incorporato un modo per garantirne la disponibilità, ed è qui che entra in gioco Keepalived.

È un framework open source progettato per consentire ai sistemi Linux di ottenere affidabilità gestendo il bilanciamento del carico e il failover IP. Keepalived viene utilizzato con un sistema di bilanciamento del carico come HAProxy per garantire la continuità del servizio e ottenere affidabilità. Questo post introduce Keepalived e illustra i passaggi per configurarlo con HAProxy.

Cos'è Keepalived?

Un bilanciatore del carico, come HAProxy, è utile per gestire il traffico verso il tuo sito. Tuttavia, potresti riscontrare un caso in cui la disponibilità non è garantita. Keepalived è un software open source che garantisce un'elevata disponibilità gestendo il failover IP con il sistema di bilanciamento del carico e funziona perfettamente con HAProxy.







Alcune delle funzionalità chiave fornite da Keepalived includono quanto segue:



1. Gestione IP virtuale

A tutti i server viene assegnato un IP virtuale da Keepalived che consente loro di operare come un'unica entità virtuale. Keepalived trasferisce l'IP virtuale su un server di backup in caso di failover, evitando tempi di inattività.



2. Controllo dello stato di salute

Keepalived è progettato in modo da poter verificare lo stato di salute di tutti i servizi che gestisce. Ad esempio, se un server non risponde, avvia immediatamente un failover e trova un server di backup. Con questa funzionalità di controllo dello stato e di failover, la disponibilità è garantita.





3. Bilanciamento del carico

Sebbene il suo scopo principale non sia quello di bilanciare il carico, è possibile configurarlo per distribuire il traffico in entrata su server diversi. Questa funzionalità è combinata con un bilanciatore del carico per migliorare le prestazioni del sistema.

Come configurare HAProxy con Keepalived

Abbiamo già detto che Keepalived funziona con un bilanciatore del carico. In questo caso, abbiamo configurato HAProxy con Keepalived per un'elevata disponibilità. Pertanto, dobbiamo prima installare HAProxy e poi configurarlo. Segui i passaggi indicati:



Passaggio 1: installare HAProxy

L'installazione di HAProxy è un processo semplice, soprattutto perché HAProxy è disponibile dal repository Linux predefinito. Stiamo lavorando con Ubuntu per questo tutorial, ma i passaggi sono simili a quelli delle altre distribuzioni.

Prima di installare HAProxy, aggiornare rapidamente il repository.

$ sudo aggiornamento adeguato

Ora puoi utilizzare APT per installare HAProxy.

$ sudo apt-get install aproxy

Passaggio 2: configurare HAProxy

Sul tuo HAProxy, dobbiamo accedere al file di configurazione, definire come desideri ricevere il traffico in entrata dai tuoi dispositivi client e quindi definire su quali server distribuire il traffico.

Inizia accedendo al file di configurazione HAProxy.

$ sudo nano / eccetera / aproxy / haproxy.cfg

In questo caso specifichiamo che ascolteremo tutte le connessioni in entrata tramite la porta 80. Per il backend specifichiamo due server che utilizzano round robin per distribuire il traffico. Assicurati di sostituire gli IP del server in modo che corrispondano ai tuoi server effettivi.

Dopo aver apportato le modifiche richieste al file di configurazione, salvalo ed esci. Infine, riavvia HAProxy.

Passaggio 3: installa Keepalived

Keepalived non è preinstallato in Linux. Pertanto, dobbiamo installarlo dal repository predefinito utilizzando APT. Esegui il seguente comando:

$ sudo apt-get install keepalived

Conferma l'installazione premendo 'y' quando richiesto. Una volta completata l'installazione, verifica che Keepalived sia stato installato controllandone la versione.

Passaggio 4: configura Keepalived

Per configurare Keepalived, dobbiamo accedere al suo file di configurazione che si trova in '/etc/keepalived/keepalived.conf'. Qui dobbiamo definire come vogliamo che Keepalived offra elevata disponibilità a HAProxy.

Dobbiamo definire l'indirizzo IP virtuale, la priorità per i server disponibili e lo script per verificare l'integrità e lo stato di HAProxy. Nel seguente file di configurazione, creiamo lo script 'chk_haproxy' per valutare lo stato di HAProxy ogni due secondi. Lo specifichiamo utilizzando 'enp0s3' come interfaccia di rete e creiamo un'istanza VRRP denominata 'VI_1'. Cambia l'interfaccia di rete per adattarla al tuo caso.

Tuttavia, imposta un ID router che funzioni per la tua interfaccia e imposta quale indirizzo IP virtuale utilizzare. Dovresti anche cambiare la password di autenticazione.

Passaggio 5: riavvia Keepalived


Una volta impostata la configurazione di Keepalived, salva il file e chiudi l'editor di testo. È quindi possibile verificare la validità del file di configurazione e riavviare il servizio Keepalived.

Infine, assicurati che HAProxy e Keepalived siano avviati.

Questo è tutto. Hai configurato HAProxy con Keepalived per la disponibilità elevata. È possibile utilizzare l'IP virtuale definito per verificare che la configurazione funzioni come previsto.

Conclusione

La configurazione definita in questo post garantisce che il tuo sistema di bilanciamento del carico sia altamente disponibile per gestire il traffico in entrata distribuendolo ai server disponibili. Inoltre, Keepalived garantisce la gestione del failover e non avrai tempi di inattività con il tuo bilanciatore del carico. Segui i passaggi e modifica il file di configurazione in base alle tue preferenze.