一个持久卷是否可以被多个持久卷声明消耗?

Vin*_*lho 2 kubernetes

假设一个 PV 可以被多个 PVC 消耗并且每个 pod 实例需要一个 PVC 绑定,这样的假设是否正确?我这么问是因为我创建了一个 PV,然后创建了一个具有不同尺寸要求的 PVC,例如:

kind: PersistentVolume
apiVersion: v1
metadata:
  name: k8sdisk
  labels:
    type: amazonEBS
spec:
  capacity:
    storage: 200Gi
  accessModes:
    - ReadWriteOnce
  awsElasticBlockStore:
    volumeID: vol-xxxxxx
    fsType: ext4


kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: couchbase-pvc
  labels:
    type: amazonEBS
spec:
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 5Gi
Run Code Online (Sandbox Code Playgroud)

但当我将 PVC 与 pod 一起使用时,它显示为 200GB 可用空间,而不是 5GB。

我确信我把事情搞混了,但找不到合理的解释。

Rad*_*nka 5

当您有 PVC 时,它会寻找满足其要求的 PV,但除非它是多访问模式下的卷和声明(并且支持它的后端数量有限,例如 NFS - 详细信息请参阅https://kubernetes.io/docs/concepts/storage/persistent-volumes/#access-modes),PV不会被多个PVC共享。此外,PVC 的大小并不是作为 pod 生命周期内保存在卷上的数据量的配额,而是作为匹配足够大的 PV 的一种方式,仅此而已。