暂未分类暂未分类简单的统计剩余ceph迁移时间
zphj1987需求
由于迁移忽快忽慢,需要知道大概的迁移的时间,做了一个简单的统计脚本,可能不准,大概能够知道在什么范围内
脚本
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| #! /bin/sh while ( 2>1 ) do start=`ceph -s|grep pgs|grep mis|awk '{print $2}'|cut -d / -f 1` sleep 5 end=`ceph -s|grep pgs|grep mis|awk '{print $2}'|cut -d / -f 1` speed=$((start-end))
second=$((end/speed*5))
hour=$(( $second/3600 )) min=$(( ($second-${hour}*3600)/60 )) sec=$(( $second-${hour}*3600-${min}*60 )) echo 当前时间:`date` echo 迁移剩余:$end echo 迁移速度:$((speed/5)) echo 迁移还需要:${hour}小时${min}分${sec}秒
done
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| #! /bin/sh while ( 2>1 ) do start=`ceph -s -f json-pretty|grep misplaced_objects|cut -d ":" -f 2|cut -d ',' -f 1` sleep 5 end=`ceph -s -f json-pretty|grep misplaced_objects|cut -d ":" -f 2|cut -d ',' -f 1` speed=$((start-end))
second=$((end/speed*5))
hour=$(( $second/3600 )) min=$(( ($second-${hour}*3600)/60 )) sec=$(( $second-${hour}*3600-${min}*60 )) echo 当前时间:`date` echo 迁移剩余:$end echo 迁移速度:$((speed/5)) echo 迁移还需要:${hour}小时${min}分${sec}秒
done
|
上面的脚本有的时候获取的字段不对,后面的一个脚本获取的好一点
上面的统计周期为5秒,理论上设置的周期越长,统计的越接近真实的