【CEPH】RBD拍平原理和shell腳本測試

原理




測試數據


        三個塊大小分別爲10G,30G,50G


測試腳本



 

#!/bin/bash

for size in 10240 30720 51200
do
 echo "****************************************************"
 echo "test rbd ${size}M ...."
 rbd create yxjtest${size} --size ${size} --image-format 2

 for i in 1 #set snap and clone number,if set 5,change it as  " for i in 1 2 3 4 5" 
  do
   begintime=$[$(date +%s%N)/1000000]
   echo "begin time:${begintime}ms"
   
   #echo " create snap snap${size}-$i... "
   rbd snap create rbd/yxjtest${size}@snap${size}-$i
   #echo " set protect for ..."
   rbd snap protect rbd/yxjtest${size}@snap${size}-$i
   #echo "create a clone for snap ..."
   rbd clone rbd/yxjtest${size}@snap${size}-$i rbd/child${size}-$i 
   rbd info --image child${size}-$i
   
   #flatten an rbd
   rbd flatten rbd/child${size}-$i
   rbd info --image child${size}-$i

   endtime=$[$(date +%s%N)/1000000]
   echo "end time:${endtime}ms"
   let handletimes=$endtime-$begintime
   echo "handle times:${handletimes}ms"
 
  done
  rbd snap ls rbd/yxjtest$size
 
 echo "               -----------                      " 
 echo "clean beginng ..."
 for ii in  1  #set snap and clone number,if set 5,change it as  " for i in 1 2 3 4 5"
  do
   rbd snap unprotect rbd/yxjtest$size@snap${size}-${ii}
   rbd snap rm rbd/yxjtest$size@snap${size}-${ii}
   rbd rm child${size}-$ii
  done

 rbd snap purge rbd/yxjtest$size
 rbd rm yxjtest$size
  
 echo "clean finish ...."
 echo "****************************************************"
 echo -e
done


測試結果


測試10G的RBD,拍平時間爲22.512秒




測試30G的RBD,拍平時間爲61.793秒




測試50G的RBD,測試時間爲95.764秒



發佈了79 篇原創文章 · 獲贊 75 · 訪問量 44萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章