- **summary**: clm: Select multiple headless partitioned cluster to join into
one cluster --> clm: Select one from multiple headless partitioned cluster to
join into one cluster
---
** [tickets:#2936] clm: Select one from multiple headless partitioned cluster
to join into one cluster**
**Status:** unassigned
**Milestone:** future
**Created:** Thu Oct 04, 2018 08:47 AM UTC by Minh Hon Chau
**Last Updated:** Thu Oct 04, 2018 08:56 AM UTC
**Owner:** nobody
In the event of split network that separates nodes of cluster into multiple
paritions, each partition may have one or no SC. Network merges back, 2 SCs
will be self-fenced and rebooted as current OpenSAF behavior, leaves multiple
partitions as headless clusters. Also, before network merges back, if the SC in
each partition shutdown, which also leaves multiple partitions in headless.
Once a SC comes back, we have multiple headless clusters joining into a single
cluster. These headless clusters will be conflicted in term of IMM data and AMF
assignments.
In order to address this problem, this ticket introduces the partition
selection in CLM, in which CLM is responsible to select only one partition
among others to join the cluster.
Some changes:
- Node Join request will add two fields:
(1) previous_director_id: The node id of director that this node previously
belongs to
(2) previous_active_duration: The duration in which this node has being in
contact with CLMD previously
- Once a SC starts from multiple headless clusters, clmna of each node will
send node_join_request with two new fields
- CLMD will collect all node_join_request within a partition selection timer.
The partition selection routine will be started either all node_join_request
are collected or the partition selection timer timeout.
. How to start partition selection timer: If a node_join_request comes, this
timer is started (first time) or restarted (for second request onwards) untill
all requests are received. The timer should be relatively small, 5 seconds
perhaps, and configurable. In this way, the timer value is not needed to change
if the cluster scale up to many nodes, it actually waits for the next
node_join_request to come.
- Before partition selection routine finishes, all CLM Initialize API will be
returned with TRY_AGAIN
For example:
Normal cluster: SC1, SC2, PL3, PL4, PL5, PL6, PL7, PL8
Split network first time:
P#1: PL3, PL4 (previously has SC1 as active SC), active duration: 100 secs
P#2: SC1, SC2, PL5, PL6, PL7, PL8
Split network second time:
P#1: PL3, PL4 (previously has SC1 as active SC), active duration: 100 secs
P#2: SC1, PL5, PL6 (active duration should be greater than 100 secs, says
200 secs)
P#3: SC2, PL7 PL8 (active duration should be greater than 100 secs, says
200 secs)
Network merge (both SC reboots), or shutdown both SCs. Then start SC1, the
partition selection routine only allows PL5, PL6 to join cluster. PL7, PL8
rebooted because they belongs to less-sized cluster which has SC2 as active.
PL3, PL4 are rebooted because they have much less active duration even they
belong to SC1's cluster.
The outcome of partition selection routine is that it only allows one partition
to join, it may choose one among others even all satisfies the same criterias.
---
Sent from sourceforge.net because [email protected] is
subscribed to https://sourceforge.net/p/opensaf/tickets/
To unsubscribe from further messages, a project admin can change settings at
https://sourceforge.net/p/opensaf/admin/tickets/options. Or, if this is a
mailing list, you can unsubscribe from the mailing list._______________________________________________
Opensaf-tickets mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-tickets