一种OSD故障的检测方法及装置制造方法及图纸

技术编号:19933834 阅读:162 留言:0更新日期:2018-12-29 04:25
本发明专利技术公开了一种OSD故障的检测方法及装置,用于减少监控器节点发现故障的对象存储设备OSD的时间间隔,进而尽快触发放置组PG的恢复过程,减少前端业务的中断时间。本发明专利技术方法包括:当监视器Monitor检测到第一对象存储设备OSD发生异常时,通过第一OSD向Monitor上报第一OSD异常;通过Monitor更新OSDMAP;通过Monitor将更新后的OSDMAP发送至第一OSD所属的目标放置组PG内的其他OSD;通过Monitor向第一OSD发送反馈消息,以使得第一OSD根据所述反馈消息退出服务。

【技术实现步骤摘要】
一种OSD故障的检测方法及装置
本专利技术涉及存储领域,尤其涉及一种OSD故障的检测方法及装置。
技术介绍
在分布式存储集群中,读写请求都是先发送给一个放置组(placegroup,PG)内的主对象存储设备(objectstoragedevice,OSD),再由主OSD发送给从OSD,主OSD和从OSD互为伙伴OSD,其中,每一个OSD都对应一块磁盘,负责存储数据和元数据。因此当主OSD发生故障时,PG就会停止处理读写请求。同一个PG内的OSD通过心跳来检测伙伴OSD是否存在,当超过一定的时间未收到对方的心跳响应时,就认为伙伴OSD出现了故障,将所属的PG置为降级状态(degraded),并向监控器(Monitor)节点上报异常。当Monitor节点收到足够多的异常上报时,将出现故障的OSD设置为down状态,然后更新OSDMAP并推送给相关的OSD。PG在收到最新的OSDMAP后,会从其余正常的OSD中找个新的来代替出现故障的OSD,并将数据回填到该OSD上,之后PG状态变为正常并开始处理业务。在这整个过程中前端业务会中断,中断时间取决于Monitor发现OSD出现故障并更新OSDMAP的时间。在现有方案中,每个OSD往往会承载上百个PG,而且肯定会在某个PG中作为主OSD,而在大规模的集群中发生因坏盘等问题导致OSD退出的现象也无法避免,因此现有方案会导致前端业务存在长时间中断的风险。
技术实现思路
本专利技术实施例提供了一种OSD故障的检测方法及装置,用于减少监控器节点发现故障的对象存储设备OSD的时间间隔,进而尽快触发放置组PG的恢复过程,减少前端业务的中断时间。本专利技术第一方面提供了一种OSD故障的检测方法,其特征在于,应用于分布式存储系统,包括:当监视器Monitor检测到第一对象存储设备OSD发生异常时,通过第一OSD向Monitor上报第一OSD异常;通过Monitor更新OSDMAP;通过Monitor将更新后的OSDMAP发送至第一OSD所属的目标放置组PG内的其他OSD;通过Monitor向第一OSD发送反馈消息,以使得第一OSD根据反馈消息退出服务。本专利技术实施例中,通过发生故障的对象存储设备OSD向监视器主动上报异常,减少监控器节点发现故障OSD的时间间隔,进而尽快触发放置组PG的恢复过程,减少前端业务的中断时间。在一种可能的设计中,在本专利技术实施例第一方面的第一种实现方式中,在所述通过所述Monitor向所述第一OSD发送反馈消息之后,所述方法还包括:通过Monitor确定新的主OSD;通过新的主OSD触发目标PG的恢复过程。在一种可能的设计中,在本专利技术实施例第一方面的第二种实现方式中,通过Monitor确定新的主OSD包括:通过Monitor设置第一OSD的状态为down;通过Monitor更新OSDMAP并将更新后的OSDMAP发送至其他OSD;通过Monitor选择其他OSD中的任意一个作为临时的主OSD;通过临时的主OSD确定第二OSD作为目标PG的新的主OSD。在一种可能的设计中,在本专利技术实施例第一方面的第三种实现方式中,通过新的主OSD触发目标PG的恢复过程包括:通过第二OSD确定第一OSD上存储的目标数据;将目标数据写入到第二OSD。在一种可能的设计中,在本专利技术实施例第一方面的第四种实现方式中,所述方法还包括:当第一OSD在预置时长内未获取到反馈消息时,控制第一OSD退出服务;通过目标PG内的其他OSD进行心跳检测。本专利技术第二方面提供了一种OSD故障的检测装置,应用于分布式存储系统,包括:上报单元,当监视器Monitor检测到第一对象存储设备OSD发生异常时,用于通过第一OSD向Monitor上报第一OSD异常;更新单元,用于通过Monitor更新OSDMAP;第一发送单元,用于通过Monitor将更新后的OSDMAP发送至第一OSD所属的目标放置组PG内的其他OSD;第二发送单元,用于通过Monitor向所述第一OSD发送反馈消息,以使得第一OSD根据反馈消息退出服务。本专利技术实施例中,通过发生故障的对象存储设备OSD向监视器主动上报异常,减少监控器节点发现故障OSD的时间间隔,进而尽快触发放置组PG的恢复过程,减少前端业务的中断时间。在一种可能的设计中,在本专利技术实施例第二方面的第一种实现方式中,所述检测装置还包括:确定单元,用于通过Monitor确定新的主OSD;触发单元,用于通过新的主OSD触发目标PG的恢复过程。在一种可能的设计中,在本专利技术实施例第二方面的第二种实现方式中,确定单元具体用于:通过Monitor设置第一OSD的状态为down;通过Monitor更新OSDMAP并发送至其他OSD;通过Monitor选择其他OSD中的任意一个作为临时的主OSD;通过临时的主OSD确定第二OSD作为目标PG的新的主OSD。在一种可能的设计中,在本专利技术实施例第二方面的第三种实现方式中,触发单元具体用于:通过第二OSD确定第一OSD上存储的目标数据;将目标数据写入到第二OSD。从以上技术方案可以看出,本专利技术实施例具有以下优点:当监视器Monitor检测到第一对象存储设备OSD发生异常时,通过第一OSD向Monitor上报第一OSD异常;通过Monitor更新OSDMAP;通过Monitor将更新后的OSDMAP发送至第一OSD所属的目标放置组PG内的其他OSD;通过Monitor向第一OSD发送反馈消息,以使得第一OSD根据所述反馈消息退出服务。本专利技术实施例中,通过发生故障的对象存储设备OSD向监视器主动上报异常,减少监控器节点发现故障OSD的时间间隔,进而尽快触发放置组PG的恢复过程,减少前端业务的中断时间。附图说明图1为本专利技术实施例中OSD故障的检测方法的一个实施例示意图;图2为本专利技术实施例中OSD故障的检测装置的一个实施例示意图;图3为本专利技术实施例中OSD故障的检测装置的另一个实施例示意图;图4为本专利技术实施例中OSD故障的检测装置的另一个实施例示意图;图5为本专利技术实施例提供的一种可能的电子设备的实施例示意图;图6为本专利技术实施例提供的一种可能的计算机可读存储介质的实施例示意图。具体实施方式本专利技术实施例提供了一种OSD故障的检测方法及装置,用于减少监控器节点发现故障的对象存储设备OSD的时间间隔,进而尽快触发放置组PG的恢复过程,减少前端业务的中断时间。本专利技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本专利技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。为便于说明,下面对本专利技术实施例的具体流程进行描述,请参阅图1,本专利技术实施例中OSD故障的检测方法的一个实施例包括:101、当监视器Monitor检测到第一对象存储设备OSD发生异常时,通过第一OSD向Mon本文档来自技高网...

