hi all
perhaps this query is better suited to linux-ha, but i'm sure many
of you have dealt with similar issues.
i'm using lvs/nat for externally available services - http/s,ftp,dns,smtp
and lvs/dr for some internal only services - http
i'm using mon on the cluster manager to monitor the various services
provided by the cluster and to take mitigating action through a
lvs.alert on failure. i have been using this mechanism to provide
failover for services running within redundant pairs in addition to
those in realserver pools.
there are two internal services which i'm reluctant to handle as
internal virtual services - mysql and msession. these are both high
volume services and only need to be failed over to the redundant pair
at failure. i do wish the transition to be triggered by mon on the
lvs manger, so heartbeat does not work for me in this instance.
to illustrate:
i have a pair of mysql servers in a master/slave relationship -
dbsrv1 (master) and dbsrv2 (slave). the service is provided by a
virtual interface (dbsrv) which is generally attached to the master.
my options for failover here would appear to be:
1) IP takover of the virtual interface triggered externally (somehow)
by mon. ideas ? perhaps net-snmp.
2) dbsrv is a CNAME for dbsrv1 and use nsupdate via mon to do a
dynamic DNS update to switch the CNAME to dbsrv2
3) dbsrv is an internal DR virtual service intitially routing to
dbsrv1 and mon simply siwtches the realserver on the cluster manager
as i mentioned before, i'm reluctant to shift additional load onto
the cluster manager and introduce any latency to this service by
using the third option although its nice and clean.
any suggestions/comments would be appreciated.
nick
|