Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cherrypick(fix, cvr, delete): add finalizer to reclaim space on volume delete #1260

Conversation

AmitKumarDas
Copy link
Member

This is the cherrypick of #1256

…enebs#1256)

This commit reverts a previous commit i.e.
openebs#955

There were a few observations (that were expected) due to above
commit. CVR used to have finalizers to execute cleanup operations
due to delete event of corresponding volume. This is a standard
practice in kubernetes community to handle cleanups via
reconciliation process.

However, we had to remove finalizers as seen in the commit 955
due to various reasons. These were:

[1] Inability to delete a openebs system namespace and expect
entire openebs to get uninstalled

[2] Deletion of cstor volume did not delete CVRs due to the
presence of finalizers. This was seen most of the times across
various users and platforms. This was not easily reproducible
in development environments.

With the current release i.e. 0.9.0 some users have started
to face issues like space not getting reclaimed even after
cstor volumes get deleted successfully. On further analysis,
it was found that user had tried following operation:

`kubectl delete pvc --all -n some-namespace`

which led to deletion of pvc, pv, cv, cvr resources from k8s cluster
but corresponding events especially cvr based events were received
much later at the controller code. This resulted in `cvr resource
not found` and hence these resources were not cleaned up successfully
leading to space issues.

With this fix we expect original symptoms to recur. However, we
plan to provide another fix after the automated test suite is
able to discover these issues at will. This next fix will deal
only with symptom '2'

NOTE: Ability to un-install openebs by deleting openebs system
namespace needs to be handled by a higher order logic/process.
This is now considered as out of scope w.r.t cvr controller.

Signed-off-by: AmitKumarDas <amit.das@mayadata.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants