[Pacemaker] Complicated dependences between resources and nodes
Antonis Christofides
anthony at itia.ntua.gr
Sat Jul 28 10:46:02 UTC 2012
Hi,
short questions:
Is it possible to dictate that resource R1 runs on a different node than
resource R2? Is it possible when moving R1 from node N1 to N2 to first start it
in N2 and only after it starts to stop it in N1? Is it possible to run R1 at the
same time in all nodes, and restart it in all nodes whenever R2 is
started/moved? How about running R1 in all nodes except the node in which R2 is
running?
Long version, with one specific problem (which might be solved in one of the
above ways):
(Sorry for having cross-posted it already on the corosync mailing list, on which
I think it was off topic.)
I have a kind of WAN cluster:
failover IP address
|
|
+--Many network devices--+
| |
machine1 machine2
DRBD primary DRBD secondary
The two machines are in different LANs
In order to switch the failover IP address to the other machine, I send
an HTTP request to a server, and then the network machinery makes the
routing change. The switch takes 20 seconds.
So, in order for the service to move from machine1 to machine2, the order
in which pacemaker should start and stop resources should be:
1) Stop the MyFailoverIP resource on machine 1 (this does nothing,
since you can't "stop" the routing of the IP, you can only move it
elsewhere).
2) Start the MyFailoverIP resource on machine 2 (this will take 20
seconds).
3) Stop the DRBD resource on machine1 (=> make it a secondary).
4) Start the DRBD resource on machine2 (=> make it a primary).
I understand how I could make the order be (3) - (1) - (2) - (4), but in
that case I'd have 20 seconds of downtime. Is it possible to achieve the
above order, and how? I.e. a dependence that service A stops in one node
only after service B starts elsewhere.
More information about the Pacemaker
mailing list