Newsgroup: it.comp.reti.ip-admin
Titolo: DNS round robin e Apache Server

Salve a tutti !
Sto lavorando ad un progetto di revisione architetturale dove, a
partire da un'applicazione che monta 1 Apache HTTP Server dobbiamo
passare ad un cluster di 3 Apache Server.
Il mio dilemma è: se metto in piedi un gruppo di istanze di Apache
Server, come faccio a fare in modo che il carico venga distribuito tra
le varie istanze ?
Pensavo di configurare un DNS-round robin, ma poi come va a finire con
le sessioni web ? il DNS round-robin mi mantiene per ogni IP il
collegamento con la stessa istanza di Apache ? (Server affinity)
Occorre un servizio che distribuisca sì le request tra i vari server
Apache, ma una volta iniziata la sessione web MANTENGA la
conversazione sullo stesso server.....
DNS round robin ? Hardware load balancer ?
Grazie 1000
Francesco


Se hai sessioni da gestire non puoi pensare di effettuare il roundrobin
via DNS (almeno, non nella maniera "classica").
Devi usare un bilanciatore.
Non necessariamente HW (che tipicamente costan parecchio). Su
http://www.linuxvirtualserver.org/
 vedi come il kernel linux possa già
farlo di suo.
Oppure, dato che a quanto dici interessa solamente bilanciare
HTTP/HTTPS, esistono reverse proxy pensati esplicitamente per questo
scopo, vedi ad esempio Pound: 
http://www.apsis.ch/pound/
.
Nel primo caso puoi garantire che lo stesso utente finisca sempre sullo
stesso server basandoti sui dati di L3 (IP di origine, sostanzialmente),
mentre nel secondo, lavorando a livello applicativo, puoi bilanciare in
maniera più "mirata", ad esempio sulla base dei cookie di sessione.
In entrambi i casi ottieni ottime prestazioni ad un costo piuttosto
irrisorio.
Ovviamente tieni conto del fatto che inserire un bilanciatore (che sia
HW o no) significa inserire un SPOF in una struttura che di per sè
sarebbe già funzionalmente ridondata (almeno per la parte webserver, per
il backend lo sai tu), e son da fare tutte le considerazioni del caso
sull'opportunità di ridondarlo.
Bye.
-- 
Skull & Bones (ER6n Silver)
Neo:  I know Sendmail!
Morpheus:  Show me.

 reverse proxy
si ok.. non dico che "non vadano", solo che l'utilizzo dei
reverse proxy ha una serie di effetti collaterali e limitazioni
che secondo me andrebbero valutati/valutate attentamente
io, prima di suggerire una soluzione piuttosto che un'altra
cercherei di capire come è impostata attualmente l'intera
architettura e cosa si desideri realmente ottenere ;-)

 scopo, vedi ad esempio Pound: 
http://www.apsis.ch/pound/
.
Può anche fare URL rewrite? Dal sito non lo capisco (anche se "a request
redirector: requests may be distributed among servers according to the
requested URL." potrebbe avvicinarcisi), e potrebbe sostituire l'Apache che
fa sta cosa nella mia installazione (sicuramente consumerà meno risorse,
immagino)
-- 
Vide

 architettura e cosa si desideri realmente ottenere ;-)
Ciao,
grazie delle vostre risposte molto utili.
Volevo un chiarimento, quando dici che le "sessioni" sono da evitare.
In effetti non posso fare a meno delle sessioni perchè Apache Server
fa
da front-end ad un application Server Java: Tomcat. (Scusate, ho
omesso di specificarlo !)
La sessione viene utilizzata dall'application server per memorizzare
informazioni critiche relative all'utente.
Però da quello che so la sessione viene comunque memorizzata nei
cookies
durante la navigazione.....
che mi dite ?
ti riferisci