Spec-Zone.ru › Kubernetes

CSIStorageCapacity

CSIStorageCapacity хранит результат одного вызова CSI GetCapacity. Для заданного StorageClass здесь описывается доступная ёмкость в определённом сегменте топологии. Эти данные можно использовать при выборе места для создания новых PersistentVolumes.

Например, здесь могут быть выражены такие сведения: - для StorageClass "standard" доступно "1234 GiB" в "topology.kubernetes.io/zone=us-east1" - для StorageClass "localssd" доступно "10 GiB" в "kubernetes.io/hostname=knode-abc123"

Все три следующих случая означают, что для некоторого сочетания параметров ёмкость недоступна: - нет объекта с подходящими топологией и именем класса хранилища - такой объект существует, но ёмкость не задана - такой объект существует, но ёмкость равна нулю

Создатель этих объектов может выбрать наиболее подходящий вариант.

Планировщик kube-scheduler использует эти объекты, когда драйвер CSI включает планирование с учётом ёмкости с помощью CSIDriverSpec.StorageCapacity. Планировщик сравнивает MaximumVolumeSize с запрошенным размером ожидающих томов, чтобы исключить неподходящие узлы. Если MaximumVolumeSize не задан, он сравнивает размер с менее точным значением Capacity. Если не задано и оно, планировщик считает, что ёмкости недостаточно, и пробует другой узел.

apiVersion: storage.k8s.io/v1

import "k8s.io/api/storage/v1"

CSIStorageCapacity

CSIStorageCapacity хранит результат одного вызова CSI GetCapacity. Для заданного StorageClass здесь описывается доступная ёмкость в определённом сегменте топологии. Эти данные можно использовать при выборе места для создания новых PersistentVolumes.

Например, здесь могут быть выражены такие сведения: - для StorageClass "standard" доступно "1234 GiB" в "topology.kubernetes.io/zone=us-east1" - для StorageClass "localssd" доступно "10 GiB" в "kubernetes.io/hostname=knode-abc123"

Все три следующих случая означают, что для некоторого сочетания параметров ёмкость недоступна: - нет объекта с подходящими топологией и именем класса хранилища - такой объект существует, но ёмкость не задана - такой объект существует, но ёмкость равна нулю

Создатель этих объектов может выбрать наиболее подходящий вариант.

Планировщик kube-scheduler использует эти объекты, когда драйвер CSI включает планирование с учётом ёмкости с помощью CSIDriverSpec.StorageCapacity. Планировщик сравнивает MaximumVolumeSize с запрошенным размером ожидающих томов, чтобы исключить неподходящие узлы. Если MaximumVolumeSize не задан, он сравнивает размер с менее точным значением Capacity. Если не задано и оно, планировщик считает, что ёмкости недостаточно, и пробует другой узел.

Поле Описание
apiVersion
string
APIVersion определяет версионированную схему этого представления объекта. Серверы должны преобразовывать распознанные схемы в последнее внутреннее представление и могут отклонять нераспознанные значения. Подробнее: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
capacity
Quantity
capacity — значение, сообщённое драйвером CSI в его GetCapacityResponse в ответ на GetCapacityRequest с топологией и параметрами, совпадающими с указанными в предыдущих полях. Согласно текущему определению (спецификация CSI 1.2), это доступная ёмкость хранилища в байтах, которую можно использовать для выделения томов. Если значение не задано, эта информация в настоящее время недоступна.
kind
string
Kind — строковое значение, представляющее ресурс REST, который представляет этот объект. Серверы могут определить его по конечной точке, на которую клиент отправляет запросы. Не может быть обновлено. В CamelCase. Подробнее: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
maximumVolumeSize
Quantity
maximumVolumeSize — значение, сообщённое драйвером CSI в его GetCapacityResponse в ответ на GetCapacityRequest с топологией и параметрами, совпадающими с указанными в предыдущих полях. Согласно спецификации CSI 1.4.0, это наибольший размер, который можно указать в поле CreateVolumeRequest.capacity_range.required_bytes для создания тома с теми же параметрами, что и в GetCapacityRequest. Соответствующее значение в API Kubernetes — ResourceRequirements.Requests в запросе тома.
metadata
ObjectMeta
Стандартные метаданные объекта. Имя не имеет особого значения. Оно должно быть DNS-поддоменом (точки разрешены, не более 253 символов). Чтобы избежать конфликтов с другими драйверами CSI в кластере, рекомендуется использовать csisc-\<uuid>, сгенерированное имя или имя в обратной доменной нотации, заканчивающееся уникальным именем драйвера CSI. Объекты имеют пространства имён. Подробнее: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
nodeTopology
LabelSelector
nodeTopology определяет, какие узлы имеют доступ к хранилищу, для которого сообщена ёмкость. Если значение не задано, хранилище недоступно ни с одного узла кластера. Если значение пустое, хранилище доступно со всех узлов. Это поле неизменяемо.
storageClassName *
string
storageClassName содержит имя StorageClass, к которому относится сообщённая ёмкость. Оно должно соответствовать тем же требованиям, что и имя объекта StorageClass (непустое, DNS-поддомен). Если этот объект больше не существует, объект CSIStorageCapacity устарел, и его создатель должен удалить его. Это поле неизменяемо.

CSIStorageCapacityList

CSIStorageCapacityList — это набор объектов CSIStorageCapacity.

Поле Описание
apiVersion
string
APIVersion определяет версионированную схему этого представления объекта. Серверы должны преобразовывать распознанные схемы в последнее внутреннее представление и могут отклонять нераспознанные значения. Подробнее: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
items *
массив CSIStorageCapacity
items — список объектов CSIStorageCapacity.
kind
string
Kind — строковое значение, представляющее ресурс REST, который представляет этот объект. Серверы могут определить его по конечной точке, на которую клиент отправляет запросы. Не может быть обновлено. В CamelCase. Подробнее: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
metadata
ListMeta
Стандартные метаданные списка. Подробнее: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

© 2026 The Kubernetes Authors | Documentation Distributed under CC BY 4.0
Copyright © 2026 The Linux Foundation ®. All rights reserved.
https://kubernetes.io/docs/reference/kubernetes-api/storage/csi-storage-capacity-v1/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API