CSIStorageCapacity
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"
Следующие три случая все означают, что нет доступной емкости для определенного сочетания: - нет объекта с подходящей топологией и именем storage class - такой объект существует, но емкость не задана - такой объект существует, но емкость равна нулю
Производитель этих объектов может решить, какой подход более подходит.
Они потребляются kube-scheduler, когда драйвер CSI выбирает планирование с учетом емкости с помощью CSIDriverSpec.StorageCapacity. Планировщик сравнивает MaximumVolumeSize с запрошенным размером ожидающих томов, чтобы отфильтровать непригодные узлы. Если MaximumVolumeSize не задан, он переходит к сравниванию с менее точной Capacity. Если и это не задано, планировщик предполагает, что емкости недостаточно, и пытается найти другой узел.
apiVersion: storage.k8s.io/v1
kind: CSIStorageCapacity
-
metadata (ObjectMeta)
Стандартные метаданные объекта. Имя не имеет особого значения. Оно должно быть доменным поддоменом DNS (разрешены точки, 253 символа). Чтобы избежать конфликтов с другими драйверами CSI в кластере, рекомендуется использовать csisc-<uuid>, сгенерированное имя или имя домена обратного типа, которое заканчивается уникальным именем драйвера CSI.
Объекты имеют пространство имен.
Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
-
storageClassName (строка), обязательно
storageClassName представляет имя StorageClass, к которому относится сообщаемая емкость. Оно должно соответствовать тем же требованиям, что и имя объекта StorageClass (непустое, доменное имя DNS). Если этот объект больше не существует, объект CSIStorageCapacity устарел и должен быть удален его создателем. Это поле неизменяемо.
-
capacity (Quantity)
capacity — значение, сообщенное драйвером CSI в его GetCapacityResponse для запроса GetCapacityRequest с топологией и параметрами, соответствующими предыдущим полям.
Семантика в настоящее время (спецификация CSI 1.2) определяется как: доступная емкость в байтах хранилища, которое может быть использовано для выделения томов. Если не задано, эта информация в настоящее время недоступна.
-
maximumVolumeSize (Quantity)
maximumVolumeSize — значение, сообщенное драйвером CSI в его GetCapacityResponse для запроса GetCapacityRequest с топологией и параметрами, соответствующими предыдущим полям.
Определено с версии CSI spec 1.4.0 как максимальный размер, который может быть использован в поле CreateVolumeRequest.capacity_range.required_bytes для создания тома с теми же параметрами, что и в GetCapacityRequest. Соответствующее значение в API Kubernetes — ResourceRequirements.Requests в запросе на том.
-
nodeTopology (LabelSelector)
nodeTopology определяет, какие узлы имеют доступ к хранилищу, для которого была сообщена емкость. Если не задано, хранилище недоступно ни с одного узла в кластере. Если пусто, хранилище доступно со всех узлов. Это поле неизменяемо.
CSIStorageCapacityList
CSIStorageCapacityList — коллекция объектов CSIStorageCapacity.
apiVersion: storage.k8s.io/v1
kind: CSIStorageCapacityList
-
metadata (ListMeta)
Стандартные метаданные списка. Дополнительная информация: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
-
items ([]CSIStorageCapacity), обязательно
items — список объектов CSIStorageCapacity.
© 2024 The Kubernetes Authors | Documentation Distributed under CC BY 4.0
Copyright © 2024 The Linux Foundation ®. All rights reserved.
https://kubernetes.io/docs/reference/kubernetes-api/config-and-storage-resources/csi-storage-capacity-v1/