用于多个部署的 PersistentVolume 和 PersistentVolumeClaim

Ami*_*war 3 kubernetes persistent-volumes persistent-volume-claims

我有 3个部署a-depl,,,,b-deplc-depl现在这 3 个部署中的每一个都有一个数据库部署:a-db-depl, b-db-depl, c-db-depl。现在我想保留这些数据库中的每一个。我需要为所有部署创建一个 PV 还是为每个部署创建一个 PV?

我知道 PV <-> PVC 是一对一的关系。但我不知道 Depl <-> PV。有人可以帮忙吗?

截至目前,我不知道,所以我对所有 dp 部署使用单个 PV

apiVersion: v1
kind: PersistentVolume
metadata:
  name: mongo-pv-volume
  labels:
    type: local
spec:
  storageClassName: manual
  capacity:
    storage: 10Gi
  volumeMode: Filesystem
  accessModes:
    - ReadWriteMany
  persistentVolumeReclaimPolicy: Retain
  hostPath:
    path: "/mnt/data/mongo"
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: mongo-pv-claim
spec:
  storageClassName: manual
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 2Gi
Run Code Online (Sandbox Code Playgroud)

Arg*_*dhu 7

同一时刻,一个PV只能绑定一个PVC。因此,对于每个 PVC,您需要创建一个相应的 PV。要自动创建 PV,您可以创建一个并在 PVC 中StorageClass引用它。可以为每个PVC动态配置PV。StorageClassStorageClass

多个部署是否可以使用相同的 PVC 或 PV 取决于accessModesPVC 或 PV。

ReadOnlyMany- 该卷可以由许多节点以只读方式安装

ReadWriteMany- 该卷可以由许多节点以读写方式安装

ReadWriteOnce- 该卷可以由单个节点以读写方式安装