【技术保护点】
1.一种OSD故障的检测方法,其特征在于,应用于分布式存储系统,包括:当监视器Monitor检测到第一对象存储设备OSD发生异常时,通过所述第一OSD向所述Monitor上报所述第一OSD异常;通过所述Monitor更新OSDMAP;通过所述Monitor将更新后的OSDMAP发送至所述第一OSD所属的目标放置组PG内的其他OSD;通过所述Monitor向所述第一OSD发送反馈消息,以使得所述第一OSD根据所述反馈消息退出服务。

【技术特征摘要】
1.一种OSD故障的检测方法,其特征在于,应用于分布式存储系统,包括:当监视器Monitor检测到第一对象存储设备OSD发生异常时,通过所述第一OSD向所述Monitor上报所述第一OSD异常;通过所述Monitor更新OSDMAP;通过所述Monitor将更新后的OSDMAP发送至所述第一OSD所属的目标放置组PG内的其他OSD;通过所述Monitor向所述第一OSD发送反馈消息,以使得所述第一OSD根据所述反馈消息退出服务。2.根据权利要求1所述的检测方法,其特征在于,在所述通过所述Monitor向所述第一OSD发送反馈消息之后,所述方法还包括:通过所述Monitor确定新的主OSD;通过所述新的主OSD触发所述目标PG的恢复过程。3.根据权利要求2所述的检测方法,其特征在于,所述通过所述Monitor确定新的主OSD包括:通过所述Monitor设置所述第一OSD的状态为down;通过所述Monitor更新OSDMAP并将更新后的OSDMAP发送至所述其他OSD;通过所述Monitor选择所述其他OSD中的任意一个作为临时的主OSD;通过所述临时的主OSD根据更新确定第二OSD作为所述目标PG的新的主OSD。4.根据权利要求3所述的检测方法,其特征在于,所述通过所述新的主OSD触发所述目标PG的恢复过程包括:通过所述第二OSD确定所述第一OSD上存储的目标数据;将所述目标数据写入到所述第二OSD。5.根据权利要求1-4任一所述的检测方法,其特征在于,所述方法还包括:当所述第一OSD在预置时长内未获取到所述反馈消息时,控制所述第一OSD退出服务;通过所述目标PG内的其他OSD进行心跳检测。...

【专利技术属性】
技术研发人员:孔帅
申请(专利权)人:广东浪潮大数据研究有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1