LVS
lvs-users
Google
 
Web LinuxVirtualServer.org

RE: single load-balancer, multiple clusters?

To: "LinuxVirtualServer.org users mailing list." <lvs-users@xxxxxxxxxxxxxxxxxxxxxx>
Subject: RE: single load-balancer, multiple clusters?
From: Alan Murrell <silkbc@xxxxxxxxx>
Date: Fri, 4 Apr 2003 19:09:24 -0500 (EST)
Hello,

--- pb <peterbaitz@xxxxxxxxx> wrote:
> Yes, one LVS load balancer (director) could load
> balance independently to each of your three groups

So if I have my three web clusters like this:

  1. linuxweb.foo.com (VIP: 10.10.10.1)
  2. ntdbweb.foo.com (VIP: 192.168.10.1)
  3. ntwen.foo.com (VIP: 192.168.100.1)

(Note: Let's pretend for the purposes of this email
that the IP's I gave above are public IP's)

If a WWW request comes in on '10.10.10.1', the
director will know to give it to one of the servers in
the 'linuxweb.foo.com' cluster (based on whatever
criteria I setup for the servers in that cluster:
priority, load, round-robin, etc.)  And the same for
WWW requests coming in on the other VIP's?

That's all I really want right now, is the WWW or FTP
request getting directed to the correct cluster based
on VIP, but I'd just rather just have one director, as
opposed to three different ones. 

> ntweb.foobar.com.  However load balancing is based
> on SERVICE, such as HTTP(80), LDAP(389), SENDMAIL
> (25).

Okay, now I'mgetting a little confoosled :-)  So I can
direct a WWW or FTP request to the proper cluster
based on the VIP it is coming in on.  Easy enough.

However, when you talk about the "load balancing", I
assume you are referring to how that traffic gets
distributed to the Real Servers within the cluster,
correct?

> 
> http_group {
>        Port 80
>        IP 192.168.2.2  eth0:1
>        real_server1 { 192.168.1.3 
>                  }
>        real_server2 { 192.168.1.4 
>                  }
>  }

If I were to do as I propose above (three different
VIP's with WWW and FTP traffic being directed to the
appropriate cluster based on the VIP), would the
"psuedo code" then look like this:

  linux_http_group {
      Port 80
      IP 10.10.10.1 eth0:1
      real_server1 { 10.10.10.2
          }
      real_server2 { 10.10.10.3
          }
  }

  ntdb_http_group {
      Port 80
      IP 192.168.10.1 eth0:1
      real_server1 { 192.168.10.2
          }
      real_server2 { 192.168.10.3
          }
  }

  nt_http_group {
      Port 80
      IP 192.168.100.1 eth0:1
      real_server1 { 192.168.100.2
          }
      real_server2 { 192.168.100.3
          }
  }

(and something similar for FTP, presumably?)

Does that look about right, or am I way off base here?

(Looks like we may be writing a whole new section of
the HOWTO here! lol)

Alan


       


______________________________________________________________________ 
Post your free ad now! http://personals.yahoo.ca
<Prev in Thread] Current Thread [Next in Thread>