一种磁盘故障探测方法、装置、设备及可读存储介质制造方法及图纸

技术编号:30902139 阅读:33 留言:0更新日期:2021-11-22 23:46
本发明专利技术公开了一种磁盘故障探测方法,包括:对检测到的磁盘读对象EIO异常进行解析,得到执行本次IO操作的目标sd驱动;查找目标sd驱动对应的目标sg驱动;调用目标sg驱动的ioctl接口对磁盘的off\len区域进行读取操作;判断是否对磁盘的off\len区域读取成功;若是,则调用目标sd驱动对出现磁盘读对象EIO异常的目标磁盘读对象进行重读操作;若否,则利用目标sg驱动获取磁盘读对象EIO异常对应的错误原因信息,并将错误原因信息透传至用户态。本发明专利技术避免了不必要的换盘,降低了对上层业务的影响,提升了存储系统的可用性。本发明专利技术还公开了一种磁盘故障探测装置、设备及存储介质,具有相应技术效果。技术效果。技术效果。

【技术实现步骤摘要】
一种磁盘故障探测方法、装置、设备及可读存储介质


[0001]本专利技术涉及存储
,特别是涉及一种磁盘故障探测方法、装置、设备及计算机可读存储介质。

技术介绍

[0002]随着大数据、云计算、高性能应用大量兴起,将分布式存储系统作为后端存储,而存储在使用一段时间后,经常出现磁盘EIO(I/O Error)故障,即linux错误码,表示IO(输入/输出)出错。
[0003]存储读取数据出现EIO时,存储无法区分出具体的故障类型,比如硬盘故障(Hardware error)、Medium error、Not Ready、拔盘、did_bad_target、did_no_connect、did_soft_error、命令超时等等,因用户态无法获取故障原因,所以无法对EIO的磁盘做进一步的处理,只能主动断言(assert)踢盘。该方法会出现很多不必要的换盘,影响上层业务,导致存储系统可用性低。
[0004]综上所述,如何有效地解决易出现不必要的换盘,影响上层业务,导致存储系统可用性低等问题,是目前本领域技术人员急需解决的问题。...

【技术保护点】

【技术特征摘要】
1.一种磁盘故障探测方法,其特征在于,包括:对检测到的磁盘读对象EIO异常进行解析,得到执行本次IO操作的目标sd驱动;查找所述目标sd驱动对应的目标sg驱动;其中,预先维护有磁盘中各sg驱动与各sd驱动之间的对应关系;调用所述目标sg驱动的ioctl接口对所述磁盘的off\len区域进行读取操作;判断是否对所述磁盘的off\len区域读取成功;若是,则调用所述目标sd驱动对出现所述磁盘读对象EIO异常的目标磁盘读对象进行重读操作;若否,则利用所述目标sg驱动获取所述磁盘读对象EIO异常对应的错误原因信息,并将所述错误原因信息透传至用户态。2.根据权利要求1所述的磁盘故障探测方法,其特征在于,将所述错误原因信息透传至用户态,包括:判断所述错误原因信息的数据格式是否为senseinfo格式;若否,则对所述错误原因信息进行格式转化,得到sense info格式的错误原因信息;将senseinfo格式的错误原因信息透传至用户态。3.根据权利要求1或2所述的磁盘故障探测方法,其特征在于,在利用所述目标sg驱动获取所述磁盘读对象EIO异常对应的错误原因信息之后,还包括:判断所述错误原因信息是否为Medium Error;若是,则对所述目标磁盘读对象进行数据恢复操作;若否,则对所述磁盘进行剔除操作。4.根据权利要求3所述的磁盘故障探测方法,其特征在于,在对所述磁盘进行剔除操作之后,还包括:生成故障告警信息,并对所述故障告警信息进行上报操作。5.根据权利要求1所述的磁盘故障探测方法,其特征在于,调用所述目标sg驱动的ioctl接口对所述磁盘的off\len区域进行读取操作,包括:确定所述目标sg驱动对应的目标读缓存区;计算所述目标读缓存区相对于裸盘的目标偏移量;调用所述目标sg驱动的ioctl接口根据所述目标偏移量对所述磁盘的off\len区域进行读取操作。6.根据权利要求1所述的磁盘故障探测方法,其特征在于,在调用所述目标sd驱动对出现所述磁盘...

【专利技术属性】
技术研发人员:贺计文
申请(专利权)人:济南浪潮数据技术有限公司
类型:发明
国别省市:

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

1