在kubenetes中,对于每个pod使用单个共享pvc以及所有pod和多个pvc的优点和缺点是什么。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
Statefulset with single PV/PVC并且Statefulset with multiple PV/PVC具有不同的用例,应根据您要部署的应用程序使用。你不能先于另一个。
让我来解释一下你与实例数据库,如果你要部署的relational database类似postgresql,其中存储在一个地方的所有数据。您需要使用单个PV / PVC进行状态设置,并且所有副本只能写入该特定卷。这是在postgresql中保持数据一致的唯一方法。
现在假设您要部署distributed nosql database类似cassandra/mongodb数据,其中数据沿着不同的计算机和数据库集群进行分割。在这样的数据库中,数据在不同节点上复制,在这种情况下,状态集pod充当该数据库的不同节点。因此,这样的pod需要不同的容量来存储他们的数据。因此,如果你正在使用3个pod运行cassandra statefulset,那些pod必须连接不同的PV / PVC。每个节点在其自己的PV上写入数据,并最终复制到其他节点。