StorageClass
apiVersion: storage.k8s.io/v1
import "k8s.io/api/storage/v1"
StorageClass
StorageClass describes the parameters for a class of storage for which PersistentVolumes can be dynamically provisioned.
StorageClasses are non-namespaced; the name of the storage class according to etcd is in ObjectMeta.Name.
-
apiVersion: storage.k8s.io/v1
-
kind: StorageClass
-
metadata (ObjectMeta)
Standard object’s metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata -
provisioner (string), required
Provisioner indicates the type of the provisioner. -
allowVolumeExpansion (boolean)
AllowVolumeExpansion shows whether the storage class allow volume expand -
allowedTopologies ([]TopologySelectorTerm)
Restrict the node topologies where volumes can be dynamically provisioned. Each volume plugin defines its own supported topology specifications. An empty TopologySelectorTerm list means there is no topology restriction. This field is only honored by servers that enable the VolumeScheduling feature.
A topology selector term represents the result of label queries. A null or empty topology selector term matches no objects. The requirements of them are ANDed. It provides a subset of functionality as NodeSelectorTerm. This is an alpha feature and may change in the future.- allowedTopologies.matchLabelExpressions ([]TopologySelectorLabelRequirement)
A list of topology selector requirements by labels.
A topology selector requirement is a selector that matches given label. This is an alpha feature and may change in the future. - allowedTopologies.matchLabelExpressions.key (string), required
The label key that the selector applies to. - allowedTopologies.matchLabelExpressions.values ([]string), required
An array of string values. One value must match the label to be selected. Each entry in Values is ORed.
- allowedTopologies.matchLabelExpressions ([]TopologySelectorLabelRequirement)
-
mountOptions ([]string)
Dynamically provisioned PersistentVolumes of this storage class are created with these mountOptions, e.g. [“ro”, “soft”]. Not validated - mount of the PVs will simply fail if one is invalid. -
parameters (map[string]string)
Parameters holds the parameters for the provisioner that should create volumes of this storage class. -
reclaimPolicy (string)
Dynamically provisioned PersistentVolumes of this storage class are created with this reclaimPolicy. Defaults to Delete. -
volumeBindingMode (string)
VolumeBindingMode indicates how PersistentVolumeClaims should be provisioned and bound. When unset, VolumeBindingImmediate is used. This field is only honored by servers that enable the VolumeScheduling feature.
StorageClassList
StorageClassList is a collection of storage classes.
-
apiVersion: storage.k8s.io/v1
-
kind: StorageClassList
-
metadata (ListMeta)
Standard list metadata More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata -
items ([]StorageClass), required
Items is the list of StorageClasses
Operations
get
read the specified StorageClass
HTTP Request
GET /apis/storage.k8s.io/v1/storageclasses/{name}
Parameters
- {name} (string), required
name of the StorageClass - ?pretty (string)
pretty
Response
200 (StorageClass): OK
401: Unauthorized
list
list or watch objects of kind StorageClass
HTTP Request
GET /apis/storage.k8s.io/v1/storageclasses
Parameters
- ?allowWatchBookmarks (boolean)
allowWatchBookmarks - ?continue (string)
continue - ?fieldSelector (string)
fieldSelector - ?labelSelector (string)
labelSelector - ?limit (integer)
limit - ?pretty (string)
pretty - ?resourceVersion (string)
resourceVersion - ?resourceVersionMatch (string)
resourceVersionMatch - ?timeoutSeconds (integer)
timeoutSeconds - ?watch (boolean)
watch
Response
200 (StorageClassList): OK
401: Unauthorized
create
create a StorageClass
HTTP Request
POST /apis/storage.k8s.io/v1/storageclasses
Parameters
-
body (StorageClass), required
-
?dryRun (string)
dryRun -
?fieldManager (string)
fieldManager -
?pretty (string)
pretty
Response
200 (StorageClass): OK
201 (StorageClass): Created
202 (StorageClass): Accepted
401: Unauthorized
update
replace the specified StorageClass
HTTP Request
PUT /apis/storage.k8s.io/v1/storageclasses/{name}
Parameters
-
{name} (string), required
name of the StorageClass -
body (StorageClass), required
-
?dryRun (string)
dryRun -
?fieldManager (string)
fieldManager -
?pretty (string)
pretty
Response
200 (StorageClass): OK
201 (StorageClass): Created
401: Unauthorized
patch
partially update the specified StorageClass
HTTP Request
PATCH /apis/storage.k8s.io/v1/storageclasses/{name}
Parameters
-
{name} (string), required
name of the StorageClass -
body (Patch), required
-
?dryRun (string)
dryRun -
?fieldManager (string)
fieldManager -
?force (boolean)
force -
?pretty (string)
pretty
Response
200 (StorageClass): OK
401: Unauthorized
delete
delete a StorageClass
HTTP Request
DELETE /apis/storage.k8s.io/v1/storageclasses/{name}
Parameters
-
{name} (string), required
name of the StorageClass -
body (DeleteOptions)
-
?dryRun (string)
dryRun -
?gracePeriodSeconds (integer)
gracePeriodSeconds -
?pretty (string)
pretty -
?propagationPolicy (string)
propagationPolicy
Response
200 (StorageClass): OK
202 (StorageClass): Accepted
401: Unauthorized
deletecollection
delete collection of StorageClass
HTTP Request
DELETE /apis/storage.k8s.io/v1/storageclasses
Parameters
-
body (DeleteOptions)
-
?continue (string)
continue -
?dryRun (string)
dryRun -
?fieldSelector (string)
fieldSelector -
?gracePeriodSeconds (integer)
gracePeriodSeconds -
?labelSelector (string)
labelSelector -
?limit (integer)
limit -
?pretty (string)
pretty -
?propagationPolicy (string)
propagationPolicy -
?resourceVersion (string)
resourceVersion -
?resourceVersionMatch (string)
resourceVersionMatch -
?timeoutSeconds (integer)
timeoutSeconds
Response
200 (Status): OK
401: Unauthorized