zoukankan      html  css  js  c++  java
  • 快速删除rbd设备

    有时候需要删除大量的rbd设备,使用rbd rm 删除会很慢,其实可以采用多线程的方法来删除。

     

    列出所有卷的快照:

    time rbd ls |xargs -P 50 -I {} rbd snap ls {}         ##50是并发进程数

     

    快速删除所有卷的快照:

    time rbd ls |xargs -P 50 -I {} rbd snap rm rbd/{}@{}_snap        ##50是并发进程数

     

    快速删除rbd 设备:

    1、rados -p rbd ls|egrep 'rbd_id.|rbd_header.|rbd_data.'>delobject

    2、运行脚本sh delrbd.sh

     1 #!/bin/bash
     2 
     3 #####config
     4 process=50
     5 objectlistfile="./delobject"
     6 deletepool=rbd
     7 #####
     8 
     9   delete_fun()
    10   {
    11       date "+%Y-%m-%d %H:%M:%S"
    12       rados -p $deletepool rm $1
    13       #sleep 1
    14   }
    15 
    16  concurrent()
    17  {
    18      start=$1 && end=$2 && cur_num=$3
    19      mkfifo   ./fifo.$$ &&  exec 4<> ./fifo.$$ && rm -f ./fifo.$$
    20      for ((i=$start; i<$cur_num+$start; i++)); do
    21          echo "init  start delete process $i" >&4
    22      done
    23 
    24      for((i=$start; i<=$end; i++)); do
    25          read -u 4
    26          {
    27              echo -e "-- current delete: [:delete $i/$objectnum  $REPLY]"
    28              delob=`sed -n "${i}p" $objectlistfile`
    29              delete_fun $delob
    30              echo "delete $delob done"  1>&4 # write to $ff_file
    31          } &
    32      done
    33      wait
    34  }
    35 
    36 objectnum=`cat $objectlistfile|wc -l`
    37 concurrent 1 $objectnum $process

    3、time rbd ls |xargs -P 50 -I {} rbd rm {}         ##50是并发进程数

    查看卷被哪个客户端使用信息:

    1、rbd info testrbd_290

    2、rados -p rbd listwatchers rbd_header.2393ee6b8b4567

     或

    rbd status  testrbd_290

    解除被挂载的卷:

    for i in rbd showmapped |awk '{print $3}';do rbd unmap $i;done

     

    delrbd.sh脚本来源:https://www.cnblogs.com/zphj1987/p/13575449.

  • 相关阅读:
    android 从相册获取图片
    python 自定义函数
    《设计模式》-总复习(三)
    《设计模式》-总复习(二)
    《设计模式》-总复习(一)
    《设计模式》-策略模式
    《设计模式》-模板模式
    《设计模式》-访问者模式
    《设计模式》-观察者模式
    《设计模式》-命令模式
  • 原文地址:https://www.cnblogs.com/xzy186/p/14292005.html
Copyright © 2011-2022 走看看