Come distribuire HAProxy in un contenitore Docker

Come Distribuire Haproxy In Un Contenitore Docker



Con HAProxy, puoi distribuirlo in un contenitore Docker invece di eseguirlo come pacchetto sul tuo sistema. L'uso di Docker garantisce di non interferire con altri pacchetti ed è un modo per avere un ambiente appartato per eseguire HAProxy come proxy inverso o per altri scopi. L'esecuzione di HAProxy su Docker è un'attività semplice. Questo post illustra i passaggi da seguire. Continuare a leggere!

Distribuzione di HAProxy in un contenitore Docker

Quando lavori con le tue applicazioni o server, HAProxy è utile perché ti consente di controllare il traffico per ottenere prestazioni e scalabilità elevate. Inoltre, Docker ti offre una piattaforma per distribuire e scalare la tua applicazione senza problemi. Combinando i due, la tua scalabilità e le altre esigenze di distribuzione saranno ben soddisfatte.







Inoltre, le tecnologie HAProxy hanno creato una serie di immagini Docker che puoi utilizzare per distribuire HAProxy in un contenitore Docker. Di seguito sono riportati i passaggi da seguire.



Passaggio 1: avviare Docker



Sul tuo sistema deve essere installato Docker per poterlo avviare prima di distribuire HAProxy. A seconda della distribuzione che stai utilizzando, assicurati di aver installato Docker. Per questo tutorial lavoreremo con Ubuntu e controlleremo la versione di Docker per confermare che sia installata sul nostro sistema.






Una volta installato Docker, controlla il suo stato per assicurarti che sia in esecuzione. Puoi avviarlo con il seguente comando e poi controllarne lo stato:

$ sudo systemctl avvia la finestra mobile




Passaggio 2: ottieni l'immagine Docker ufficiale di HAProxy

L'immagine ufficiale HAProxy Docker è disponibile nell'hub Docker. Puoi scaricarlo estraendolo con il seguente comando:

$ sudo docker pull haproxy


Conferma di aver scaricato HAProxy controllando le immagini Docker disponibili.

$ sudo immagini della finestra mobile


Passaggio 3: crea una rete Docker

Poiché utilizzeremo le applicazioni Web che desideriamo collegare a HAProxy, è necessaria una rete bridge. Inoltre, creare una rete aiuta anche a separare i contenitori in modo che ognuno utilizzi il proprio.

Per creare una rete a ponte, utilizzare la seguente sintassi:

$ sudo la rete mobile crea nome_rete


Verifica rapidamente che la rete sia stata creata elencando le reti disponibili nel tuo contenitore Docker.

$ sudo rete docker ls


Abbiamo creato la nostra 'rete1a' e appare nel seguente output:


Passaggio 4: creare le applicazioni Web di backend

Creiamo due istanze Web da utilizzare con il nostro bilanciatore del carico per la dimostrazione. Docker ha diverse istanze che puoi utilizzare. In questo caso, utilizziamo un'immagine Nginx per creare le applicazioni web.

$ sudo esecuzione della finestra mobile -D --nome < nome-app-web > --rete < nome della rete > nginx


Crea l'altra istanza.


Ora abbiamo due istanze di applicazioni Web sul nostro Docker. Verificalo eseguendo il comando 'docker ps'.


Passaggio 5: crea il file di configurazione

È necessario creare un file di configurazione HAProxy da utilizzare con Docker. Scegli dove salvare il file di configurazione. Quindi aprilo con un editor di testo. Utilizziamo nano per questo caso e il nostro file di configurazione è archiviato in '/opt/haproxy/haproxy.cfg'.


Il nostro file di configurazione appare come segue. Nota come ciascuna sezione mostra come vogliamo che HAProxy distribuisca il carico sulle nostre applicazioni/server web:


Ancora una volta, utilizziamo la porta 80 per le connessioni frontend e la porta 8404 per gli ascoltatori.


Assicurati di aver aggiunto il nome corretto per la tua applicazione web nella sezione backend del file di configurazione. Puoi anche utilizzare gli indirizzi IP per le tue applicazioni web invece dei loro nomi host. Infine, salva ed esci dal file. È quindi possibile riavviare HAProxy.


Invece di creare un file di configurazione, puoi creare un file Docker che copia un file di configurazione esistente e quindi creare il contenitore. Sentiti libero di utilizzare il metodo che funziona meglio per te.

Passaggio 6: distribuire HAProxy

Ora dobbiamo creare un contenitore HAProxy, eseguirlo e mappare la sua porta su quella che abbiamo incluso nel file di configurazione. Chiamiamo il nostro contenitore come 'haproxycontainer2' e mappiamo le porte 80 e 8404 dall'host a quelle sul contenitore Docker.


Con ciò, sei riuscito a distribuire HAProxy in un contenitore Docker. Ora puoi accedere alle tue applicazioni/server web. Tutto il traffico incanalato verso di essi verrà distribuito utilizzando HAProxy per garantire il bilanciamento del carico.

Conclusione

HAProxy aiuta con il bilanciamento del carico e altre applicazioni. Quando si lavora con Docker, è possibile distribuire HAProxy in modo che le applicazioni Web o l'ambiente di sviluppo dispongano di un modo conveniente per bilanciare il carico. Questo post ha condiviso i passaggi per distribuire HAProxy in un contenitore Docker. Seguiteli e fate lo stesso per il vostro caso.