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
|