美好的一天!
如果在 Openshift 中创建 PVC 时未明确指定卷名,则 PVC 将绑定到哪个 PV?
我认为如果存储大小与声明匹配,PVC 可以绑定到处于"可用"状态的任何 PV。
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: pvc_name
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10G
storageClassName: ""
volumeName:
告诉我这个过程是如何工作的? 谢谢。
在 Kubernetes 中,由于对于storageClassName: ""
动态配置不起作用,Kubernetes 将查看现有 PV 列表,寻找没有类的最小匹配 PV,直到 DefaultStorageClass 准入插件打开。
如果提供了选择器或访问模式,则逻辑 AND 将应用于要求。因此,将选择唯一没有类且具有请求模式和标签的 PV。
设置默认存储类后,其值将用于为不需要任何特定类的 PVC 动态设置存储。
至于有问题的PVC样本,ccshih提供了几乎确切的答案:在没有启用和配置DefaultStorageClass的情况下,将绑定大小为10G(10e9字节~9.3 GiB(或更大的最小可用PV,没有类和ReadWriteOnce访问模式。
请参阅卷和声明的生命周期
此处介绍了预配逻辑:预配卷的控制器工作流