碰到一个场景 ceph集群中有一个机器坏了,一下掉了4块硬盘,考虑到容量的问题,加了一个新机器进去,等待数据同步中,同时对外正常提供服务 第二天发现同步还没有结束,机器还在做数据迁移,考虑到马上要有很高的业务io请求,进行的暂停同步的操作
ceph osd set nobackfill;ceph osd set norecover
万万没想到,实际情况跟理论的完全不一样,线上开始堆积了大量的io锁定
125 requests are blocked > 32 sec
业务io响应直线下滑,大量的告警随之而来。 最后重新打开同步锁定消失
ceph osd unset nobackfill;ceph osd unset norecover
后面分析这个问题