用于多个部署的 PersistentVolume 和 PersistentVolumeClaim
PersistentVolume and PersistentVolumeClaim for multiple deployments
我有 3 个部署,a-depl
、b-depl
、c-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
一个PV只能绑定一个PVC。所以对于你的每一个 PVC 你都需要创建一个相应的 PV。要自动创建 PV,您可以创建一个 StorageClass
并在您的 PVC 中引用该 StorageClass
。 StorageClass
可以为每个 PVC 动态提供一个 PV。
多个部署是否可以使用相同的 PVC 或 PV 取决于 PVC 或 PV 的accessModes
。
ReadOnlyMany
- 该卷可以被许多节点以只读方式挂载
ReadWriteMany
- 卷可以被许多节点挂载为读写
ReadWriteOnce
- 卷可以被单个节点挂载为读写
一个 运行 个 pod 的多个副本如何让每个 pod 使用自己的存储
体积?
StatefulSet 资源,专门为应用程序量身定制,其中应用程序的实例必须被视为不可替代的个体,每个实例都有一个稳定的名称和状态。
我有 3 个部署,a-depl
、b-depl
、c-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
一个PV只能绑定一个PVC。所以对于你的每一个 PVC 你都需要创建一个相应的 PV。要自动创建 PV,您可以创建一个 StorageClass
并在您的 PVC 中引用该 StorageClass
。 StorageClass
可以为每个 PVC 动态提供一个 PV。
多个部署是否可以使用相同的 PVC 或 PV 取决于 PVC 或 PV 的accessModes
。
ReadOnlyMany
- 该卷可以被许多节点以只读方式挂载
ReadWriteMany
- 卷可以被许多节点挂载为读写
ReadWriteOnce
- 卷可以被单个节点挂载为读写
一个 运行 个 pod 的多个副本如何让每个 pod 使用自己的存储 体积? StatefulSet 资源,专门为应用程序量身定制,其中应用程序的实例必须被视为不可替代的个体,每个实例都有一个稳定的名称和状态。