【问题标题】:What advantage and disadvantages using shared volume between pod vs. each pod having own pvc volume(in case of statefulset)?在 pod 之间使用共享卷与每个 pod 具有自己的 pvc 卷(在 statefulset 的情况下)有什么优点和缺点?
【发布时间】:2018-12-27 06:11:50
【问题描述】:

在 kubenetes 中,对所有 pod 使用单个共享 pvc 和为每个 pod 使用多个 pvc 有哪些优点和缺点。

【问题讨论】:

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


    【解决方案1】:

    Statefulset with single PV/PVCStatefulset with multiple PV/PVC有不同的用例,应该根据你要部署的应用来使用。你不能先于另一个。

    让我用数据库的例子来解释一下,如果你想部署relational database,比如postgresql,所有数据都存储在一个地方。您需要具有单个 PV/PVC 的 statefulset 以及仅写入该特定卷的所有副本。这是在 postgresql 中保持数据一致的唯一方法。

    现在假设您要部署distributed nosql database,如cassandra/mongodb,其中数据沿着不同的机器和数据库集群进行拆分。在这样的数据库中,数据在不同的节点上复制,在这种情况下,statefulsets pod 充当该数据库的不同节点。因此,这样的 Pod 需要不同的容量来存储它们的数据。因此,如果您使用 3 个 pod 运行 cassandra statefulset,则这些 pod 必须附加不同的 PV/PVC。每个节点都在自己的 PV 上写入数据,并最终复制到其他节点。

    【讨论】:

    • 非常感谢您的解释。我正在计划我的 sql statefulset 与单个共享卷和 3 个副本 pod.1 主 2 从和 2 个工作节点
    猜你喜欢
    • 2017-10-05
    • 2019-05-24
    • 1970-01-01
    • 2021-04-04
    • 1970-01-01
    • 2019-11-12
    • 1970-01-01
    • 2019-10-26
    • 1970-01-01
    相关资源
    最近更新 更多