PersistentVolumeClaim
apiVersion: v1
import "k8s.io/api/core/v1"
PersistentVolumeClaim
PersistentVolumeClaim — это запрос пользователя на постоянный том и утверждение права на него
-
apiVersion: v1
-
kind: PersistentVolumeClaim
-
metadata (ObjectMeta)
Стандартные метаданные объекта. Подробнее: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
-
spec (PersistentVolumeClaimSpec)
spec определяет желаемые характеристики тома, запрошенного автором pod. Подробнее: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
-
status (PersistentVolumeClaimStatus)
status содержит текущую информацию/состояние запроса на постоянный том. Только для чтения. Подробнее: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
PersistentVolumeClaimSpec
PersistentVolumeClaimSpec описывает общие атрибуты устройств хранения данных и позволяет указать источник для поставщика-специфичных атрибутов
-
accessModes ([]string)
accessModes содержит желаемые режимы доступа к тому. Подробнее: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
-
selector (LabelSelector)
selector — запрос меток по томам для рассмотрения при связывании.
-
resources (ResourceRequirements)
resources представляет минимальные ресурсы, которые должен иметь том. Если включена функция RecoverVolumeExpansionFailure, пользователям разрешается указывать требования к ресурсам, которые ниже предыдущего значения, но должны быть всё ещё выше, чем ёмкость, записанная в поле status запроса. Подробнее: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
ResourceRequirements описывает требования к вычислительным ресурсам.
-
resources.limits (map[string]Quantity)
Limits описывает максимальное количество разрешённых вычислительных ресурсов. Подробнее: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
-
resources.requests (map[string]Quantity)
Requests описывает минимальное количество необходимых вычислительных ресурсов. Если Requests не указан для контейнера, он по умолчанию равен Limits, если это явно указано, в противном случае — определённому реализацией значению. Подробнее: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
-
-
volumeName (string)
volumeName — ссылка на привязку к PersistentVolume, поддерживающему этот запрос.
-
storageClassName (string)
storageClassName — имя StorageClass, требуемое запросом. Подробнее: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
-
volumeMode (string)
volumeMode определяет тип тома, требуемого запросом. Значение Filesystem подразумевается, если оно не указано в спецификации запроса.
Уровень alpha
-
dataSource (TypedLocalObjectReference)
Поле dataSource может быть использовано для указания: * Существующего объекта VolumeSnapshot (snapshot.storage.k8s.io/VolumeSnapshot) * Существующего PVC (PersistentVolumeClaim) Если поставщик или внешний контроллер могут поддерживать указанный источник данных, он создаст новый том на основе содержимого указанного источника данных. Если включена функция AnyVolumeDataSource, это поле всегда будет содержать то же самое содержимое, что и поле DataSourceRef.
-
dataSourceRef (TypedLocalObjectReference)
dataSourceRef указывает объект, из которого следует заполнить том данными, если требуется непустой том. Это может быть любой локальный объект из непустой API-группы (не объект core) или объект PersistentVolumeClaim. При указании этого поля привязка тома будет успешной только в том случае, если тип указанного объекта соответствует установленному поставщику томов или динамическому поставщику. Это поле заменит функциональность поля DataSource, и если оба поля непустые, они должны иметь одинаковое значение. Для обратной совместимости оба поля (DataSource и DataSourceRef) будут автоматически установлены в одинаковое значение, если одно из них пустое, а другое — нет. Есть две важные разницы между DataSource и DataSourceRef: * DataSource допускает только два определенных типа объектов, а DataSourceRef допускает любые объекты, не являющиеся core-объектами, а также объекты PersistentVolumeClaim. * В то время как DataSource игнорирует запрещённые значения (удаляя их), DataSourceRef сохраняет все значения и генерирует ошибку, если указано запрещённое значение. (Бета) Использование этого поля требует включения функции AnyVolumeDataSource.
- При использовании данного поля требуются функционал AnyVolumeDataSource.
PersistentVolumeClaimStatus
PersistentVolumeClaimStatus — текущее состояние запроса на постоянный том.
-
accessModes ([]string)
accessModes содержит фактические режимы доступа к тому, на котором базируется PVC. Подробнее: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
-
allocatedResources (map[string]Quantity)
allocatedResources — это хранилищные ресурсы. AllocatedResources отслеживает выделенную ёмкость для PVC. Она может быть больше фактической ёмкости при запросе операции расширения тома. Для квоты хранения используется большее значение из allocatedResources и PVC.spec.resources. Если allocatedResources не задан, для расчёта квоты используется только PVC.spec.resources. Если запрос ёмкости тома уменьшается, allocatedResources уменьшается только в том случае, если нет операций расширения и фактическая ёмкость тома равна или меньше запрошенной ёмкости. Это поле alpha и требует включения функции RecoverVolumeExpansionFailure.
-
capacity (map[string]Quantity)
capacity представляет фактические ресурсы базового тома.
-
conditions ([]PersistentVolumeClaimCondition)
Стратегия исправления: слияние по ключу
typeconditions — текущее состояние запроса на постоянный том. Если базовый постоянный том изменяется, то состояние будет установлено в 'ResizeStarted'.
PersistentVolumeClaimCondition содержит информацию о состоянии pvc
-
conditions.status (string), необходимо
-
conditions.type (string), необходимо
-
conditions.lastProbeTime (Time)
lastProbeTime — время проверки состояния.
Time — обёртка вокруг time.Time, которая поддерживает правильную сериализацию в YAML и JSON. Обёртки предоставляются для многих методов factory из пакета time.
-
conditions.lastTransitionTime (Time)
lastTransitionTime — время изменения состояния.
Time — обёртка вокруг time.Time, которая поддерживает правильную сериализацию в YAML и JSON. Обёртки предоставляются для многих методов factory из пакета time.
-
conditions.message (string)
message — удобочитаемое сообщение, указывающее детали последнего перехода.
-
conditions.reason (string)
reason — уникальная, короткая, понимаемая машиной строка, которая объясняет причину последнего перехода состояния. Если она указывает "ResizeStarted", это означает, что базовый постоянный том изменяется.
-
-
phase (string)
phase представляет текущую фазу PersistentVolumeClaim.
-
resizeStatus (string)
resizeStatus хранит состояние операции изменения размера. ResizeStatus по умолчанию не устанавливается, но при завершении расширения resizeStatus устанавливается в пустую строку контроллером изменения размера или kubelet. Это поле alpha и требует включения функции RecoverVolumeExpansionFailure.
PersistentVolumeClaimList
PersistentVolumeClaimList — список объектов PersistentVolumeClaim.
-
apiVersion: v1
-
kind: PersistentVolumeClaimList
-
metadata (ListMeta)
Стандартные метаданные списка. Подробнее: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
-
items ([]PersistentVolumeClaim), необходимо
items — список запросов на постоянные тома. Подробнее: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
© 2022 The Kubernetes Authors | Documentation Distributed under CC BY 4.0
Copyright © 2022 The Linux Foundation ®. All rights reserved.
https://v1-24.docs.kubernetes.io/docs/reference/kubernetes-api/config-and-storage-resources/persistent-volume-claim-v1/