storage R&D guy.
全部博文(1000)
分类: 服务器与存储
2016-01-14 20:33:42
原文地址:ceph OSD恢复过程分析(一) 作者:shenyanxxxy
do_recovery为恢复的核心函数。存储的时候都是以oid的形式进行存储的,那么迁移的时候都是按照oid来一个一个的进行迁移的。BackfillInterval 代表了将要恢复的一段object
通过send_pushes进行推送,每次推送多个object,数量和大小在配置文件中可以设置。Recovery_WQ调用_process(),_process调用 do_recovery恢复某一个固定pg的数据。worker 进程负责监控队列,并从队列中摘除task。调用的栈为:worker->void_process->_processRecoveryWQ 是一个定义在osd内部的恢复队列,recovery_wq是其一个对象实例。TrivialEvent 包含了如下的Event:这些event都是boost的 statechart类型的。其中一个push message包含了多个object,这些object的数据在build_push_ops中被填充,填充方法如下:
点击(此处)折叠或打开