Skip to content

Commit

Permalink
fix inconsistency in documentation of default storageclass
Browse files Browse the repository at this point in the history
  • Loading branch information
iheartNathan committed Oct 13, 2024
1 parent ffe1d67 commit 55edcdc
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -200,9 +200,11 @@ and automatically adds a default storage class to them.
This way, users that do not request any special storage class do not need to care about them at all and they
will get the default one.

This admission controller does not do anything when no default storage class is configured. When more than one storage
class is marked as default, it rejects any creation of `PersistentVolumeClaim` with an error and an administrator
must revisit their `StorageClass` objects and mark only one as default.
This admission controller does nothing when no default `StorageClass` exists. When more than one storage
class is marked as default, and you then create a `PersistentVolumeClaim` with no `storageClassName` set,
Kubernetes uses the most recently created default `StorageClass`.
When a `PersistentVolumeClaim` is created with a specified `volumeName`, it remains in a pending state
if the static volume's `storageClassName` does not match the `StorageClass` on the `PersistentVolumeClaim`.
This admission controller ignores any `PersistentVolumeClaim` updates; it acts only on creation.

See [persistent volume](/docs/concepts/storage/persistent-volumes/) documentation about persistent volume claims and
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -73,9 +73,13 @@ for details about addon manager and how to disable individual addons.
kubectl patch storageclass gold -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'
```

Please note that at most one StorageClass can be marked as default. If two
or more of them are marked as default, a `PersistentVolumeClaim` without
`storageClassName` explicitly specified cannot be created.
Please note you can have multiple `StorageClass` marked as default. If more
than one `StorageClass` is marked as default, a `PersistentVolumeClaim` without
an explicitly defined `storageClassName` will be created using the most recently
created default `StorageClass`.
When a `PersistentVolumeClaim` is created with a specified `volumeName`, it remains
in a pending state if the static volume's `storageClassName` does not match the
`StorageClass` on the `PersistentVolumeClaim`.

1. Verify that your chosen StorageClass is default:

Expand Down

0 comments on commit 55edcdc

Please sign in to comment.