Tickets [#64] and [#2795] added support to prevent multiple active controllers in a split network scenario. However, nodes residing in the smaller network partitions can remain running. Meanwhile the active SC residing in the largest partition may failover assignments at the unreachable nodes to other reachable nodes, causing conflicts when the partitions are merged.
The original proposal involved two parts, a CLM part and an AMF part. CLM would not announce a node has left the cluster until the fencing of the node has completed successfully. However, some users rely on timely CLM notifications to send out node related events and alarms. Thus the proposal has been changed to be done in AMF only.
AMF should not perform a node failover, until a node has been fenced.
When using remote fencing, this means that the fencing API has reported that the fencing was completed. When remote fencing is disabled, we need to wait for at least IMMSV_SC_ABSENCE_ALLOWED seconds (the configuration in immd.conf) before considering the fencing to be completed.
If MDS connectivity is re-established while waiting, AMF can wait a few seconds for a node_up (with leds_set == false) message to indicate the node has been already rebooted. Otherwise, AMF can send a message to the node asking it to reboot itself. When AMF sees that the MDS connectivity is lost again, it can consider the fencing to be complete witout the need to wait the full IMMSV_SC_ABSENCE_ALLOWED time.
Potentially waiting up to IMMSV_SC_ABSENCE_ALLOWED seconds will affect availability. This option must be configurable via IMM and take effect without a restart. It is up to the user to turn on, if node disturbances are planned or expected in the environment due to poor quality links between the nodes.
Additionally, we should allow the user to set this 'node failover' timer to a smaller value than IMMSV_SC_ABSENCE_ALLOWED, with the understanding that this introduces the risk of duplicate assignments.
Tickets: #2795
Tickets: #2920
Tickets: #2952
Tickets: #2957
Tickets: #64
Wiki: ChangeLog-5.19.01
Wiki: NEWS-5.19.01
Diff:
Related
Tickets:
#2795Tickets:
#64Diff:
Diff:
Diff:
Diff:
Diff:
Other applications are probably also using CLM notifications and rely on timely notifications. Perhaps we should do this in AMF only.
Last edit: Gary Lee 2018-09-20
Diff:
Related
Tickets:
#2795Tickets:
#64Diff:
Initial version
Last edit: Gary Lee 2018-10-17
Revision 2
Last edit: Gary Lee 2018-10-19
Rev3
Last edit: Gary Lee 2018-10-23
Diff:
Proposed changes to AMF doc. Renumbered 2.2.18 Excessive assignments to 2.2.19. Added 2.2.18 Network paritioning. Added timers to Section 3.3.