PVC 为 Pod 提供容器之外的持久存储
PersistentVolumeClaim 把存储的生命周期与重建的 Pod 分开,但不保证一定能恢复数据。PersistentVolume 描述存储,声明请求存储,由控制器安排绑定或供应。真正的恢复仍取决于后备存储、可用拓扑与备份;有了 StorageClass,可以由 provisioner 动态供应,而不必预先建好每块卷。 声明与卷各自有独立的生命周期。finalizer 可以推迟对象删除,回收策略决定释放后的存储如何处理。维护前应核对两者:处理失误可能留下持续 Terminating 的声明、删掉本想保留的数据,或留下一份没人在用却仍在计费的存储。 保护机制推迟删除,不证明控制器健康。Retain 需要核对归属、备份并按提供方流程决策。保留诊断仍受阻,本轮未重跑。 声明、卷与绑定 普通匹配会检查容量、访问模式、存储类、volumeMode、选择器及既有归属。不匹配的声明可以停在 Pending,应检查事件与 StorageClass,不能只猜一个原因。绑定不证明拓扑可用:显式指定 PV 时,即使节点亲和性冲突也可能绑定成功,后续调度与挂载仍需各自成功。已释放但尚未回收的 Retain 卷也不会自动成为新声明的可用备件;旧 claimRef 可能仍然存在。 accessModes 没有默认值。ReadWriteOnce 允许单节点读写挂载,该节点上的多个 Pod 仍可能共用它,不是单 Pod 独占。ReadWriteOncePod 才为受支持的 CSI 卷提供单 Pod 约束;访问模式本身并不在挂载后执行写保护。Immediate 不等待消费者就开始绑定或供应,受拓扑限制的存储可能因此无法使用。受支持的 WaitForFirstConsumer 则结合消费 Pod 的调度约束协调存储,之后才完成放置;它不是先完成调度再随意创建卷。 ...