Hi,
I am trying to setup an lvs in a fairly large environment (university).
The administration here does not want us to use a highly customized kernel,
so applying the "hidden" patch is not possible for me to get around the arp
issues. As of right now, I have my lvs on a tiny test switch with a line
coming from our router, set up as follows:
VIP = x.x.x.208/32 on eth0:208
testd1 (Director 1):
DIP1 = eth0:217 x.x.x.217
testd2 (Director 2):
DIP2 = eth0:218 x.x.x.218
testn1 (Realserver 1):
RIP1 = eth0 x.x.x.219
VIP = tunl0:208 x.x.x.208
testn2 (Realserver 2):
RIP2 = eth0 x.x.x.220
VIP = tunl0:208 x.x.x.208
So far, I have set up the director:
# echo "1" >/proc/sys/net/ipv4/ip_forward
# ifconfig eth0:208 x.x.x.208 broadcast x.x.x.223 netmask 255.255.255.255
# ipvsadm -C
# ipvsadm -A -t x.x.x.208:www -s wrr
# ipvsadm -a -t x.x.x.208:www -r x.x.x.219 -i -w 1
# ipvsadm -a -t x.x.x.208:www -r x.x.x.220 -i -w 1
and Realservers:
# echo "1" >/proc/sys/net/ipv4/ip_forward
# insmod ipip
# /sbin/ifconfig tunl0 up
# echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
# echo 1 > /proc/sys/net/ipv4/conf/tunl0/arp_ignore
# echo 2 > /proc/sys/net/ipv4/conf/tunl0/arp_announce
# ifconfig tunl0:208 x.x.x208 up
# route add -host x.x.x.217 dev tunl0:208
I was able to see connections as inactive on ipvsadm -L, but the client
never actually accesses the webserver. Am I using the arp_ignore and
arp_announce flags correctly?
Thanks,
Matt Chan
|