Cosa restituisce un bilanciatore del carico?

6

Quando un utente raggiunge il bilanciamento del carico e il bilanciamento del carico determina a quale server Web inoltrare, cosa succede dopo? Il bilanciatore del carico inoltra la richiesta e tutti i suoi dati al server web, riceve la risposta del server web e la restituisce all'utente?

O è più simile a un reindirizzamento in cui il bilanciamento del carico restituisce letteralmente solo l'indirizzo IP del server selezionato al browser e il browser deve aprire una nuova connessione con il server specificato?

Il mio istinto dice che non sarebbe il secondo perché ciò implicherebbe che tutti gli indirizzi IP del server web sarebbero pubblici e ho pensato per motivi di sicurezza che è meglio esporre solo gli indirizzi di bilanciamento del carico al pubblico. Ma di nuovo non sono esattamente sicuro perché se abiliti SSL termination al servizio di bilanciamento del carico, SSL non dovrebbe essere ristabilito di nuovo con il server reindirizzato?

    
posta smaili 16.03.2016 - 19:22
fonte

3 risposte

10

L'IP finale non è pubblicato. Il processo funziona in un modo in cui il client (un utente che colpisce il bilanciatore) crede di stare comunicando con il bilanciatore, mentre parla con un nodo reale.

In una spiegazione molto semplice , la maggior parte delle transazioni funziona in questo modo:

  1. Un utente effettua una richiesta al servizio di bilanciamento del carico.
  2. Il bilanciatore decide quale nodo è il più adatto (in base alla strategia che stai usando per il bilanciamento) e sceglie (cambia) l'IP di destinazione.
  3. (Qui è dove avviene la magia.) Il nodo riceve una richiesta, accetta la connessione e risponde al bilanciatore.
  4. Il bilanciatore cambia l'IP di risposta su quello virtuale, quello del bilanciatore e inoltra la risposta all'utente.
  5. Voilà, l'utente riceve una risposta con l'IP della richiesta iniziale, anche se è stata effettivamente elaborata da qualche altra parte.

Tenere presente che la riscrittura dei pacchetti (la modifica dell'indirizzo IP nel passaggio 4) è molto importante. Senza di esso il client, ricevendo un pacchetto da un IP di cui non si fida, semplicemente scarterebbe la risposta.

    
risposta data 16.03.2016 - 19:42
fonte
3

Il sistema di bilanciamento lad funziona sul livello 4 OSI. Decapsula il pacchetto fino al numero di porta e poi dirige il pacchetto con una delle 3 modalità.

Il bilanciamento del carico può funzionare in modalità 3: 1. Routing diretto In questa modalità il tuo real server utilizza IP pubblico. Il bilanciatore riceve il pacchetto e decapsula fino al livello 4. Se nella regola di bilanciamento del carico corrisponde, verrà reindirizzato il pacchetto (senza modificarlo) a uno di realserver. Realserver ha un indirizzo alias uguale con l'indirizzo loadbalance, quindi quando realserver riceve il pacchetto con una destinazione xxx.xxx.xxx.xxx definisce quel pacchetto direttamente al suo indirizzo (alias). E poi la vera richiesta di risposta del server al cliente diretto (non attraverso loadbalance).

2. NAT In questa modalità il pacchetto reindirizza a realserver con la modifica dell'indirizzo di destinazione. L'indirizzo di destinazione verrà sostituito con l'indirizzo realserver (NAT). In questa modalità il tuo real server non ha bisogno di IP pubblico, può utilizzare la tua rete locale. E poi il pacchetto sarà la consegna nessun nuovo indirizzo di destinazione. Quando realserver riceve il pacchetto, risponderà all'indirizzo di richiesta del cliente tramite gateway (loadbalance). In questa modalità, il tuo loadbalance viene utilizzato come router e amp; come gateway del tuo realserver.

3. Tunnel In questa modalità il pacchetto verrà sintonizzato con il nuovo indirizzo src-dst (come vpn) per il pacchetto di consegna su realserver. quando il pacchetto viene ricevuto in realserver, realserver risponderà tramite pipe tunneled loadbalance. E poi loadbalance delivery reply ti real request source address.

Per HTTPS / SSL, loadbalance non lo elabora, processo di bilanciamento del carico fino al livello 4 OSI. Il livello 5 sopra sarà processato in realserver. Quindi l'hanshake TCP a 3 vie, SSL / HTTPS, è stato elaborato in realserver. Loadbalance only director of the packet.

Spero che la mia piccola spiegazione possa aiutare qualcosa.

    
risposta data 17.03.2016 - 07:58
fonte
-1

Un bilanciamento del carico può essere un router o un proxy inverso:

LVS è lo standard di settore Layer 4 (basato sul routing) modulo di bilanciamento del carico per il kernel Linux. Viene utilizzato in vari sistemi di bilanciamento del carico commerciale tra cui Barracuda, Loadbalancer.org e Kemp Technologies. Barracuda e Loadbalancer.org utilizzano anche HAProxy per il bilanciamento del carico di livello 7 ( proxy inverso basato ).

Ps. Ho dimenticato che questo non mostra da dove vengo, che è ovviamente Loadbalancer.org

    
risposta data 26.06.2017 - 09:12
fonte

Leggi altre domande sui tag