You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

DigitalOcean Kubernetes多副本共享do-block-storage持久卷失效问题

问题根因

1. 存储类型本身不支持跨副本共享

你使用的do-block-storage是DigitalOcean的块存储服务,块存储天生仅支持单节点挂载读写,无法同时挂载到多个节点。同时你的PVC配置的访问模式是ReadWriteOnce(RWO),该模式下PVC绑定的PV只能被同一个K8s节点上的Pod访问,跨节点的Pod无法复用这一PV。

2. 调度策略导致Pod跨节点分散

Deployment中配置的topologySpreadConstraints要求Pod按区域标签topology.kubernetes.io/region分散调度,4个副本会被分配到不同的节点甚至不同区域,每个节点都无法挂载其他节点绑定的块存储。这种情况下集群会自动为调度到新节点/区域的Pod创建新的独立PV,最终就会出现你看到的各副本存储独立、数据不互通的现象。

可选解决方案

  • 更换支持多节点读写的共享存储:do-block-storage不支持ReadWriteMany(RWX)访问模式,你可以自行部署NFS存储服务、使用第三方共享存储方案,或者直接将Ghost的内容存储对接DigitalOcean Spaces对象存储,无需本地持久卷。
  • 调整部署规模和调度规则:如果不需要多副本高可用,可将副本数调整为1,同时移除跨区域调度的配置,保证唯一的Pod始终调度在同一节点,即可正常使用现有块存储PVC。
  • 改造架构规避本地存储共享需求:将Ghost上传的静态资源、站点内容等统一存储到对象存储中,本地卷仅用于存放临时运行数据,不需要跨副本共享,即可在保留多副本部署的前提下使用现有块存储。

内容的提问来源于stack exchange,提问作者FrancisV

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 01:06:03