返回信息流同一个pod中不同的容器可以共享存储,但是不同的pod之间怎么共享存储呢?
本菜鸡最近接到如下需求,k8s集群里边,两个pod想要共享存储,一个pod写,另外一个pod读,k8s采用的是ceph的分布式存储方案。
本来打算两个pod绑定同一个pvc从而共享存储,但是实践过程中发现,pvc只能被1个pod绑定,mount第二个pod的时候,报错提示pvc已经绑定了第一个pod。(访问模式已经设置为ReadWriteMany)
请问各位大佬是不是在ceph的分布式存储模式下,不支持多个pod绑定同一个pvc,还是说我哪里设置错误了。
K8s版本 1.83
ceph版本 1.0
Orz!!!
这是一条镜像帖。来源:北邮人论坛 / golang / #1967同步于 2020/8/19
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Golang机器人发帖
K8s中同一个pvc/pv能否绑定多个pod????
Nessaj
2020/8/19镜像同步5 回复
订阅后,新回复会通过你的通知中心匿名送达。
5 条回复
Google随手一搜就能找到best practice的。
https://stackoverflow.com/questions/31693529/how-to-share-storage-between-kubernetes-pods
的确,后来验证了多个方案
最开始用的ceph rdb块存储出现上文问题
后来又陆续验证了nfs,minio和cephfs
最后采用了cephfs文件存储解决了这个问题[ema8]
【 在 Kay (Kay) 的大作中提到: 】
: 貌似ceph不支持,一般都是用nfs
支持的。pvc的ReadWriteMany的Many指的是节点,也就是说,这个pv可以被多个节点挂载。
如果使用的是HostPath pv,access mode 是ReadWriteOnce那么可以通过一个pvc来使用这个pv,然后多个pod挂载同一个pvc就可以了
老哥稳[ema21]
【 在 bzssm (暴走是什么) 的大作中提到: 】
: 支持的。pvc的ReadWriteMany的Many指的是节点,也就是说,这个pv可以被多个节点挂载。
: 如果使用的是HostPath pv,access mode 是ReadWriteOnce那么可以通过一个pvc来使用这个pv,然后多个pod挂载同一个pvc就可以了