LVS
lvs-users
Google
 
Web LinuxVirtualServer.org

Re: Accessing from Load Balancer with virtual IP-Address

To: jacob.rief@xxxxxx
Subject: Re: Accessing from Load Balancer with virtual IP-Address
Cc: LVS Mailinglist <lvs-users@xxxxxxxxxxxxxxxxxxxxxx>
From: Wensong Zhang <wensong@xxxxxxxxxxxx>
Date: Fri, 08 Oct 1999 13:26:57 +0800

jacob.rief@xxxxxx wrote:
> 
> Hi,
> how can I configure the Load Balancer so that I can access
> any service with the virtual IP from the Load Balancer itself.
> If the Load Balancer is configured for example:
> (eth0=195.96.23.250 eth1=172.16.0.1)
> # ipvsadm -A -t 195.96.23.250:80 -s wlc
> # ipvsadm -a -t 195.96.23.250:80 -r 172.16.0.10:80 -m
> I can access the Real Server with
> # lynx 172.16.0.10:80
> but I can't with
> # lynx 195.96.23.250:80
> Alert!: Unable to connect to remote host.
> 

Sorry that you cannot access the virtual service from the load
balancer. Only from out of the server cluster, you can view
the whole server cluster as a single high-performance and
highly available server.

> Something else...
> ipvsadm.c version1.1 should be patched,
> I think there is a small bug in there. For example:
> (eth0=195.96.23.250 eth1=172.16.0.1)
> # ipvsadm -A -t 195.96.23.250:82 -s wlc
> # ipvsadm -a -t 195.96.23.250:82 -r 172.16.0.10:80 -m
> 
> I can't delete this entry with
> # ipvsadm -d -t 195.96.23.250:82 -r 172.16.0.10:80
> setsockopt failed: No such file or directory
> No such destination
> 

It was fixed long ago. The ipvsadm.c is in 1.4 now. Please check
the www.linuxvirtualserver.org to get the latest tar ball.

Thanks anyway,

Wensong

> However, if I create a rule with the same port, everything works fine
> # ipvsadm -A -t 195.96.23.250:82 -s wlc
> # ipvsadm -a -t 195.96.23.250:82 -r 172.16.0.10:82 -m
> # ipvsadm -d -t 195.96.23.250:82 -r 172.16.0.10:82
> everything works fine
> This patch would solve the problem:
> --- ipvsadm.c   Thu Oct  7 11:04:19 1999
> +++ ipvsadm.c.orig      Tue Sep  7 14:50:46 1999
> @@ -198,6 +198,7 @@
>         if (mc.m_target == IP_MASQ_TARGET_VS && mc.m_cmd == IP_MASQ_CMD_ADD
>             && strlen(mc.m_tname) == 0) {
>                 strcpy(mc.m_tname,DEF_SCHED);
> +       }
> 
>          /*
>           * Set the default weight 1
> @@ -212,8 +213,7 @@
>          if ((mc.u.vs_user.masq_flags == IP_MASQ_F_VS_TUNNEL)
>              || (mc.u.vs_user.masq_flags == IP_MASQ_F_VS_DROUTE))
>                  mc.u.vs_user.dport = mc.u.vs_user.vport;
> -       }
> -
> +
>         sockfd = socket(AF_INET, SOCK_RAW, IPPROTO_RAW);
>         if (sockfd==-1) {
>                 perror("socket creation failed");
> 
> Regards, Jacob
> 



----------------------------------------------------------------------
LinuxVirtualServer.org mailing list - lvs-users@xxxxxxxxxxxxxxxxxxxxxx
To unsubscribe, e-mail: lvs-users-unsubscribe@xxxxxxxxxxxxxxxxxxxxxx
For additional commands, e-mail: lvs-users-help@xxxxxxxxxxxxxxxxxxxxxx

<Prev in Thread] Current Thread [Next in Thread>