说明

我们在修改PV的容量的时候,可能会想删除掉PVC,再进行重新创建,不就可以重新绑定之前的PV了, 可事实并不会,这时候的PV会变成Released状态,而PVC只能和Available 状态的 PV 进行绑定。

这时候需要管理员对PV进行修改,删除 claimRef 对 PVC 的引用, 使PV变成Available状态。 注意数据的备份与保存。

现象

kubectl get pv -n dev

# 结果
NAME        CAPACITY ACCESS MODES   RECLAIM POLICY  STATUS    CLAIM              STORAGECLASS  REASON  AGE
data-pv-dev 5Gi      RWX            Retain          Released  dev/data-pv-claim  nfs-slow              117d

解决

kubectl edit pv mims-data-pv-dev

# 删除字段
claimRef:
    apiVersion: v1
    kind: PersistentVolumeClaim
    name: data-pv-claim
    namespace: dev
    resourceVersion: "1113810"
    uid: f40897d6-02cd-4c23-866b-2eb78235cc6d

结果

kubectl get pv -n dev

# 正常绑定
NAME        CAPACITY ACCESS MODES   RECLAIM POLICY  STATUS    CLAIM              STORAGECLASS  REASON  AGE
data-pv-dev 5Gi      RWX            Retain          Bound     dev/data-pv-claim  nfs-slow              117d

注:若数据卷的数据保留策略不是Retain, 请提前做好数据迁移或备份

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