使用不同的模式从多个pod访问kubernetes存储—一个pod ReadWrite,另一个pod ReadOnly

使用不同的模式从多个pod访问kubernetes存储—一个pod ReadWrite,另一个pod ReadOnly,kubernetes,google-compute-engine,persistent-volumes,Kubernetes,Google Compute Engine,Persistent Volumes,我有一个pod,需要将数据持久保存到pod之外的位置。我认为一个持久的卷是一个好主意。名为writerPod的pod需要对该卷进行读写访问 其他多个pod(我称之为readingpod)需要读取writerPod保存的文件 是否可能有两个persistentVolumeClaims(PVC)(仅在accessMode ReadWriteOnce和ReadOnlyMany中不同)都绑定同一个PersistentVolume?PVC可以配置多个accessMode(ReadOnlyMany和Read

我有一个pod,需要将数据持久保存到pod之外的位置。我认为一个持久的卷是一个好主意。名为writerPod的pod需要对该卷进行读写访问

其他多个pod(我称之为readingpod)需要读取writerPod保存的文件


是否可能有两个persistentVolumeClaims(PVC)(仅在accessMode ReadWriteOnce和ReadOnlyMany中不同)都绑定同一个PersistentVolume?

PVC可以配置多个accessMode(ReadOnlyMany和ReadWriteOnce):

但是,正如名称所暗示的,您可以在ReadOnlyMany(又名
ROX
)中将磁盘装入多个pod,但一次只能有一个pod在ReadWriteOnce模式下使用该磁盘(又名
RWO

如果您的ReadingPod应该在writerPod写入数据后才启动-您可以使用相同的PVC,只需确保在安装PVC时将readOnly标志设置为true,例如:

volumes:
- name: test-volume
  persistentVolumeClaim:
    claimName: my-pvc
    readOnly: true
如果您使用的是支持ReadWriteMany访问模式的云提供商(不幸的是,Google现在不是其中之一),那么它在所有情况下都会适合您。检查以检查每个平台上支持的模式。

说明:ReadWriteMany:卷可以由多个节点以读写方式装入。由计算引擎永久磁盘支持的永久卷不支持此访问模式

说明:如果将永久性磁盘连接到多个实例,则所有这些实例都必须以只读模式连接永久性磁盘。在读写模式下,无法将永久磁盘连接到多个实例。如果需要在多个实例之间共享动态存储空间,可以使用以下选项之一:

将实例连接到云存储 将实例连接到文件存储 在计算引擎上创建网络文件服务器

volumes:
- name: test-volume
  persistentVolumeClaim:
    claimName: my-pvc
    readOnly: true