At the moment, we have scs-0211-v1 SCS KaaS default storage class, which defines some contraints for a default storage class, if it exists. But it doesn't enforce that such an SC exists.
Proposal to be discussed:
- Require that a default storage class exists and is properly annotated (
storageclass.kubernetes.io/is-default-class).
- It must support RWO access mode.
- Users may delete this SC, it just has to exist in a fresh cluster.
- How this default StorageClass is implemented, is up to the CSP. For example, it could be provided by something simple as rancher/local-path-provisioner.
- Advanced requirements are out of scope, for example:
- not being backed by local storage
- support for
allowVolumeExpansion
- HA / redundancy
- performance
Motivation: lower the entry barrier for users by making things work out of the box, wrt storage. For example, many Helm charts require either a default SC or the user needs to specifiy a SC name.
Risks: users may solely rely on this default SC without checking what guarantees it gives.
(CC @mxmxchere because he proposed this to me via chat and I endorse this.)
Definition of Done:
Please refer to scs-0001-v1 for details.
At the moment, we have scs-0211-v1 SCS KaaS default storage class, which defines some contraints for a default storage class, if it exists. But it doesn't enforce that such an SC exists.
Proposal to be discussed:
storageclass.kubernetes.io/is-default-class).allowVolumeExpansionMotivation: lower the entry barrier for users by making things work out of the box, wrt storage. For example, many Helm charts require either a default SC or the user needs to specifiy a SC name.
Risks: users may solely rely on this default SC without checking what guarantees it gives.
(CC @mxmxchere because he proposed this to me via chat and I endorse this.)
Definition of Done:
Please refer to scs-0001-v1 for details.
scs-xxxx-v1-slug.md(only substituteslug)status,type,tracksetDraft, file renamed:xxxxreplaced by document numberDraft)