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

updating a PVC's size is not propagated to the StatefulSet #80

Open
drummerwolli opened this issue Jan 8, 2020 · 6 comments
Open

updating a PVC's size is not propagated to the StatefulSet #80

drummerwolli opened this issue Jan 8, 2020 · 6 comments

Comments

@drummerwolli
Copy link
Member

Expected Behavior

If I change the size of an existing PVC inside of a ElasticsearchDataSet, it should get propagated to the underlying StatefulSet's pod volumes

Actual Behavior

The StatefulSet does not change its properties and therefore nothing changes.

Steps to Reproduce the Problem

  1. deploy an ElasticsearchDataSet with a PersistentVolumeClaim
  2. afterwards, change the PVC disk size and update the EDS

Specifications

  • Version: registry.opensource.zalan.do/poirot/es-operator:v0.1.1-48-g8ffaa9b
  • Platform: K8s 1.15
  • Subsystem: ??
@mikkeloscar
Copy link
Collaborator

mikkeloscar commented Jan 8, 2020

Unfortunately you can't change the size of a PVC on a statefulset in Kubernetes but our validation doesn't prevent changing it on the EDS.

We could maybe work around this by migrating transparently to a new statefulset, but this is a bigger change, so not something that can easily be fixed.

@drummerwolli
Copy link
Member Author

ah, ok. then maybe as a first "quick fix" would be to validate this similar to K8s (not to allow it), and then later, we can build the "migrate to new statefulset" feature.

@drummerwolli
Copy link
Member Author

@mikkeloscar is it possible that this actually changed? i just managed to change a PVC size with kubectl edit pvc.

@mikkeloscar
Copy link
Collaborator

@drummerwolli You can change it on the PVC yes, but the problem is changing it on the StatefulSet which is (still) not allowed.

@drummerwolli
Copy link
Member Author

do you know if this is planned at some point? maybe we can link the upstream issue if it exists?

@mikkeloscar
Copy link
Collaborator

Here's an issue: kubernetes/kubernetes#68737 seems like it's not changing soon. But there are suggestions of removing the sts without deleting the pods (kubectl delete sts --cascade=false). This could potentially be implemented as a hack in es-operator

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

No branches or pull requests

2 participants