Load Balancer: informazioni generali

Con un Load Balancer (bilanciatore di carico) puoi massimizzare la velocità di trasmissione dei dati, riducendo al minimo il carico del server. I Load Balancer possono valutare i tempi di carico e di risposta dei singoli server e distribuire il traffico su più server utilizzando delle regole.

L'uso di bilanciatori di carico ha senso se le tue applicazioni web vengono messe a disposizionr da server diversi e se deve essere garantita un'elevata disponibilità. Questo vale, ad esempio, per i siti web con un elevato numero di visitatori.

Per sapere se hai bisogno di un Load Balancer, prova a rispondere alle seguenti domande:

  • Hai bisogno di più server per distribuire le tue applicazioni web?

  • Deve essere garantita un'elevata disponibilità delle applicazioni web?

  • Il volume di traffico è elevato?

Nota bene:
  • Puoi anche utilizzare più Load Balancer per garantire una distribuzione ottimale del traffico.

Prima di poter utilizzare un Load Balancer, è necessario configurarlo. Per farlo, è necessario configurare i cosiddetti Listener. Un Listener controlla le richieste di connessione dei clienti. Per la configurazione del Load Balancer sono necessari il relativo protocollo, la porta sul Load Balancer (connessione del client al Load Balancer) e la porta sui server (connessione del Load Balancer ai server assegnati). Il Listener inoltra poi le richieste ad uno o più server, utilizzando il protocollo e il numero di porta che hai configurato.

Nota bene:
  • I Load Balancer possono anche accedere alle porte che sono bloccate nel criterio firewall di un server monitorato. Ad esempio, se immetti il valore 0 nei campi Porta sul Balancer e Porta sui server, il Load balancer accederà a tutte le porte bloccate nel firewall.

Protocollo TCP

Se utilizzi il protocollo TCP nella configurazione del Load Balancer, quest'ultimo inoltra le richieste del client ai server senza modificare l'header. Quando un Load Balancer riceve le richieste, cerca di stabilire una connessione TCP al server tramite la porta configurata. Poiché i Load Balancer intercettano e distribuiscono il traffico tra client e server, i log di accesso ai server contengono l'indirizzo IP del Load Balancer invece dell'indirizzo IP del client originale.

Protocollo HTTP

Se utilizzi il protocollo HTTP per le connessioni del client al Load Balancer e per le connessioni dal Load Balancer ai server assegnati, il Load Balancer analizza gli header delle richieste HTTP. Le richieste HTTP e le risposte HTTP contengono spesso campi di intestazione che forniscono informazioni contestuali, come ad es. X-Forward-For-Header. L'X-Forward-For-Header viene utilizzata per trasmettere l'indirizzo IP dell'utente quando questo accede a un server web tramite un server proxy o un Load Balancer. A questo scopo è necessario modificare la configurazione della rispettiva applicazione (ad es. Apache).

Nota bene:

Per motivi tecnici, la trasmissione dell'IP tramite il Load Balancer, e quindi la soluzione qui descritta, funziona solo con accessi non criptati. Se la richiesta viene fatta tramite HTTPS, non è possibile inserire l'header perché la comunicazione tra client e server web è completamente criptata. Poiché nessun certificato può essere installato sul Load Balancer, non è possibile decifrare la comunicazione tra client e web server.

Puoi trovare una panoramica dei Load Balancer configurati per te nella sezione Rete > Load Balancing. In questa sezione troverai anche le informazioni più importanti sui singoli Load Balancer. Puoi trovare ulteriori informazioni su questa sezione qui.