StorageClass
apiVersion: storage.k8s.io/v1
import "k8s.io/api/storage/v1"
StorageClass
StorageClass
описує параметри класу сховища, для якого PersistentVolumes
можна динамічно виділяти.
Класи сховищ не мають простору імен; імʼя класу сховища згідно з etcd знаходиться в ObjectMeta.Name.
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata (ObjectMeta)
Стандартні метадані обʼєкта. Докладніше: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
provisioner (string), обовʼязково
provisioner вказує на тип провізора.
allowVolumeExpansion (boolean)
allowVolumeExpansion показує, чи дозволяє клас зберігання розширення тому.
allowedTopologies ([]TopologySelectorTerm)
Atomic: буде замінено під час обʼєднання
allowedTopologies обмежує топологію вузлів, де томи можуть динамічно виділятися. Кожен втулок тому визначає свої власні специфікації топології. Порожній список TopologySelectorTerm означає, що обмежень по топології немає. Це поле враховується лише серверами, які включають функцію VolumeScheduling.
Термін селектора топології представляє результат запитів до міток. Нульовий або порожній термін селектора топології не відповідає жодному обʼєкту. Вимоги до них обʼєднуються за принципом AND. Він надає підмножину функціональності як NodeSelectorTerm. Це альфа-версія функції та в майбутньому вона може змінитися.
allowedTopologies.matchLabelExpressions ([]TopologySelectorLabelRequirement)
Atomic: буде замінено під час злиття
Список вимог до вибору топології за мітками.
Вимога вибору топології — це селектор, що відповідає заданій мітці. Це альфа-функція і може змінитися в майбутньому.
allowedTopologies.matchLabelExpressions.key (string), обовʼязково
Ключ мітки, до якого застосовується селектор.
allowedTopologies.matchLabelExpressions.values ([]string), обовʼязково
Atomic: буде замінено під час злиття
Масив рядкових значень. Одне значення повинно відповідати мітці для вибору. Кожен запис у Values поєднується оператором OR.
mountOptions ([]string)
Atomic: буде замінено під час злиття
mountOptions контролює параметри монтування для динамічно виділених PersistentVolumes цього класу зберігання. Наприклад, ["ro", "soft"]. Не перевіряється — монтування PVs просто не вдасться, якщо один з них недійсний.
parameters (map[string]string)
parameters містить параметри для провайдера, який повинен створити томи цього класу зберігання.
reclaimPolicy (string)
reclaimPolicy контролює політику відновлення для динамічно виділених PersistentVolumes цього класу зберігання. Стандартне значення — Delete.
volumeBindingMode (string)
volumeBindingMode вказує, як PersistentVolumeClaims повинні виділятися та звʼязуватися. Якщо не встановлено, використовується VolumeBindingImmediate. Це поле враховується лише серверами, які включають функцію VolumeScheduling.
StorageClassList
StorageClassList — це колекція класів зберігання.
apiVersion: storage.k8s.io/v1
kind: StorageClassList
metadata (ListMeta)
Стандартні метадані списку. Докладніше: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
items ([]StorageClass), обовʼязкове
items — це список StorageClasses.
Операції
get
отримати вказаний StorageClass
HTTP запит
GET /apis/storage.k8s.io/v1/storageclasses/{name}
Параметри
name (в шляху): string, обовʼязково
імʼя StorageClass
pretty (в запиті): string
Відповідь
200 (StorageClass): OK
401: Unauthorized
list
перелік або перегляд обʼєктів типу StorageClass
HTTP запит
GET /apis/storage.k8s.io/v1/storageclasses
Параметри
allowWatchBookmarks (в запиті): boolean
continue (в запиті): string
fieldSelector (в запиті): string
labelSelector (в запиті): string
limit (в запиті): integer
pretty (в запиті): string
resourceVersion (в запиті): string
resourceVersionMatch (в запиті): string
sendInitialEvents (в запиті): boolean
timeoutSeconds (в запиті): integer
watch (в запиті): boolean
Відповідь
200 (StorageClassList): OK
401: Unauthorized
create
створення StorageClass
HTTP запит
POST /apis/storage.k8s.io/v1/storageclasses
Параметри
body: StorageClass, обовʼязково
dryRun (в запиті): string
fieldManager (в запиті): string
fieldValidation (в запиті): string
pretty (в запиті): string
Відповідь
200 (StorageClass): OK
201 (StorageClass): Created
202 (StorageClass): Accepted
401: Unauthorized
update
заміна вказаного StorageClass
HTTP запит
PUT /apis/storage.k8s.io/v1/storageclasses/{name}
Параметри
name (в шляху): string, обовʼязково
імʼя StorageClass
body: StorageClass, обовʼязково
dryRun (в запиті): string
fieldManager (в запиті): string
fieldValidation (в запиті): string
pretty (в запиті): string
Відповідь
200 (StorageClass): OK
201 (StorageClass): Created
401: Unauthorized
patch
часткове оновлення вказаного StorageClass
HTTP запит
PATCH /apis/storage.k8s.io/v1/storageclasses/{name}
Параметри
name (в шляху): string, обовʼязково
імʼя StorageClass
body: Patch, обовʼязково
dryRun (в запиті): string
fieldManager (в запиті): string
fieldValidation (в запиті): string
force (в запиті): boolean
pretty (в запиті): string
Відповідь
200 (StorageClass): OK
201 (StorageClass): Created
401: Unauthorized
delete
видалення StorageClass
HTTP запит
DELETE /apis/storage.k8s.io/v1/storageclasses/{name}
Параметри
name (в шляху): string, обовʼязково
імʼя StorageClass
body: DeleteOptions
dryRun (в запиті): string
gracePeriodSeconds (в запиті): integer
pretty (в запиті): string
propagationPolicy (в запиті): string
Відповідь
200 (StorageClass): OK
202 (StorageClass): Accepted
401: Unauthorized
deletecollection
видалення колекції StorageClass
HTTP запит
DELETE /apis/storage.k8s.io/v1/storageclasses
Параметри
body: DeleteOptions
continue (в запиті): string
dryRun (в запиті): string
fieldSelector (в запиті): string
gracePeriodSeconds (в запиті): integer
labelSelector (в запиті): string
limit (в запиті): integer
pretty (в запиті): string
propagationPolicy (в запиті): string
resourceVersion (в запиті): string
resourceVersionMatch (в запиті): string
sendInitialEvents (в запиті): boolean
timeoutSeconds (в запиті): integer
Відповідь
200 (Status): OK
401: Unauthorized