我们可以将多个 Pod 连接到同一个 PVC 吗?

Ani*_*ket 14 kubernetes persistent-volume-claims kubernetes-pod

我的意思是 pod 和 PVC 之间是否存在一对一或多对一的关系?我可以将两个或多个 Pod 连接到同一个 PVC(持久卷声明),而不删除或断开先前创建的 Pod 吗?

Jon*_*nas 16

我可以将两个或多个 Pod 连接到同一个 PVC(持久卷声明),而不删除或断开先前创建的 Pod 吗?

是的,这有效。但实际上这有点复杂。

可以使用不同的访问模式创建持久卷。您的存储系统可能会限制您可以使用的访问模式。例如,该访问模式ReadWriteMany仅在某些存储系统中可用。访问模式ReadWriteOnce是最常用的。

对于多个 Pod 访问以 access 方式挂载的持久卷ReadWriteOnce,必须将它们调度到同一节点才能并发访问该卷。

ReadWriteMany对于多个 Pod 访问以访问模式或挂载的持久卷ReadOnlyMany,可以将 Pod 调度到不同的节点。但在“云提供商”环境中,您在一个区域中使用多个可用区,您的持久卷通常只能在一个可用区中访问,因此您必须确保您的 Pod 被调度到同一可用区。云提供商通常也提供区域卷,但它们更昂贵,并且您需要为此使用特定的存储类别。


Sur*_*noi 8

是的,这是常见的用例之一。如果 PVC 有多个accessModeReadWriteMany,则多个 pod 可以同时挂载卷。

这里的访问模式是:

ReadWriteOnce -- the volume can be mounted as read-write by a single node
ReadOnlyMany -- the volume can be mounted read-only by many nodes
ReadWriteMany -- the volume can be mounted as read-write by many nodes
Run Code Online (Sandbox Code Playgroud)

欲了解更多详细信息,请参阅访问模式