serving
serving copied to clipboard
Tracking issue for adding PVC support
Describe the feature
This is a placeholder for the feature track work described in the related doc:
Alpha (disabled by default):
- [x] Add rw pvc support in KService
- [x] Add e2e test
- [x] Add to listed flags here.
Beta (disabled by default):
- [ ] Add conformance tests
- [x] Update docs with a separate section for PVC support
GA (disabled by default):
- [ ] Add Knative CLI support (enhance --volume flag)
/area API
This issue is stale because it has been open for 90 days with no
activity. It will automatically close after 30 more days of
inactivity. Reopen the issue with /reopen
. Mark the issue as
fresh by adding the comment /remove-lifecycle stale
.
/remove-lifecycle stale
Any news on PVC file feature @skonto ? Are there any estimates in which version or when this could be available? Maybe in the meantime, are there any alternatives to mount / use files with PVC and Knative Serving?
This issue is stale because it has been open for 90 days with no
activity. It will automatically close after 30 more days of
inactivity. Reopen the issue with /reopen
. Mark the issue as
fresh by adding the comment /remove-lifecycle stale
.
/remove-lifecycle stale
@gunpuz hi sorry for the late reply. What feature are you looking for? PVC is available in alpha stage.
Hi, good to know, seems like this PVC support that's in alpha stage is what i'm looking for. I will look into it later, thanks 👍 ! @skonto are there estimates when this could be released in stable version?
@gunpuz it is on my todo list to move it to GA, hopefully soon. However, this has been tested for quite some time downstream and it is considered to be mature enough. Customers haven't reported any issues so far. Thanks for your patience will get back to it.
a) Regarding Add conformance tests
: According to the discussion in https://github.com/knative/serving/pull/13535, the e2e tests will first advance to beta and then to GA in a future release.
b) Docs seem to cover PVC support: https://knative.dev/docs/serving/configuration/feature-flags/#kubernetes-persistentvolumeclaim-pvc. Is there another place where docs about this feature should be added?
c) I checked the client implementation. Seems like the PVC support is already fully covered:
- https://github.com/knative/client/blob/main/pkg/kn/flags/podspec.go#L144
- https://github.com/knative/client/blob/main/pkg/kn/flags/podspec.go#L157
@skonto WDYT?
a) Yes since we decided this is an extension that we are not enabling by default for now. b) No that is the place I am aware of as well. c) cool so I will update the description of this issue when the PR #13535 is merged.
Related Slack discussion: https://knative.slack.com/archives/CA4DNJ9A4/p1673954610282719
From @skonto
hi, I see that we enabled emptydir support at some point by default here. Emptydir and pvcs are listed as extensions (they are behind a flag and not part of the API) which means that are never going to be enabled by default as stated in docs:
Each extension is always controlled by a flag and is never enabled by default. Should we relax this rule?
From @dprotaso
Yes - I would say in the past the OSS project was a reference implementation to the spec.So it was very adverse to adopting k8s features outside of the spec and things that aren't 'serverless'.
I think moving forward the OSS implementation just implements the spec but isn't bound by it. We also want the defaults to be sane for the user and operator
I think generally I would like more customer/user feedback & to capture use cases before we mark things as GA
I think as we transition from alpha
to beta
and we switch some of these flags to be on by default we should give prior notice in the release notes. This will allow operators of existing installations to disable the feature prior to updating.
When I understand you correctly, you'd like to have PVC support also enabled per default (like emptyDir)? As far as I got the conversation so far, the ticket (Beta disabled by default) and discussion (https://github.com/knative/serving/pull/13535#issuecomment-1342729772) expected PVC support to stay disabled, even on GA. /cc @skonto
@dprotaso gentle ping regarding https://github.com/knative/serving/issues/12438#issuecomment-1396533655
PVC support to stay disabled, even on GA.
That was my understanding for quite some time due to the implications in security and performance.
@dprotaso so we seem to have two options:
- Let PVC support stay disabled by default, then only need to remove the
beta
filter in the test. - Or do the above and also enable it by default. WDYT?
@dprotaso gentle ping, which option do you prefer?
@dprotaso gentle ping.