LVS
lvs-users
Google
 
Web LinuxVirtualServer.org

Re: Praise and Help Request (Solution)

To: "LinuxVirtualServer.org users mailing list." <lvs-users@xxxxxxxxxxxxxxxxxxxxxx>
Subject: Re: Praise and Help Request (Solution)
From: Jeff Amaral <jamaral@xxxxxxx>
Date: Tue, 15 Feb 2005 16:08:35 -0500
Hello All,

Thanks to help from folks on this list and some RTFMing (Joe Mack's HOWTO), I was able to solve my arp problem, and my streamlined cluster is humming along nicely, now.

I figured I would post my solution here for anyone else stuck in a similar situation.

To recap, I'm using a stock install of SUSE enterprise 9 to run the http service on what the folks at UltraMonkey call a 'Streamline High Availability and Load Balancing' topology. This gives me high availability and load balancing with just two servers, and neither of the servers has to just sit there idling. When all is well, both servers respond to http requests, and if the node with the virtual IP and ldirectord fails, the second node can take over those duties. This page was essential in helping me set up this configuration, but I should note that I did _not_ use UltraMonkey:
http://www.ultramonkey.org/2.0.1/topologies/sl-ha-lb-eg.html

I just used the stock HA software that comes with SUSE:
- heartbeat
- ldirectord
- ipvsadm (for debugging)

I set up everything according to the document above but ran into two problems:

1. Getting the loopback alias to start on reboot in SUSE. Turns out that you must add three lines to /etc/sysconfig/network/ifcfg-lo :
IPADDR_lvs=[the virtual ip address of the cluster]
NETMASK_lvs=255.255.255.255
LABEL_lvs=0

2. The arp problem. SUSE enterprise 9 uses a version of kernel 2.6.5, so I was able to use the arp_ignore and arp_announce device flags. I created the file /etc/sysctl.conf (it didn't exist) and added the following:

net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2

To have sysctl.conf read at startup, I enabled the boot.sysctl service (via Yast2).

The above settings came from:
http://www.austintek.com/LVS/LVS-HOWTO/HOWTO/LVS-HOWTO.arp_problem.html#2_6_arp_announce

(I used the the RedHat example. Frankly, I just copied the device flag settings without really understanding them. If anyone wants to shed light here, I'd appreciate it.)

Everything is working as expected, now. Hope this helps someone.

Jeff

--
Jeff Amaral
MoS Web Team
jamaral@xxxxxxx


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