在Pod与具有自己的pvc卷的每个Pod之间使用共享卷有什么优缺点(在有状态集的情况下)?

时间:2018-12-27 06:11:51

标签: amazon-web-services docker kubernetes kubectl kubernetes-pvc

在kubenet中,对所有Pod使用单个共享pvc,对每个Pod使用多个pvc有什么优点和缺点。

1 个答案:

答案 0 :(得分:3)

Statefulset with single PV/PVCStatefulset with multiple PV/PVC具有不同的用例,应根据要部署的应用程序使用。您不能先于另一人。

如果要将relational database之类的postgresql部署在所有数据存储在一个地方的位置,请让我用数据库示例进行解释。您只需要带有单个PV / PVC的statefulset和仅用于写入该特定卷的所有副本。这是在Postgresql中保持数据一致的唯一方法。

现在可以说您要部署一个像distributed nosql database这样的cassandra/mongodb,其中的数据将沿着不同的计算机和数据库集群进行拆分。在这样的数据库中,数据被复制到不同的节点上,在这种情况下,状态集pod充当该数据库的不同节点。因此,此类容器需要不同的容量来存储其数据。因此,如果您使用3个吊舱运行cassandra statefulset,则这些吊舱必须附加有不同的PV / PVC。每个节点都在自己的PV上写入数据,并最终复制到其他节点。