After struggling with RedHat High Availability Server for a week to no
avail, I have decided to try Ultramonkey. However, I can't quite get it to
work. I am using RedHat 6.2 as the platform and have installed all of the
RPMS (including the kernel upgrades) fro the Ultramonkey website. My setup
involves 2 Load Balancers and 2 Web Servers:
Load Balancer 1 (lb1)
-----------------------
eth0: 195.50.89.219
eth1: 192.168.0.219
External floating address: 195.50.89.225
Internal floating address: 192.168.0.250
Load Balancer 2 (lb2)
------------------------
eth0: 195.50.89.220
eth1: 192.168.0.220
Web Server 1
---------------------------
eth0: 192.168.0.31
Web Server 1
---------------------------
eth0: 192.168.0.32
I have followed all of the instructions for a Highly Available, Load
Balanced Service at
http://ultramonkey.sourceforge.net/ultramonkey-1.0.1/topologies/index.html.
However, when I type ipvsadm -L -n, I get the following:
IP Virtual Server version 0.9.11 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 195.50.89.225:80 rr
-> 127.0.0.1:80 Local 1 0 0
Upon checking /var/log/ldirectord.log, I see the following:
[Wed Sep 13 11:11:39 2000|ldirectord.cf] Rereading Linux Director Daemon
config
[Wed Sep 13 11:11:39 2000|ldirectord.cf] Changing virtual server:
195.50.89.225:80
[Wed Sep 13 11:11:39 2000|ldirectord.cf] Removing real server:
(0*195.50.89.225:80)
[Wed Sep 13 11:11:39 2000|ldirectord.cf] Starting fallback server for:
195.50.89.225:80
This is driving me mad because I can verify that 192.168.0.31 is running a
webserver with an index.htm page that says "Test Page" that can be seen from
the load balancer. The webservers are also configured to use 192.168.0.250
as a gateway. What's even weirder is that my ldirectord.cf file has the
following line:
fallback=127.0.0.1:5080. So it should be redirecting to 127.0.0.1:5080, not
80 after it incorrectly detects 192.168.0.31 is down.
Does anyone know what I may have done wrong??? The only rule that I am
blatantly breaking is that I don't have a serial cable hooked up between the
two load balancers. My configuration files follow:
/etc/ha.d/conf/ldirectord.cf
timeout=4
checkinterval=1
fallback=127.0.0.1:5080
autoreload=yes
virtual=195.50.89.225:80
real=192.168.0.31:80 masq
real=192.168.0.32:80 masq
service=http
request="index.htm"
receive="Test Page"
scheduler=rr
#persistent=600
protocol=tcp
#virtual=1
# real=192.168.6.2:80 masq
# real=192.168.6.3:80 masq
# service=http
# request="index.html"
# receive="Test Page"
# scheduler=rr
# #persistent=600
/etc/ha.d/ha.cf
# File to wirte debug messages to
#debugfile /var/log/ha-debug
#
#
# File to write other messages to
#
#logfile /var/log/ha-log
#
#
# Facility to use for syslog()/logger
#
logfacility local0
#
# keepalive: how many seconds between heartbeats
#
keepalive 1
#
# deadtime: seconds-to-declare-host-dead
#
deadtime 3
# hopfudge maximum hop count minus number of nodes in config
#hopfudge 1
#
# serial serialportname ...
serial /dev/ttyS0
#
# Only for serial ports. It applies to both PPP/UDP and "raw" ports
#
# This means run PPP over ports ttyS1 and ttyS2
# Their respective IP addresses are as listed.
# Note that I enforce that these are local addresses. Other addresses
# are almost certainly a mistake.
#ppp-udp /dev/ttyS1 10.0.0.1 /dev/ttyS2 10.0.0.2
#
# Baud rate for both serial and ppp-udp ports...
#
#baud 19200
#
# What UDP port to use for udp or ppp-udp communication?
#
#udpport 1001
#
# What interfaces to heartbeat over?
#
udp eth0
udp eth1
#
# Watchdog is the watchdog timer. If our own heart doesn't beat for
# a minute, then our machine will reboot.
#
#watchdog /dev/watchdog
#
# Nice_failback sets the behavior when performing a failback:
#
# - if it's on, when the primary node starts or comes back from any
# failure and the cluster is already active, i.e. the secondary
# server performed a failover, the primary stays quiet, acting as a
# secondary. This way some operations like syncing disks can be
# easily done.
# - if it's off (default), the primary node will always be the
primary,
# whenever it's powered on.
#
nice_failback off
#
# Tell what machines are in the cluster
# node nodename ... -- must match uname -n
node lb1
node lb2
/etc/ha.d/haresources:
lb1 IPaddr::192.168.0.250/24/eth0 IPaddr::195.50.89.225/24/eth1
ldirectord::ldirectord.cf
The following RPMS are installed:
perl-libnet-1.0606-2.i386.rpm
perl-Net-SSLeay-1.05-4
perl-HTML-Parser-3.07-1
perl-5.00503-10
LWP.pm-5.48-2
MIME-Base64-2.11-2.i386.rpm
openssl-0.9.5a-2.i386.rpm
URI-1.06-1.i386.rpm
heartbeat-0.4.7bpre1-1.um.1.i386.rpm
initscripts-5.00-1.1.um.1.i386.rpm
ultramonkey-doc-1.0.1-1.noarch.rpm
I am using kernel 2.2.14-5.0.14.um.3...
Thanks in advance to anyone who helps.
Regards,
Scott
|