Re: Wackamole on RH73 servers

Theo Schlossnagle <[email protected]> Tue, 24 Jun 2003 22:52:18 -0400
Newsgroups gmane.comp.apache.mod-wackamole.general
Message-ID <[email protected]>
On Friday, Jun 13, 2003, at 16:46 US/Eastern, Ben Brown wrote:
> prefer eth0:192.168.1.80/24 # this line is eth0:192.168.1.81/24 on the 
> other
> machine

Leave the prefer line out.  It isn't buying you anything.

> VirtualInterfaces {
> 	eth0:192.168.1.80/24
> 	eth0:192.168.1.81/24
> }

Technically, I believe that these should be /32.  This is clearly 
documented on FreeBSD and I think it works the same way on Linux.  
While I know that having the aliases with /24 netmasks works, it 
doesn't make all that much sense to me -- as they aren't clearly 
aliases, but reather secondary IPs.

> Arp-Cache = 90s
>
> Notify {
> 	eth0:192.168.1.1/32
> 	eth0:192.168.1.13/32
> 	eth0:192.168.1.10/32
> 	arp-cache
> }
> balance {
> 	AcquisitionsPerRound = 1
> 	interval = 4s
> }
> mature = 5s
>
> When I fire up wackamole, the first server to load gets BOTH IP 
> addresses.
> Of course, when it dies, it passes BOTH on to the second machine. This
> (obviously) doesn't help much with load-balancing. :) I am sure that I 
> just
> configured something wrong, but I've read the mail archives, and can't 
> seem
> to figure it out. Any help would be much appreciated.

It is important to note come caveats with Linux IP aliases...  I 
believe that if you do this:
up 10.0.0.1/24
up 10.0.0.2/24
up 10.0.0.3/24
down 10.0.0.1/24

it will result in all of the interfaces dropping.  This is very 
confusing to me, but from all my testing it appears to be some inherent 
dependency on the first IP address assigned in that network.

Since wackamole needs to talk using spread anyway, the machines need 
permanent IP addresses -- which need not be advertised to the public.

So exampe, if you 192.168.1.80 and 192.168.1.81 to be the two VIPs 
managed by the two machines, those machines still need "unwavering 
identities".  Let's assign machine A 192.168.1.70 and machine B 
192.168.1.71.

Machine A has 192.168.1.70/24 on eth0.
Machine B has 192.168.1.71/24 on eth0

Spread should be configured to talk over this "primary" IPs (70 and 71).

Each has an identical wackamole.conf file with no "Prefer" directive 
and the VirtualInterfaces look like this:

VirtualInterfaces {
	eth0:192.168.1.80/32
	eth0:192.168.1.80/32
}

I believe this will accomplish your goal.

-- 
Theo Schlossnagle
Principal Consultant
OmniTI Computer Consulting, Inc. -- http://www.omniti.com/
Phone:  +1 410 872 4910 x201     Fax:  +1 410 872 4911
1024D/82844984/95FD 30F1 489E 4613 F22E  491A 7E88 364C 8284 4984
2047R/33131B65/71 F7 95 64 49 76 5D BA  3D 90 B9 9F BE 27 24 E7