我正试图使我的头脑中的持久性卷&持久性卷索赔,以及它应该如何在赫尔姆.
TLDR版本的问题是:如何创建一个PVC掌舵,我可以附加未来的版本(无论是升级或全新安装)?
我现在的理解:
PV是一个物理存储器的接口。PVC是一个吊舱如何声称存在一个PV,供其自己使用。当吊舱被删除时,PVC也被删除,但是PV被维护-因此是持久化的。但我怎么再用一遍呢?
我知道动态提供PV是可能的。就像Google一样,如果您创建 a PVC,它将自动为您创建一个PV。
这是我被困在..。
我已经创建了一个显式创建PVC的舵图&因此在发布版中有一个动态创建的PV。然后,我将删除该版本,该版本也将删除PVC。云提供商将维护PV。在随后的一个新版本中安装相同的图表.如何重用旧的PV?有办法做到这一点吗?
我确实找到了this question的答案.然而,这意味着您需要为您需要的每个PVC预先创建PVs,而复制和自动缩放的全部要点是,所有这些都应该根据需要生成。
与往常一样,用例用于测试/开发环境,在这里我希望数据被持久化,但我并不总是希望服务器运行。
提前谢谢你!我的大脑有点疼,因为我搞不懂.>.<
发布于 2018-08-24 05:49:09
这确实会令人头痛。
让我们从如何使用RWO存储库来实现可伸缩的部署开始,RWO存储在您的单个吊舱上。这就是volumeClaimTemplates发挥作用的地方。您可以让PVC创建动态作为您的部署规模。然而,当你的吊舱需要附加到一个吊舱上的存储空间时,这种情况非常适合,但当吊舱离开时就不再需要了(容量可以在回收策略之后被重用)。
如果您需要这样的数据,当pod失败时,您应该想到StatefulSets,它至少解决了这个部分。
现在,如果您显式地使用PVC,您可以更好地控制发生的事情,但是对于RWO来说,动态可伸缩性会有问题。这和您所链接的响应中的手动PV管理实际上可以实现卷重用,这是我能想到的唯一允许它的机制。
当你碰到这样一堵墙后,是时候考虑一下其他的选择了。例如,为什么不使用一个StatefulSet,使您在运行集群时保留存储,而不是删除图表,而是将它的所有副本设置为0,保留非计算资源,但将其缩小为零。然后,当你扩大一个静态绑定聚氯乙烯应该重新连接到重新标度的豆荚。
https://stackoverflow.com/questions/51997793
复制相似问题