Ответ 1
Вы должны определить PersistentVolume, предоставляющий дисковое пространство, которое будет использоваться PersistentVolumeClaim.
При использовании storageClass
Kubernetes включите "Dynamic Volume Provisioning", который не работает с локальной файловой системой.
Чтобы решить вашу проблему:
- Предоставьте PersistentVolume, удовлетворяющий ограничениям заявки (размер> = 100Mi)
- Удалите
storageClass
-line из PersistentVolumeClaim - Удалить StorageClass из вашего кластера
Как эти пьесы играют вместе?
При создании описания состояния развертывания обычно известно, какой тип (объем, скорость,...) хранилища понадобится приложению.
Чтобы сделать развертывание универсальным, вы бы хотели избежать жесткой зависимости от хранилища. Объем-абстракция Kubernetes позволяет вам предоставлять и использовать хранилище стандартным способом.
PersistentVolumeClaim используется для предоставления ограничения хранилища наряду с развертыванием приложения.
PersistentVolume предлагает экземпляры томов всего кластера, готовые к использованию (" bound
") - PersistentVolume будет привязан к одному утверждению. Но поскольку несколько экземпляров этого утверждения могут быть запущены на нескольких узлах, доступ к этому объему может осуществляться несколькими узлами.
PersistentVolume без StorageClass считается статическим.
"Динамическое предоставление томов" вместе с StorageClass позволяет кластеру предоставлять PersistentVolumes по требованию. Для того чтобы эта работа работала, данный поставщик хранилища должен поддерживать инициализацию - тогда он позволит кластеру запрашивать инициализацию "нового" PersistentVolume при появлении неудовлетворенного PersistentVolumeClaim.