Skip to content

Conversation

@ajanikow
Copy link
Collaborator

Difference between action ActionTypeRemoveMember + ActionTypeAddMember and ActionTypeRecreateMember is that action ActionTypeRecreateMember will not recreate PVC and Member ID - very useful in Ceerdinators to not create zombie Coordinators in cluster and for Agency to persist data in corner cases.

@ajanikow ajanikow changed the title [Feature] Do not remove Coordinator and Agency members [Feature] Do not remove Agency members Mar 23, 2020
Copy link
Member

@neunhoef neunhoef left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. We have discussed this at length: Contrary to what we thought earlier, we now think that any action that might become necessary if an agent with its PV is completely lost, should be with manual interaction. The reason is that this could for example be a network partitition, which might be temporary. Furthermore, a 3 member Raft ensemble can only sustain the loss of a single agent and we must ensure that no bad data loss happens.

Therefore, a human has to order the operation to deploy a new agent with the same ID. One can do this by explicitly deleting the PVC, in which case the operator will recreate a new one and redeploy the pod.

@ajanikow ajanikow merged commit 397712d into master Mar 23, 2020
@ajanikow ajanikow deleted the feature/do_not_recreate_coord_ids branch March 23, 2020 19:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants