如何强制删除volume
当一个volume因为一些原因,比如硬盘损坏等,然后再尝试进行删除的时候,进度可能会一直卡在deleting中。
此时一个有效的强制删除的方法并不是进入他的控制面板进行删除,而是再这个volume对应的CRD中(replicas.longhorn.io)清空他的finalizer来继续删除的进程,你可以在K8S的一些面板中删掉这个字段,也可以使用下面这个命令:
kubectl -n longhorn-system patch replicas.longhorn.io xxxx -p '{"metadata":{"finalizers": []}}' --type=merge
xxxx为对应的pvc的名字
如何对存储类进行标签的管理
我们可能有很多不同种类的硬盘,速度更快的ssd,具有更多备份的RAID组,不安全的利旧盘等。针对不同的存储需求,我们可能需要不同的存储类,这时候,副本数一个管理是不够的,我们需要通过标签来进行管理。
首先在longhorn面板中对node和disks打上标签,在node页面的operation中,选择edit node and disks,在下图的位置添加标签
然后创建存储类,使用例如下:
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: longhorn-single-not-stable-hdd
annotations:
kubesphere.io/description: 不重要的数据存储(redis,媒体站点等)
provisioner: driver.longhorn.io
parameters:
diskSelector: 'hdd,notstable'
nodeSelector: "storage"
fromBackup: ''
numberOfReplicas: '1'
staleReplicaTimeout: '2880'
reclaimPolicy: Delete
allowVolumeExpansion: true
volumeBindingMode: Immediate
评论
WdcGVzIEXQv
ekhDrYpjO
VmWHXsNedPcSBbRt