Newsgroup: it.comp.os.linux.sys
Titolo: Linux Virtual Server

Riesco a far funzionare LVS per un solo Virtual Host
Qualcuno lo usa e puo' aiutarmi a capire perche'?
Grazie
Ciao

Massimo Matteuzzi wrote:

..perche quando arriva una richiesta da un ip, lvs non legge
l'intestazione HTTP 1.0/1.1 per cui non sa a chi č riferita.
Io ho postato questa questione sulla lista  e Pietro Ravasio mi ah
risposto cosě:
--------
Hi,
I'm actually using LVS + Apache Name Virtual Server. This is my
configuration:
Public IP: 151.39.82.13 (
www.abbeynet.it
, 
www.chocophone.com
,
www.ravasio.net
 and so on...)
Real Server IP#1: 172.16.0.11 (rs1.localnet)
Real Server IP#2: 172.16.0.12 (rs2.localnet)
etc...
httpd.conf file on rs1.localnet:
....
NameVirtualHost 172.16.0.11
<VirtualHost 172.16.0.11>
         ServerAdmin ro...@rs1.localnet
         DocumentRoot /home/httpd/html
         ServerName rs1.localnet
         ServerAlias rs1b.localnet
</VirtualHost>
<VirtualHost 172.16.0.11>
         ServerAdmin 
webm...@abbeynet.it
         DocumentRoot /home/httpd/abbey-domini
         ServerName 
www.abbeynet.it
         ScriptAlias /cgi-bin/ "/home/httpd/abbey-domini/cgi-bin/"
         ErrorLog /var/log/httpd/abbey-domini/error_log
         CustomLog /var/log/httpd/abbey-domini/access_log common
         ServerAlias *.
abbeynet.it
 *.
abbeynet.net
 *.
abbeyphone.com
*.
abbeyphone.net
 *.
parlagratis.it
 *.
telefonategratis.it
 *.
freecallme.it
 *.
freecallme.net
 *.
freecallme.net
</VirtualHost>
<VirtualHost 172.16.0.11>
         ServerAdmin 
webm...@chocophone.it
         DocumentRoot /home/httpd/choco-domini
         ServerName 
www.chocophone.it
         ScriptAlias /cgi-bin/ "/home/httpd/choco-domini/cgi-bin/"
         Alias /files /home/httpd/choco-files
         Alias /adv /home/httpd/choco-banners-sito
         Options Indexes FollowSymLinks MultiViews Includes
         ErrorLog /var/log/httpd/choco-domini/error_log
         CustomLog /var/log/httpd/choco-domini/access_log common
         ServerAlias *.
chocophone.it
 *.
chocophone.com
 *.
chocophone.net
</VirtualHost>
  ..And so on...
The important thing to remember is to use Real Servers' IP number (and
not
public one(s) in VirtualHost directive.
---------------------------

I miei real server sono:
- 
server1.dominio.it
 (10.0.0.91)
- 
server2.dominio.it
 (10.0.0.92)
- 
server3.dominio.it
 (10.0.0.93)
Su questi server gira apache che e'
configurato con 2 virtual HOST:
- 
virtua01.dominio.it
 (123.123.123.111)
- 
virtua02.dominio.it
 (123.123.123.222)
Su ogni virtual HOST sono mappati diversi siti WEB
tutti come nel seguente esempio:
NameVirtualHost 123.123.123.111
<VirtualHost 123.123.123.111>
        ServerName 
www.prova.it
        DocumentRoot /www/prova
        ...
</VirtualHost>
PROBLEMA e caratteristiche:
- interrogando i WEB sites mappati
  su "
virtua01.dominio.it
" funziona
  tutto bene
- interrogando quelli su "virtua02"
  scade il timeout e compare la pag.
  di errore del browser  
- la configurazione di Apache su una
  macchina singola funziona correttamente
Ecco come si presenta la configurazione di LVS
Dove sto sbagliando?
Grazie in anticipo
primary = 10.0.0.91
service = lvs
rsh_command = rsh
backup_active = 1
backup = 10.0.0.92
heartbeat = 1
heartbeat_port = 539
keepalive = 6
deadtime = 18
network = direct
virtual 
virtua01.dominio.it
 {
     active = 1
     address = 123.123.123.111 eth0:1
     port = 80
     pmask = 255.255.255.0
     send = "GET / HTTP/1.0\r\n\r\n"
     expect = "HTTP"
     load_monitor = rup
     scheduler = wlc
     protocol = tcp
     timeout = 6
     reentry = 15
     server 
server1.dominio.it
 {
         address = 10.0.0.91
         active = 1
         weight = 1
     }
     server 
server2.dominio.it
 {
         address = 10.0.0.92
         active = 1
         weight = 1
     }
     server 
server3.dominio.it
 {
         address = 10.0.0.93
         active = 1
         weight = 1
     }
}
virtual 
virtua02.dominio.it
 {
     active = 1
     address = 123.123.123.222 eth0:2
     port = 80
     send = "GET / HTTP/1.0\r\n\r\n"
     expect = "HTTP"
     load_monitor = rup
     scheduler = wlc
     protocol = tcp
     timeout = 6
     reentry = 15
     server 
server1.dominio.it
 {
         address = 10.0.0.91
         active = 1
         weight = 1
     }
     server 
server2.dominio.it
 {
         address = 10.0.0.92
         active = 1
         weight = 1
     }
     server 
server3.dominio.it
 {
         address = 10.0.0.93
         active = 1
         weight = 1
