Mailing List Archive

Wackamole on RH73 servers
Hey all:

Based on the need to have load-balanced and redundant Apache servers, I
decided to try my hand at getting Wackamole running, but I've run into some
issues.

I should first post a disclaimer that I am not a programmer, and fully
expect this to turn out to be a misconfiguration on my part... :)

For testing purposes, I have two servers running Red Hat 7.3 with all the
latest patches. Here is my conf file (there is only one line difference per
machine, see comments):

Spread = 4803
SpreadRetryInterval = 5s
Group = dev
Control = /var/run/wack.it

prefer eth0:192.168.1.80/24 # this line is eth0:192.168.1.81/24 on the other
machine

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

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.

Thank you!

---------------
Ben Brown
Network & Systems Administrator
The Video Journal of Education & TeachStream
ben.brown@teachstream.com
Office: 800.572.1153
Fax: 888.566.6888
Wackamole on RH73 servers [ In reply to ]
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