添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

先保存一下对应的pvc信息

kubectl get pv/dwuserspv   -o yaml > /tmp/dwuserspv.yaml
kubectl get pvc/dwuserspvc   -o yaml > /tmp/dwuserspvc.yaml

此时pv的yaml文件 /tmp/dwuserspv.yaml大致如下

apiVersion: v1
kind: PersistentVolume
metadata:
  annotations:
    pv.kubernetes.io/bound-by-controller: "yes"
  creationTimestamp: "2020-05-11T11:11:19Z"
  deletionGracePeriodSeconds: 0
  deletionTimestamp: ""
  finalizers:
  - kubernetes.io/pv-protection
  name: dwuserspv
  resourceVersion: "197244835"
  selfLink: /api/v1/persistentvolumes/dwuserspv
  uid: 2414ff04-9378-11ea-9574-ac1f6b9ec91e
spec:
  accessModes:
  - ReadWriteMany
  capacity:
    storage: 1Ei
  cephfs:
    monitors:
    - pai-rtx-01
    - pai-rtx-02
    - pai-rtx-03
    - pai-2080ti-01
    - pai-2080ti-02
    path: /users
    secretFile: /etc/ceph/admin.secret
    user: admin
  claimRef:
    apiVersion: v1
    kind: PersistentVolumeClaim
    name: dwuserspvc
    namespace: default
    resourceVersion: "15567180"
    uid: 24183657-9378-11ea-9574-ac1f6b9ec91e
  mountOptions:
  - client_mds_namespace=1
  persistentVolumeReclaimPolicy: Retain
  volumeMode: Filesystem
status:
  phase: Bound

这里尝试过把yaml中的delete信息删除再强制应用,不过并未生效

deletionGracePeriodSeconds: 0
deletionTimestamp: “”

kubectl  edit pv dwuserspv
# 删除下面2行 修改完成之后pv会被删除 pvc会变成lost状态
#   finalizers:
#  - kubernetes.io/pv-protection

重新通过命令kubectl apply创建pv

即将备份文件中的delete信息删除

apiVersion: v1
kind: PersistentVolume
metadata:
  annotations:
    pv.kubernetes.io/bound-by-controller: "yes"
  creationTimestamp: "2020-05-11T11:11:19Z"
  finalizers:
  - kubernetes.io/pv-protection
  name: dwuserspv
  resourceVersion: "197218875"
  selfLink: /api/v1/persistentvolumes/dwuserspv
  uid: 2414ff04-9378-11ea-9574-ac1f6b9ec91e
spec:
  accessModes:
  - ReadWriteMany
  capacity:
    storage: 1Ei
  cephfs:
    monitors:
    - pai-rtx-01
    - pai-rtx-02
    - pai-rtx-03
    - pai-2080ti-01
    - pai-2080ti-02
    path: /users
    secretFile: /etc/ceph/admin.secret
    user: admin
  claimRef:
    apiVersion: v1
    kind: PersistentVolumeClaim
    name: dwuserspvc
    namespace: default
    resourceVersion: "15567180"
    uid: 24183657-9378-11ea-9574-ac1f6b9ec91e
  mountOptions:
  - client_mds_namespace=1
  persistentVolumeReclaimPolicy: Retain
  volumeMode: Filesystem
status:
  phase: Bound

再次查看pv恢复了,pvc也不是lost状态了

https://wjrsbu.smartapps.cn/zhihu/article?id=68601257&isShared=1&_swebfr=1&_swebFromHost=baiduboxapp

https://www.hangge.com/blog/cache/detail_3092.html

https://www.cnblogs.com/wangzy-Zj/p/14115491.html

导语:误删除pv后如何恢复如图:名为dwuserspv的pv已经删除 但是因为对应的pvc没有删除。状态一直为Terminating状态先保存一下对应的pvc信息kubectl get pv/dwuserspv -o yaml > /tmp/dwuserspv.yamlkubectl get pvc/dwuserspvc -o yaml > /tmp/dwuserspvc.yaml此时pv的yaml文件 /tmp/dwuserspv.yaml大致如下apiVersion
原文地址:https://kubernetes.cn/topics/46 API Server 和 PVController API Server: 这个组件提供对API的支持,响应REST操作,验证API模型和更新etcd中的相应对象 PVController: 是ontroller.volume.persistentvolume.PersistentVolumeController的简称,负责...
我们对 PVPVC 的几种状态应该不算陌生,但是在使用过程中可能也会产生一些疑问,比如为什么 PVC 变成 Lost 状态了,新创建的 PVC 如何能够绑定之前的 PV,我可以恢复之前的 PV 吗?这里我们就来对 PVPVC 中的几种状态变化再次进行说明。 在不同的情况下,PVPVC 的状态变化我们用如下所示的表格来进行说明: 创建PV 正常情况下 PV 被创建成功后是 Available 状态: apiVersion: v1 kind: PersistentVolume metada.
企业运维实战--k8s学习笔记8.Volumes配置管理之动态pv、statefulset的使用一、Nfs动态分配pv二、StatefulSet如何通过Headless Service维持Pod的拓扑状态 一、Nfs动态分配pv 有两种PV提供的方式:静态和动态。 静态PV:集群管理员创建多个PV,它们携带着真实存储的详细信息,这些存储对于集群用户是可用的。它们存在于Kubernetes API中,并可用于存储使用。 动态PV:当管理员创建的静态PV都不匹配用户的PVC时,集群可能会尝试专门地供给volu
# 把default-pv换成你自己的pv名字即可 $ kubectl patch pv default-pv -p '{"metadata":{"finalizers":null}}'
概述k8s最初用于管理无状态的服务,单随着越来越多的应用迁移的k8s平台,管理存储资源成为一个非常重要的功能。k8s使用两种资源管理存储: PersistentVolume(一些简称PV):由管理员添加的的一个存储的描述,是一个全局资源,包含存储的类型,存储的大小和访问模式等。它的生命周期独立于Pod,例如当使用它的Pod销毁时对PV没有影响。 PersistentVolumeClaim(一些简
简述 Kubernetes CSI 模型? 答:Kubernetes CSI 是 Kubernetes 推出与容器对接的存储接口标准,存储提供方只需要基于标准接口进行存储插件的实现,就能使用 Kubernetes 的原生存储机制为容器提供存储服务。 CSI 使得存储提供方的代码能和 Kubernetes 代码彻底解耦,部署也与 Kubernetes 核心组件分离,显然,存储插件的开发由提供方自行维护,就能为Kubernetes 用户提供更多的存储功能,也更加安全可靠。 CSI 包括 CSI Contr
如果你的数据库没有备份,那么恢复数据将会非常困难。但是,如果你有备份,可以尝试以下方法来恢复数据: 1. 将备份文件导入到数据库中:如果你有备份数据库的 SQL 文件,可以使用 MySQL 的工具 mysqldump 来导入数据。 2. 使用 MySQL 的 binlog 日志来恢复数据:如果你的 MySQL 服务器开启了 binlog 日志功能,可以使用 MySQL 的工具 mysqlbinlog 来查看日志并尝试找回误删除的数据。 3. 使用第三方工具来恢复数据:可以使用一些第三方的数据恢复工具来尝试恢复误删除的数据。 如果你不确定如何使用上述方法来恢复数据,可以尝试寻找专业的数据恢复服务。