首页 / 最佳实践 / 存储 / 本地存储服务资源清理

本地存储服务资源清理

如果需要删除本地存储集群,重新部署一个新的集群,需要按照本文依次清理本地存储服务相关资源。

注意事项

在清理本地存储之前,请保证所有使用 TopoLVM 存储的 PVC、PV 资源已被删除。

删除快照类

  1. 删除快照类。

    kubectl delete VolumeSnapshotClass csi-topolvm-snapshotclass
  2. 验证快照类清理是否完毕。

    kubectl get VolumeSnapshotClass |grep topolvm

    当该命令没有任何输出时,表示清理完毕。

删除存储类

  1. 在左侧导航栏中,单击 存储管理 > 存储类

  2. 单击 > 删除,删除所有使用 TopoLVM 存储方案的存储类。

删除 TopoLVM Cluster

此步骤要在上个步骤清理完毕之后执行。

  1. 单击 集群管理 > 资源管理,选择相应的集群,搜索 TopolvmCluster

  2. 单击 > 更新,将 spec.cleanup 字段设置为 true

  3. 单击 更新

  4. 删除 TopoLVM Cluster。

    kubectl delete topolvmcluster -n nativestor-system topolvm
  5. 验证 TopoLVM Cluster 清理是否完毕。

    kubectl get topolvmcluster -n nativestor-system | grep topolvm

    当该命令没有任何输出时,表示清理完毕。

删除 TopoLVM Operator

此步骤要在上个步骤清理完毕之后执行。

  1. 删除 TopoLVM Operator。

    kubectl -n nativestor-system delete subscriptions.operators.coreos.com topolvm-operator
  2. 验证 TopoLVM Operator 清理是否完毕。

    kubectl get subscriptions.operators.coreos.com -n nativestor-system | grep topolvm

    当该命令没有任何输出时,表示清理完毕。

  3. 验证 TopoLVM 清理是否完毕。

    kubectl get all -n nativestor-system

    当该命令没有任何输出时,表示清理完毕。

清理磁盘

注意事项

使用 sgdisk 命令清理磁盘前,请务必确认已安装 sgdisk。

操作步骤

  1. 检查分区信息。

    lsblk -f /dev/<设备名称>

    当该命令的输出中 FSTYPE 列为空时,表示清理完毕。

  2. FSTYPE 列为 LVM2_member 时,需使用 LVM 管理命令删除 LV(逻辑卷,Logical Volume)、VG(卷组,Volume Group)和 PV(物理卷,Physical Volume)。

    vgs     # 查看 VG 的名称 
    vgremove <vg 名称>    # 删除 VG,删除时会提示存在 LV,回复 y 删除即可
    pvremove /dev/<设备名称>    # 将 PV 从 LVM 解除
    sgdisk --zap-all /dev/<设备名称>    # 使用 sgdisk 命令清理磁盘