我目前正在考虑为GCP上的项目设置Kubernetes吊舱。
问题-我需要设置一个持久共享卷,该共享卷将由多个节点使用。我需要所有节点都能够从该卷读取,并且只有一个节点必须能够在该卷上写入。所以我需要一些建议,什么是最好的方法呢?
我已经检查了Kubernetes文档,并且知道GCEPersistentDisks
不支持ReadWriteMany
,但是无论如何,我认为这种访问方式实在是太过分了。关于ReadOnlyMany
,我知道节点可以从PV中读取,但是在这种情况下,我不知道如何或实际上可以修改PV。目前,我最好的选择是使用GCE永久磁盘设置NFS。
该解决方案还应该能够在云上或本地运行。任何建议将不胜感激:)
答案 0 :(得分:0)
根据官方documentation:
PVC与PV的结合是一对一的映射。
一次只能使用一种访问模式挂载一个卷,即使 它支持许多。例如,可以将GCEPersistentDisk安装为 单个节点读取ReadWriteOnce或多个节点读取ReadOnlyMany,但不是 同时。
因此,恐怕无法按照您的描述去做。
但是,您可能要尝试task queue
请告诉我是否有帮助。
答案 1 :(得分:0)
假设有一些NFS空间可用,则可以为其创建两个持久性卷声明(PVC):一个只读,一个可读写。 然后,您可以拥有两个永久卷,每个永久卷将PVC一对一绑定。
现在创建两个部署。其中之一描述了带有编写应用程序的窗格,并确保您具有一个副本。另一个部署描述了阅读应用程序,您可以将其缩放到任意数量。