For the sake of a couple of large clients, we want to setup an LVS cluster
to provide some redundancy. I am attempting to setup (for the second time
with a greivious headcold), a Streamline High Availability and Load
Balancing cluster (of two machines) using UltraMonkey. As it is, currently
I have a single server running a large number of sites using a combination
of virtualhosting (multiple beta sites -> single IP), and singular
virtualhosting (one site -> single IP). Right now there are approximately
100 IPs (out of a possibly 120) running off of the same server. Yeah, it's
dumb. I wish I had more servers and a bigger budget.
Another thing we would like to do is setup both internal (LAN) as well as
external (internet) addresses so that we can view them as
http://site1.internal.server1 , http://site1.internal.server2 , and
http://site1.internal.lvs-cluster. The internal portion was easy since I
only had to deal with 3 IPS and all of the sites are virtually hosted from
those three IPs.
Setting up the other 120 IPs is an issue however.
Right now, for each IP I have an entry like the following in my
ldirectord.cf file:
# IP Address 123.4.50.15
virtual=123.4.50.15:80
real=123.4.50.2:80 gate
real=123.4.50.3:80 gate
fallback=127.0.0.1:80 gate
service=http
request="index.html"
receive="Test OK"
virtualhost=myserver.com
scheduler=rr
protocol=tcp
# IP Address ... (up to 126)
As far as I can tell when heartbeat tries to direct ldirectord to become
active when taking over these IPs it fails because it can't find the proper
script.
My haresources file looks like this:
seahawk \
ldirectord \
LVSSyncDaemonSwap::master \
IPaddr2::192.168.0.3/24/eth1/192.168.0.255
seahawk \
ldirectord \
LVSSyncDaemonSwap::master \
IPaddr2::123.4.50.0/24/eth0/123.4.50.128
The ha-log file looks like this:
heartbeat: 2006/02/16_01:05:28 info: /sbin/ip link set eth1 up
heartbeat: 2006/02/16_01:05:28 /usr/lib64/heartbeat/send_arp -i 200 -r 5 -p
/var/lib/heartbeat/rsctmp/send_arp/send_arp-192.168.0.3 eth1 192.168.0.3
auto 192.168.0.3 ffffffffffff
heartbeat: 2006/02/16_01:05:28 ERROR: Cannot locate resource script seahawk
heartbeat: 2006/02/16_01:05:28 ERROR: Cannot locate resource script seahawk
heartbeat: 2006/02/16_01:05:28 ERROR: Cannot locate resource script seahawk
heartbeat: 2006/02/16_01:05:28 CRIT: Giving up resources due to failure of
seahawk
heartbeat: 2006/02/16_01:05:28 info: Releasing resource group: seahawk
ldirectord LVSSyncDaemonSwap::master
IPaddr2::192.168.0.3/24/eth1/192.168.0.255 seahawk ldirectord
LVSSyncDaemonSwap::master IPaddr2::123.4.50.0/24/eth0/123.4.50.128
heartbeat: 2006/02/16_01:05:28 info: Running /etc/ha.d/resource.d/IPaddr2
216.94.150.0/24/eth0/216.94.150.128 stop
heartbeat: 2006/02/16_01:05:28 info: Running
/etc/ha.d/resource.d/LVSSyncDaemonSwap master stop
heartbeat: 2006/02/16_01:05:28 info: ipvs_syncmaster down
heartbeat: 2006/02/16_01:05:28 info: ipvs_syncbackup up
heartbeat: 2006/02/16_01:05:28 info: ipvs_syncmaster released
heartbeat: 2006/02/16_01:05:28 info: Running /etc/init.d/ldirectord stop
heartbeat: 2006/02/16_01:05:29 ERROR: Cannot locate resource script seahawk
heartbeat: 2006/02/16_01:05:29 ERROR: Cannot locate resource script seahawk
heartbeat: 2006/02/16_01:05:30 info: Retrying failed stop operation
[seahawk]
...
I assume I've screwed up the haresources definition for the second block of
IPs but until I get rid of this cold I doubt I'll think straight enough to
do it. :P
__________________________________________________________
Dan Brown
zu.com communications inc. http://www.zu.com
Web Design - Databases - Creative
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
324 Duchess Street Saskatoon SK S7K 0R1
tel.1.306.653.4747 fax.1.306.653.4774
|