CN117785074A - 一种输入输出超时处理的方法、装置、服务器及介质 - Google Patents

一种输入输出超时处理的方法、装置、服务器及介质 Download PDF

Info

Publication number
CN117785074A
CN117785074A CN202410218295.3A CN202410218295A CN117785074A CN 117785074 A CN117785074 A CN 117785074A CN 202410218295 A CN202410218295 A CN 202410218295A CN 117785074 A CN117785074 A CN 117785074A
Authority
CN
China
Prior art keywords
hard disk
input
output
timeout
physical layer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202410218295.3A
Other languages
English (en)
Other versions
CN117785074B (zh
Inventor
苏永奇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Jinan data Technology Co ltd
Original Assignee
Inspur Jinan data Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inspur Jinan data Technology Co ltd filed Critical Inspur Jinan data Technology Co ltd
Priority to CN202410218295.3A priority Critical patent/CN117785074B/zh
Publication of CN117785074A publication Critical patent/CN117785074A/zh
Application granted granted Critical
Publication of CN117785074B publication Critical patent/CN117785074B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种输入输出超时处理的方法、装置、服务器及介质,涉及服务器技术领域。该方法中,在根据服务器中执行输入输出超时的硬盘的情况确定出当前输入输出超时是硬盘异常引起时,在小型计算机系统接口驱动确定输入输出超时之前,先将执行输入输出异常的硬盘的物理层端口进行关闭,即对输入输出超时的硬盘进行隔离,保证了异常输入输出不会触发小型计算机系统接口驱动对输入输出超时的处理流程,即不会让独立冗余磁盘阵列的状态变为恢复状态,使得发送至该独立冗余磁盘阵列的输入输出不会阻塞,让上层软件不会感知到输入输出断流,保证了上层业务的正常使用。

Description

一种输入输出超时处理的方法、装置、服务器及介质
技术领域
本发明涉及服务器技术领域,特别是涉及一种输入输出超时处理的方法、装置、服务器及介质。
背景技术
当服务器的硬盘输入输出(Input/Output,IO)超时或错误,服务器的性能会受到影响,导致应用程序响应变慢或停止响应,甚至导致服务器崩溃或宕机。故而,需要对输入输出超时进行处理。
在相关的输入输出超时处理技术中,小型计算机系统接口(Small ComputerSystem Interface,SCSI)驱动对输入输出超时的设备进行错误处理。进入小型计算机系统接口驱动错误处理流程之前,小型计算机系统接口驱动会设置独立冗余磁盘阵列(Redundant Arrays of Independent Disks,RAID)的状态为恢复状态,此后该独立冗余磁盘阵列就会处于阻塞状态,任何发送该独立冗余磁盘阵列的输入输出都会阻塞,直至错误处理完成。在对输入输出超时处理的过程中,独立冗余磁盘阵列处于阻塞状态,导致挂载在独立冗余磁盘阵列下的硬盘出现输入输出断流,上层业务短时间无法使用。
由此可见,在对输入输出超时处理的同时,如何保证上层业务的正常使用是本领域人员亟需解决的技术问题。
发明内容
本发明的目的是提供一种输入输出超时处理的方法、装置、服务器及介质,以解决在对输入输出超时处理的过程中,独立冗余磁盘阵列处于阻塞状态,导致挂载在独立冗余磁盘阵列下的硬盘出现输入输出断流,上层业务短时间无法使用的技术问题。
为解决上述技术问题,本发明提供一种输入输出超时处理的方法,包括:
获取执行输入输出超时的硬盘;
根据服务器中的执行输入输出超时的硬盘的情况确定当前输入输出超时的类型;其中,输入输出超时的类型包括独立冗余磁盘阵列异常引起的硬盘执行输入输出超时、硬盘异常引起硬盘执行输入输出超时;
在检测到当前输入输出超时的类型为硬盘异常引起硬盘执行输入输出超时的情况下,在小型计算机系统接口驱动确定出输入输出超时之前,根据执行输入输出超时的硬盘对应的扩展卡的唯一编码和物理层的物理唯一编码关闭执行输入输出超时的硬盘的物理层端口。
一方面,确定当前硬盘执行输入输出超时包括:
获取当前硬盘的输入输出性能指标;其中,所述输入输出性能指标中包含根据系统对硬盘的操作情况确定出的指标以及根据上层软件对硬盘的操作情况确定出的指标;
在检测到一个所述输入输出性能指标满足对应的预设要求,或检测到多个所述输入输出性能指标满足对应的预设要求的情况下,确定当前硬盘执行输入输出超时。
另一方面,所述在检测到一个所述输入输出性能指标满足对应的预设要求,或检测到多个所述输入输出性能指标满足对应的预设要求的情况下,确定当前硬盘执行输入输出超时包括:
自检测当前硬盘的执行输入输出的情况开始,若在连续的检测周期内存在多个周期均检测到一个所述输入输出性能指标满足对应的预设要求,或多个所述输入输出性能指标满足对应的预设要求,则确定当前硬盘执行输入输出超时。
另一方面,所述根据系统对硬盘的操作情况确定出的指标至少包括:输入输出队列非空比例、第一平均每次输入输出请求处理的时长、第二平均每次输入输出请求处理的时长、硬盘处理的所有输入输出的数量;其中,所述第一平均每次输入输出请求处理的时长小于所述第二平均每次输入输出请求处理的时长,且所述第一平均每次输入输出请求处理的时长与所述第二平均每次输入输出请求处理的时长的差值为输入输出排队等待的时长;
所述根据上层软件对硬盘的操作情况确定出的指标至少包括:上层软件发送至硬盘的每秒执行完成输入输出的数量、上层软件发送至硬盘的未完成的输入输出的平均时延。
另一方面,所述输入输出性能指标为上层软件发送至硬盘的未完成的输入输出的平均时延;在检测到一个所述输入输出性能指标满足对应的预设要求的情况下,确定当前硬盘执行输入输出超时包括:
在检测到上层软件发送至硬盘的未完成的输入输出的平均时延大于或等于第一时长的情况下,确定当前硬盘执行输入输出超时;
在检测到多个所述输入输出性能指标满足对应的预设要求的情况下,确定当前硬盘执行输入输出超时至少包括以下之一:
在检测到输入输出队列非空比例大于预设比例的情况下,若所述第一平均每次输入输出请求处理的时长大于第二时长,则确定当前硬盘执行输入输出超时;
在检测到输入输出队列非空比例大于所述预设比例的情况下,若所述第二平均每次输入输出请求处理的时长大于第三时长、且每秒执行完成输入输出的数量小于预设数量,则确定当前硬盘执行输入输出超时;其中,所述第一时长大于所述第二时长以及所述第三时长,所述第二时长小于所述第三时长。
另一方面,根据服务器中的执行输入输出超时的硬盘的情况确定当前输入输出超时的类型包括:
在检测到服务器中执行输入输出超时的硬盘的数量大于或等于预设数量的情况下,确定当前输入输出超时的类型为独立冗余磁盘阵列异常引起的硬盘执行输入输出超时;
在检测到执行输入输出超时的硬盘的数量小于所述预设数量的情况下,确定当前输入输出超时的类型为硬盘异常引起硬盘执行输入输出超时。
另一方面,根据执行输入输出超时的当前硬盘对应的扩展卡的唯一编码和物理层的物理唯一编码关闭执行输入输出超时的当前硬盘的物理层端口包括:
获取执行输入输出超时的当前硬盘的槽位信息;
根据所述槽位信息获取当前硬盘所在的硬盘背板的槽位编号以及获取所述硬盘背板在服务器中的位置信息;
根据所述硬盘背板在服务器中的位置信息确定所述硬盘背板对应的扩展卡的串行连接小型计算机系统接口地址;
根据所述硬盘背板对应的扩展卡的串行连接小型计算机系统接口地址从服务器挂载的所有扩展卡的信息中查询扩展卡的唯一编码;
根据所述硬盘背板的槽位编号获取当前硬盘在物理层的物理唯一编码;
根据扩展卡的唯一编码和当前硬盘在物理层的物理唯一编码关闭执行输入输出超时的当前硬盘的物理层端口。
另一方面,输入输出超时处理的方法还包括:在检测到无法获取到以下信息之一,或检测到关闭执行输入输出超时的当前硬盘的物理层端口失败的情况下,输出用于表征关闭执行输入输出超时的当前硬盘的物理层端口失败的提示信息;
其中,所述信息包括所述槽位信息、所述硬盘背板在服务器中的位置信息、所述硬盘背板对应的扩展卡的串行连接小型计算机系统接口地址、扩展卡的唯一编码、当前硬盘在物理层的物理唯一编码。
另一方面,在根据扩展卡的唯一编码和当前硬盘在物理层的物理唯一编码关闭执行输入输出超时的当前硬盘的物理层端口之后,还包括:
在检测到完成关闭执行输入输出超时的当前硬盘的物理层端口的情况下,记录当前硬盘的所述槽位信息、序列号。
另一方面,在所述根据执行输入输出超时的硬盘对应的扩展卡的唯一编码和物理层的物理唯一编码关闭执行输入输出超时的硬盘的物理层端口之后,还包括:
自完成关闭执行输入输出超时的硬盘的物理层端口开始,预设时长内对执行输入输出超时的硬盘的物理层端口进行复位。
另一方面,对执行输入输出超时的硬盘的物理层端口进行复位包括:
在检测到执行输入输出超时的硬盘不在位、且执行输入输出超时的硬盘对应的物理层的状态为关闭状态的情况下,根据执行输入输出超时的硬盘对应的扩展卡的唯一编码和物理层的物理唯一编码开启执行输入输出超时的硬盘的物理层端口。
另一方面,在检测到执行输入输出超时的硬盘不在位、且执行输入输出超时的硬盘对应的物理层的状态为关闭状态的情况下,根据执行输入输出超时的硬盘对应的扩展卡的唯一编码和物理层的物理唯一编码开启执行输入输出超时的硬盘的物理层端口包括:
获取执行输入输出超时的当前硬盘的槽位信息;
根据所述槽位信息获取当前硬盘所在的硬盘背板的槽位编号以及获取所述硬盘背板在服务器中的位置信息;
根据所述硬盘背板的槽位编号和所述硬盘背板在服务器中的位置信息查询当前硬盘在所述硬盘背板上的索引值;
根据当前硬盘在所述硬盘背板上的索引值查询当前硬盘的在位状态;
在检测到当前硬盘不在位的情况下,根据所述硬盘背板在服务器中的位置信息确定所述硬盘背板对应的扩展卡的串行连接小型计算机系统接口地址从服务器挂载的所有扩展卡的信息中查询扩展卡的唯一编码;根据所述硬盘背板的槽位编号获取当前硬盘在物理层的物理唯一编码;
在检测到当前硬盘对应的物理层的状态为关闭状态的情况下,根据执行输入输出超时的硬盘对应的扩展卡的唯一编码和物理层的物理唯一编码开启执行输入输出超时的当前硬盘的物理层端口。
另一方面,在检测到无法获取到以下信息之一,或检测到开启执行输入输出超时的当前硬盘的物理层端口失败的情况下,输出用于表征开启执行输入输出超时的当前硬盘的物理层端口失败的提示信息;
其中,所述信息包括所述槽位信息、所述硬盘背板在服务器中的位置信息、所述硬盘背板对应的扩展卡的串行连接小型计算机系统接口地址、扩展卡的唯一编码、当前硬盘在物理层的物理唯一编码。
为了解决上述技术问题,本发明还提供一种输入输出超时处理的装置,包括:
获取模块,用于获取执行输入输出超时的硬盘;
确定模块,用于根据服务器中的执行输入输出超时的硬盘的情况确定当前输入输出超时的类型;其中,输入输出超时的类型包括独立冗余磁盘阵列异常引起的硬盘执行输入输出超时、硬盘异常引起硬盘执行输入输出超时;
关闭模块,用于在检测到当前输入输出超时的类型为硬盘异常引起硬盘执行输入输出超时的情况下,在小型计算机系统接口驱动确定出输入输出超时之前,根据执行输入输出超时的硬盘对应的扩展卡的唯一编码和物理层的物理唯一编码关闭执行输入输出超时的硬盘的物理层端口。
为了解决上述技术问题,本发明还提供一种服务器,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现上述的输入输出超时处理的方法的步骤。
为了解决上述技术问题,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述的输入输出超时处理的方法的步骤。
本发明所提供的输入输出超时处理的方法,包括:获取执行输入输出超时的硬盘;根据服务器中的执行输入输出超时的硬盘的情况确定当前输入输出超时的类型;其中,输入输出超时的类型包括独立冗余磁盘阵列异常引起的硬盘执行输入输出超时、硬盘异常引起硬盘执行输入输出超时;在检测到当前输入输出超时的类型为硬盘异常引起硬盘执行输入输出超时的情况下,在小型计算机系统接口驱动确定出输入输出超时之前,根据执行输入输出超时的硬盘对应的扩展卡的唯一编码和物理层的物理唯一编码关闭执行输入输出超时的硬盘的物理层端口。
本发明的有益效果在于,首先,在分析出是硬盘异常引起的输入输出超时的情况下,在小型计算机系统接口驱动确定输入输出超时之前,先将执行输入输出异常的硬盘的物理层端口进行关闭,即对输入输出超时的硬盘进行隔离,保证了异常输入输出不会触发小型计算机系统接口驱动对输入输出超时的处理流程,即不会让独立冗余磁盘阵列的状态变为恢复状态,不会让发送至该独立冗余磁盘阵列的输入输出阻塞,使得上层软件不会感知到输入输出断流,从而保证上层业务的正常使用;其次,由于根据执行输入输出超时的硬盘对应的扩展卡的唯一编码和物理层的物理唯一编码能够准确地定位到执行输入输出超时的硬盘端的物理层端口,故而,根据执行输入输出超时的硬盘对应的扩展卡的唯一编码和物理层的物理唯一编码能够准确地实现对执行输入输出超时的硬盘的物理层端口的关闭,进一步地使得异常输入输出不会触发小型计算机系统接口驱动对输入输出超时的处理流程,保证了上层业务的正常使用。
此外,以系统对硬盘的操作情况确定出的指标以及根据上层软件对硬盘的操作情况确定出的指标作为硬盘的输入输出性能指标,通过检测一个输入输出性能指标或综合考虑多个输入输出性能指标是否满足预设要求,从而确定出硬盘执行输入输出超时,使得确定硬盘执行输入输出超时的方式更加灵活,以及在综合考虑多个输入输出性能指标满足预设要求时,才确定硬盘执行输入输出超时,提高了确定执行输入输出超时的硬盘的准确性。
相比于仅仅以一个检测周期的输入输出性能指标满足预设要求确定出硬盘执行输入输出超时的方式,本发明中通过根据连续的检测周期内存在多个周期均检测到输入输出性能指标满足预设要求,进一步地提高了确定执行输入输出超时的硬盘的准确性。
在检测到输入输出队列非空比例大于预设比例的情况下,继续结合第一平均每次输入输出请求处理的时长,或第二平均每次输入输出请求处理的时长、每秒执行完成输入输出的数量来确定硬盘执行输入输出超时,保证了确定出硬盘执行输入输出异常的准确性。
通过输出表征关闭或开启执行输入输出超时的当前硬盘的物理层端口失败的提示信息,使得用户能够了解到硬盘的物理层端口的关闭或开启的结果。
另外,本发明还提供一种输入输出超时处理的装置、服务器以及计算机可读存储介质,与上述提到的输入输出超时处理的方法具有相同或相对应的技术特征,效果同上。
附图说明
为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种输入输出超时处理的方法的流程图;
图2为本发明实施例提供的一种对异常的硬盘槽位进行隔离的方法应用场景图;
图3为本发明实施例提供的一种对异常硬盘槽位进行复位的方法应用场景图;
图4为本发明的一实施例提供的输入输出超时处理的装置的结构图;
图5为本发明另一实施例提供的服务器的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。
本发明的核心是提供一种输入输出超时处理的方法、装置、服务器及介质,以解决在对输入输出超时处理的过程中,独立冗余磁盘阵列处于阻塞状态,导致挂载在独立冗余磁盘阵列下的硬盘出现输入输出断流,上层业务短时间无法使用的技术问题。
在Linux系统中,小型计算机系统接口驱动对输入输出超时的设备会进行错误处理,小型计算机系统接口对输入输出超时的处理方式为:进入小型计算机系统接口错误处理流程之前,小型计算机系统接口会设置独立冗余磁盘阵列状态为恢复状态,此后该独立冗余磁盘阵列就会处于阻塞状态,任何发送该独立冗余磁盘阵列的输入输出都会阻塞,直至错误处理完成。在该处理方式中,当设备的输入输出超时或者错误,内核并不知道是什么原因导致的,问题可能出现在独立冗余磁盘阵列上,当独立冗余磁盘阵列出现问题,如果此时不阻塞独立冗余磁盘阵列,可能导致错误输入输出继续下发,错误的输入输出不断累积,导致错误一直无法完成。但是这样设计可能导致独立冗余磁盘阵列下的硬盘出现问题时候,其它硬盘的输入输出都会阻塞到错误处理完成,即挂载在独立冗余磁盘阵列底下的硬盘出现输入输出断流,导致上层业务短时间内无法使用,或者上层业务下发的数据丢失,严重时(当独立冗余磁盘阵列下硬盘数量较多时)可能导致系统输入输出瘫痪,影响业务的正常运行。
故而,本发明实施例中,为了保证上层业务的正常运行,在分析出是硬盘异常引起的输入输出超时的情况下,在小型计算机系统接口驱动确定输入输出超时之前,先将执行输入输出异常的硬盘的物理层端口进行关闭,即对输入输出超时的硬盘进行隔离,以保证异常输入输出不会触发小型计算机系统接口驱动对输入输出超时的处理流程,即不会让独立冗余磁盘阵列的状态变为恢复状态,不会让发送至该独立冗余磁盘阵列的输入输出阻塞,使得上层软件不会感知到输入输出断流,从而保证上层业务的正常使用。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。图1为本发明实施例提供的一种输入输出超时处理的方法的流程图,如图1所示,该方法包括:
S10:获取执行输入输出超时的硬盘;
S11:根据服务器中的执行输入输出超时的硬盘的情况确定当前输入输出超时的类型;其中,输入输出超时的类型包括独立冗余磁盘阵列异常引起的硬盘执行输入输出超时、硬盘异常引起硬盘执行输入输出超时;
S12:在检测到当前输入输出超时的类型为硬盘异常引起硬盘执行输入输出超时的情况下,在小型计算机系统接口驱动确定出输入输出超时之前,根据执行输入输出超时的硬盘对应的扩展卡的唯一编码和物理层的物理唯一编码关闭执行输入输出超时的硬盘的物理层端口。
在获取执行输入输出超时的硬盘时,可以依据硬盘执行输入输出时的性能指标(即输入输出性能指标)对硬盘的输入输出是否超时进行确定。对于选取的输入输出性能指标不作限定,根据实际情况确定。为了能够较准确地对硬盘执行输入输出超时情况进行分析,在一些实施例中,确定当前硬盘执行输入输出超时包括:
获取当前硬盘的输入输出性能指标;其中,输入输出性能指标中包含根据系统对硬盘的操作情况确定出的指标以及根据上层软件对硬盘的操作情况确定出的指标;
在检测到一个输入输出性能指标满足对应的预设要求,或检测到多个输入输出性能指标满足对应的预设要求的情况下,确定当前硬盘执行输入输出超时。
在整个系统对硬盘的操作角度上,根据系统对硬盘的操作情况确定出的指标至少包括:输入输出队列非空比例(util)、第一平均每次输入输出请求处理的时长(平均每次输入输出请求处理的毫秒数,不包括排队等待时间,即svctm)、第二平均每次输入输出请求处理的时长(平均每次输入输出请求处理的毫秒数,包括处理时间和等待时间,即await1)、硬盘处理的所有输入输出的数量(即iops1);其中,第一平均每次输入输出请求处理的时长小于第二平均每次输入输出请求处理的时长,且第一平均每次输入输出请求处理的时长与第二平均每次输入输出请求处理的时长的差值为输入输出排队等待的时长。
在上层软件对硬盘的操作角度上,根据上层软件对硬盘的操作情况确定出的指标至少包括:上层软件发送至硬盘的每秒执行完成输入输出的数量(iops2)、上层软件发送至硬盘的未完成的输入输出的平均时延(await2)。
结合上述给出的具体的输入输出指标的基础上,结合硬盘检测策略,判定硬盘为执行输入输出异常的硬盘的具体过程如下:
策略一:当输入输出性能指标为上层软件发送至硬盘的未完成的输入输出的平均时延(await2);在检测到一个输入输出性能指标满足对应的预设要求的情况下,确定当前硬盘执行输入输出超时包括:
在检测到上层软件发送至硬盘的未完成的输入输出的平均时延大于或等于第一时长的情况下,确定当前硬盘执行输入输出超时。
对于设置的第一时长不作限定,如选取的第一时长为10s。即在检测到上层软件发送至硬盘的未完成的输入输出的平均时延大于或等于10s的情况下,确定当前硬盘执行输入输出超时。
策略二:在检测到多个输入输出性能指标满足对应的预设要求的情况下,确定当前硬盘执行输入输出超时至少包括以下之一:
在检测到输入输出队列非空比例(util)大于预设比例的情况下,若第一平均每次输入输出请求处理的时长(svctm)大于第二时长,则确定当前硬盘执行输入输出超时。
对于预设比例、第二时长不作限定。如设置的预设比例为50%,第二时长为90ms,则当检测到util>= 50%,svctm>= 90ms,则确定当前硬盘执行输入输出超时。
策略三:在检测到输入输出队列非空比例(util)大于预设比例的情况下,若第二平均每次输入输出请求处理的时长(await1)大于第三时长、且每秒执行完成输入输出的数量(iops2)小于预设数量,则确定当前硬盘执行输入输出超时;其中,第一时长大于第二时长,第一时长大于第三时长,第二时长小于第三时长。
对于预设比例、第三时长、预设数量不作限定,如选取的预设比例为50%,第三时长为600ms,预设数量为50。即检测到util>= 50%,await1>= 600ms,且iops2<50,则确定当前硬盘执行输入输出超时。
对接入系统的所有硬盘均可以采用上述的硬盘检测策略对硬盘执行输入输出异常进行判断。
为了较准确地确定出硬盘执行输入输出超时,可以进行多个周期的检测,从而依据多个周期的检测结果确定硬盘执行输入输出超时。故而,在一些实施例中,在检测到一个输入输出性能指标满足对应的预设要求,或检测到多个输入输出性能指标满足对应的预设要求的情况下,确定当前硬盘执行输入输出超时包括:
自检测当前硬盘的执行输入输出的情况开始,若在连续的检测周期内存在多个周期均检测到一个输入输出性能指标满足对应的预设要求,或多个输入输出性能指标满足对应的预设要求,则确定当前硬盘执行输入输出超时。
由于依据多个检测周期的检测结果来确定硬盘执行输入输出异常,所以,可以将每一个周期检测到的硬盘执行输入输出异常认为是一个慢盘周期。如连续30个检测周期内存在6个慢盘周期,最终确定当前硬盘执行输入输出超时,上报当前硬盘异常。每个检测周期为1s。
在确定出服务器中的执行输入输出超时的硬盘的情况后,为了根据服务器中的执行输入输出超时的硬盘的情况确定当前输入输出超时的类型,具体地,在检测到服务器中执行输入输出超时的硬盘的数量大于或等于预设数量的情况下,确定当前输入输出超时的类型为独立冗余磁盘阵列异常引起的硬盘执行输入输出超时;
在检测到执行输入输出超时的硬盘的数量小于预设数量的情况下,确定当前输入输出超时的类型为硬盘异常引起硬盘执行输入输出超时。
对于预设数量不作限定,根据实际情况确定,如预设数量用N表示,即当服务器底下出现执行输入输出异常的硬盘数目大于或等于N,判定独立冗余磁盘阵列出现异常;服务器底下出现执行输入输出异常的硬盘数目小于N,判定硬盘出现异常,导致硬盘本身执行输入输出异常。
对于确定出独立冗余磁盘阵列异常引起的硬盘执行输入输出超时的场景,还是按照小型计算机系统接口驱动处理输入输出超时的方式进行处理;对于硬盘异常引起硬盘执行输入输出超时的场景,本发明实施例中采用带外命令的方式对硬盘槽位进行隔离。
在对硬盘槽位进行隔离时,本发明实施例中根据执行输入输出超时的当前硬盘对应的扩展卡的唯一编码和物理层的物理唯一编码关闭执行输入输出超时的当前硬盘的物理层端口。关闭执行输入输出超时的当前硬盘的物理层端口具体包括以下步骤:
获取执行输入输出超时的当前硬盘的槽位信息;
根据槽位信息获取当前硬盘所在的硬盘背板的槽位编号以及获取硬盘背板在服务器中的位置信息;
根据硬盘背板在服务器中的位置信息确定硬盘背板对应的扩展卡的串行连接小型计算机系统接口地址;
根据硬盘背板对应的扩展卡的串行连接小型计算机系统接口地址从服务器挂载的所有扩展卡的信息中查询扩展卡的唯一编码;
根据硬盘背板的槽位编号获取当前硬盘在物理层的物理唯一编码;
根据扩展卡的唯一编码和当前硬盘在物理层的物理唯一编码关闭执行输入输出超时的当前硬盘的物理层端口。
进一步地,为了方便用户了解到对硬盘槽位的隔离情况,输入输出超时处理的方法还包括:在检测到无法获取到以下信息之一,或检测到关闭执行输入输出超时的当前硬盘的物理层端口失败的情况下,输出用于表征关闭执行输入输出超时的当前硬盘的物理层端口失败的提示信息;
其中,信息包括槽位信息、硬盘背板在服务器中的位置信息、硬盘背板对应的扩展卡的串行连接小型计算机系统接口地址、扩展卡的唯一编码、当前硬盘在物理层的物理唯一编码。
在根据扩展卡的唯一编码和当前硬盘在物理层的物理唯一编码关闭执行输入输出超时的当前硬盘的物理层端口之后,还包括:
在检测到完成关闭执行输入输出超时的当前硬盘的物理层端口的情况下,记录当前硬盘的槽位信息、序列号。
下面结合图2和具体的实施例继续对隔离硬盘槽位的过程进行说明。图2为本发明实施例提供的一种对异常的硬盘槽位进行隔离的方法应用场景图。该应用场景为管理软件1与扩展卡2、硬盘3之间的交互。如图2所示,该方法包括:
输入关闭硬盘对应的槽位;
根据硬盘槽位确定硬盘的背板位置和硬盘的槽位编号;
根据硬盘的背板位置查询硬盘背板对应的扩展卡的串行连接小型计算机系统接口地址;
查询服务器挂载的扩展卡设备信息;
返回扩展卡的设备信息;
根据硬盘背板对应的扩展卡的串行连接小型计算机系统接口地址,查询对应的扩展卡的唯一编码;
根据硬盘背板对应的槽位编号,查询硬盘对应的物理层的物理唯一编码;
根据硬盘对应的扩展卡的唯一编码和当前硬盘在物理层的物理唯一编码关闭硬盘的物理层端口;
返回关闭硬盘对应的物理层端口的状态;
若关闭成功,则返回关闭物理层端口成功,记录关闭硬盘的槽位和硬盘的序列号;
根据硬盘槽位查询硬盘对应的盘符;
根据硬盘的盘符,查询硬盘对应的序列号;
返回硬盘对应的序列号;
若关闭失败,则返回关闭物理层端口失败。
在实施中,隔离异常硬盘具体流程如下:
1、根据硬盘槽位确定硬盘所在硬盘背板的槽位编号和硬盘背板的在服务器中位置;
具体地,根据硬件提供通用输入/输出端口(General-Purpose Input Output,GPIO)信号能够获取到硬盘背板的位置,硬盘背板插到不同的机箱位置,扩展卡可以通过硬件提供的GPIO信号组合确定硬盘背板位置。扩展卡提供自定义的小型计算机系统接口存储模块服务(SES,为SCSI(Small Computer System Interface)Enclosure Services的缩写)Page能够查询到当前硬盘背板位置。
2、查询硬盘所在硬盘背板的槽位编号和硬盘背板的在服务器中位置失败,返回关闭硬盘对应的物理层端口失败;
3、根据硬盘背板的在服务器中位置确定硬盘背板对应扩展卡的串行连接小型计算机系统接口地址;
4、查询硬盘背板对应扩展卡的串行连接小型计算机系统接口地址失败,返回关闭硬盘对应的物理层端口失败;
5、查询服务器挂载所有的扩展卡的信息集合;
6、根据硬盘背板对应扩展卡的串行连接小型计算机系统接口地址在扩展卡的信息集合,查询扩展卡对应的唯一编码;
7、查询扩展卡对应的唯一编码失败,返回关闭硬盘对应的物理层端口失败;
8、根据硬盘背板对应的槽位编号,在包含硬盘背板的槽位编号和硬盘对应物理层的物理唯一编码对应关系的表格中,查询硬盘对应的物理层的物理唯一编码;
9、根据硬盘对应的扩展卡的唯一编码和当前硬盘在物理层的物理唯一编码关闭硬盘的物理层端口;
10、关闭物理层端口成功,返回关闭硬盘对应的物理层端口成功,并且记录对应硬盘的槽位、硬盘的序列号(记录到一个文件中);
11、关闭物理层端口失败,返回关闭硬盘对应的物理层端口失败。
通过上文中描述的方式完成了对异常硬盘的隔离。实际中,当存在新的硬盘插入时,若不对硬盘槽位进行复位,则会导致无法识别出新的硬盘,故而,在一些实施例中,在根据执行输入输出超时的硬盘对应的扩展卡的唯一编码和物理层的物理唯一编码关闭执行输入输出超时的硬盘的物理层端口之后,还包括:
自完成关闭执行输入输出超时的硬盘的物理层端口开始,预设时长内对执行输入输出超时的硬盘的物理层端口进行复位。
对于预设时长不作限定,根据实际情况确定。
对执行输入输出超时的硬盘的物理层端口进行复位包括:
在检测到执行输入输出超时的硬盘不在位、且执行输入输出超时的硬盘对应的物理层的状态为关闭状态的情况下,根据执行输入输出超时的硬盘对应的扩展卡的唯一编码和物理层的物理唯一编码开启执行输入输出超时的硬盘的物理层端口。
在检测到执行输入输出超时的硬盘不在位、且执行输入输出超时的硬盘对应的物理层的状态为关闭状态的情况下,根据执行输入输出超时的硬盘对应的扩展卡的唯一编码和物理层的物理唯一编码开启执行输入输出超时的硬盘的物理层端口包括:
获取执行输入输出超时的当前硬盘的槽位信息;
根据槽位信息获取当前硬盘所在的硬盘背板的槽位编号以及获取硬盘背板在服务器中的位置信息;
根据硬盘背板的槽位编号和硬盘背板在服务器中的位置信息查询当前硬盘在硬盘背板上的索引值;
根据当前硬盘在硬盘背板上的索引值查询当前硬盘的在位状态;
在检测到当前硬盘不在位的情况下,根据硬盘背板在服务器中的位置信息确定硬盘背板对应的扩展卡的串行连接小型计算机系统接口地址从服务器挂载的所有扩展卡的信息中查询扩展卡的唯一编码;根据硬盘背板的槽位编号获取当前硬盘在物理层的物理唯一编码;
在检测到当前硬盘对应的物理层的状态为关闭状态的情况下,根据执行输入输出超时的硬盘对应的扩展卡的唯一编码和物理层的物理唯一编码开启执行输入输出超时的当前硬盘的物理层端口。
进一步地,为了方便用户了解到对硬盘槽位的复位情况,输入输出超时处理的方法还包括,在检测到无法获取到以下信息之一,或检测到开启执行输入输出超时的当前硬盘的物理层端口失败的情况下,输出用于表征开启执行输入输出超时的当前硬盘的物理层端口失败的提示信息;
其中,信息包括槽位信息、硬盘背板在服务器中的位置信息、硬盘背板对应的扩展卡的串行连接小型计算机系统接口地址、扩展卡的唯一编码、当前硬盘在物理层的物理唯一编码。
下面结合图3和具体的实施例继续对异常硬盘复位的过程进行说明。图3为本发明实施例提供的一种对异常硬盘槽位进行复位的方法应用场景图。该应用场景为管理软件1与基板管理控制器4、扩展卡2之间的交互。如图3所示,该方法包括:
输入开启硬盘对应的槽位;
根据硬盘槽位查询硬盘所在的硬盘背板;
根据硬盘槽位和硬盘背板,查询硬盘背板和硬盘的槽位编号;
根据硬盘对应的槽位编号,查询硬盘在硬盘背板的索引值;
根据硬盘在硬盘背板上的索引值,查询硬盘的在位状态;
返回硬盘的在位状态;
若不在位,根据硬盘背板查询硬盘背板对应的扩展卡的串行连接小型计算机系统接口地址;
查询服务器挂载的扩展卡设备信息;
返回扩展卡的信息;
根据硬盘背板对应的扩展卡的串行连接小型计算机系统接口地址,查询对应的扩展卡的唯一编码;
根据硬盘对应的槽位编号,在硬盘的槽位编号和硬盘对应的物理层的物理唯一编码的对应表格中,查询硬盘对应的物理层的物理唯一编码;
根据硬盘对应的扩展卡的唯一编码和当前硬盘在物理层的物理唯一编码,查询硬盘的物理层的状态;
返回硬盘对应的物理层的状态;
若不在位,且为关闭状态,则打开硬盘对应的物理层的端口;
若为打开状态,则不做处理。
在实施中,对异常硬盘槽位进行复位具体流程如下:
1、根据硬盘槽位确定硬盘所在硬盘背板的槽位编号和硬盘背板的在服务器中位置;
2、查询硬盘所在硬盘背板的槽位编号和硬盘背板的在服务器中位置失败,返回开启硬盘对应的物理层端口失败;
3、根据硬盘所在硬盘背板的槽位编号和硬盘背板的在服务器中位置,查询硬盘在硬盘背板的索引值;
4、根据硬盘在硬盘背板上的索引值,查询硬盘的硬盘在位状态;
可通过带外方式例测服务器底下的硬盘的在位状态,例测周期为M(周期M默认值为5秒);
5、[硬盘不在位]根据硬盘背板在服务器中的位置确定硬盘背板对应扩展卡的串行连接小型计算机系统接口地址;
6、查询硬盘背板对应扩展卡的串行连接小型计算机系统接口地址失败,返回开启硬盘对应的物理层端口失败;
7、[硬盘不在位]查询服务器挂载的所有扩展卡的信息集合;
8、[硬盘不在位]根据硬盘背板对应扩展卡的串行连接小型计算机系统接口地址在扩展卡的信息集合,查询扩展卡对应的唯一编码;
9、查询扩展卡对应的唯一编码失败,返回开启硬盘对应的物理层端口失败;
10、[硬盘不在位]根据硬盘对应的槽位编号,在硬盘的槽位编号和硬盘对应的物理层的物理唯一编码对应关系的表格中,查询硬盘对应的物理层的物理唯一编码;
11、查询硬盘对应硬盘的物理层的状态;
12、[硬盘不在位][关闭]根据硬盘对应扩展卡对应的唯一编码和物理层的物理唯一编码,开启硬盘对应物理层的端口;
13、[硬盘不在位]开启物理层端口成功,返回开启硬盘对应的物理层端口成功;
14、[硬盘不在位]开启物理层端口失败,返回开启硬盘对应的物理层端口失败;
15、[硬盘在位]不做处理。
可见,通过上述过程完成了对异常硬盘的复位。
本发明实施例提供的方法中,通过策略检测出输入输出超时的硬盘,在触发小型计算机系统接口层的错误处理策略之前,把输入输出超时的硬盘物理剔除出去,小型计算机系统接口驱动无法检测出输入输出超时的硬盘,就不会导致独立冗余磁盘阵列进入恢复状态,进而不会导致独立冗余磁盘阵列处于阻塞状态,让上层软件无法感知到输入输出断流,保证了上层业务的正常运行。
在上述实施例中,对于输入输出超时处理的方法进行了详细描述,本发明还提供输入输出超时处理的装置、服务器对应的实施例。需要说明的是,本发明从两个角度对装置部分的实施例进行描述,一种是基于功能模块的角度,另一种是基于硬件的角度。
图4为本发明的一实施例提供的输入输出超时处理的装置的结构图。本实施例基于功能模块的角度,包括:
获取模块10,用于获取执行输入输出超时的硬盘;
确定模块11,用于根据服务器中的执行输入输出超时的硬盘的情况确定当前输入输出超时的类型;其中,输入输出超时的类型包括独立冗余磁盘阵列异常引起的硬盘执行输入输出超时、硬盘异常引起硬盘执行输入输出超时;
关闭模块12,用于在检测到当前输入输出超时的类型为硬盘异常引起硬盘执行输入输出超时的情况下,在小型计算机系统接口驱动确定出输入输出超时之前,根据执行输入输出超时的硬盘对应的扩展卡的唯一编码和物理层的物理唯一编码关闭执行输入输出超时的硬盘的物理层端口。
在一些实施例中,输入输出超时处理的装置包括第一确定模块,用于确定当前硬盘执行输入输出超时。第一确定模块包括:
第一获取模块,用于获取当前硬盘的输入输出性能指标;其中,输入输出性能指标中包含根据系统对硬盘的操作情况确定出的指标以及根据上层软件对硬盘的操作情况确定出的指标;
第二确定模块,用于在检测到一个输入输出性能指标满足对应的预设要求,或检测到多个输入输出性能指标满足对应的预设要求的情况下,确定当前硬盘执行输入输出超时。
在一些实施例中,第二确定模块具体用于自检测当前硬盘的执行输入输出的情况开始,若在连续的检测周期内存在多个周期均检测到一个输入输出性能指标满足对应的预设要求,或多个输入输出性能指标满足对应的预设要求,则确定当前硬盘执行输入输出超时。
在一些实施例中,确定模块11包括:
第三确定模块,用于在检测到服务器中执行输入输出超时的硬盘的数量大于或等于预设数量的情况下,确定当前输入输出超时的类型为独立冗余磁盘阵列异常引起的硬盘执行输入输出超时;
第四确定模块,用于在检测到执行输入输出超时的硬盘的数量小于预设数量的情况下,确定当前输入输出超时的类型为硬盘异常引起硬盘执行输入输出超时。
在一些实施例中,关闭模块12包括:
第二获取模块,用于获取执行输入输出超时的当前硬盘的槽位信息;
第三获取模块,用于根据槽位信息获取当前硬盘所在的硬盘背板的槽位编号以及获取硬盘背板在服务器中的位置信息;
第五确定模块,用于根据硬盘背板在服务器中的位置信息确定硬盘背板对应的扩展卡的串行连接小型计算机系统接口地址;
第一查询模块,用于根据硬盘背板对应的扩展卡的串行连接小型计算机系统接口地址从服务器挂载的所有扩展卡的信息中查询扩展卡的唯一编码;
第四获取模块,用于根据硬盘背板的槽位编号获取当前硬盘在物理层的物理唯一编码;
关闭子模块,用于根据扩展卡的唯一编码和当前硬盘在物理层的物理唯一编码关闭执行输入输出超时的当前硬盘的物理层端口。
输入输出超时处理的装置,还包括:第一输出模块,用于在检测到无法获取到以下信息之一,或检测到关闭执行输入输出超时的当前硬盘的物理层端口失败的情况下,输出用于表征关闭执行输入输出超时的当前硬盘的物理层端口失败的提示信息;
其中,信息包括槽位信息、硬盘背板在服务器中的位置信息、硬盘背板对应的扩展卡的串行连接小型计算机系统接口地址、扩展卡的唯一编码、当前硬盘在物理层的物理唯一编码。
输入输出超时处理的装置,还包括:记录模块,用于在检测到完成关闭执行输入输出超时的当前硬盘的物理层端口的情况下,记录当前硬盘的槽位信息、序列号。
输入输出超时处理的装置,还包括:复位模块,用于自完成关闭执行输入输出超时的硬盘的物理层端口开始,预设时长内对执行输入输出超时的硬盘的物理层端口进行复位。
复位模块具体包括复位子模块,用于在检测到执行输入输出超时的硬盘不在位、且执行输入输出超时的硬盘对应的物理层的状态为关闭状态的情况下,根据执行输入输出超时的硬盘对应的扩展卡的唯一编码和物理层的物理唯一编码开启执行输入输出超时的硬盘的物理层端口。
复位子模块包括:
第五获取模块,用于获取执行输入输出超时的当前硬盘的槽位信息;
第六获取模块,用于根据槽位信息获取当前硬盘所在的硬盘背板的槽位编号以及获取硬盘背板在服务器中的位置信息;
第二查询模块,用于根据硬盘背板的槽位编号和硬盘背板在服务器中的位置信息查询当前硬盘在硬盘背板上的索引值;
第三查询模块,用于根据当前硬盘在硬盘背板上的索引值查询当前硬盘的在位状态;
第七获取模块,用于在检测到当前硬盘不在位的情况下,根据硬盘背板在服务器中的位置信息确定硬盘背板对应的扩展卡的串行连接小型计算机系统接口地址从服务器挂载的所有扩展卡的信息中查询扩展卡的唯一编码;根据硬盘背板的槽位编号获取当前硬盘在物理层的物理唯一编码;
开启模块,用于在检测到当前硬盘对应的物理层的状态为关闭状态的情况下,根据执行输入输出超时的硬盘对应的扩展卡的唯一编码和物理层的物理唯一编码开启执行输入输出超时的当前硬盘的物理层端口。
输入输出超时处理的装置还包括第二输出模块,用于在检测到无法获取到以下信息之一,或检测到开启执行输入输出超时的当前硬盘的物理层端口失败的情况下,输出用于表征开启执行输入输出超时的当前硬盘的物理层端口失败的提示信息;
其中,信息包括槽位信息、硬盘背板在服务器中的位置信息、硬盘背板对应的扩展卡的串行连接小型计算机系统接口地址、扩展卡的唯一编码、当前硬盘在物理层的物理唯一编码。
由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述,并且具有与上述提到的输入输出超时处理的方法相同的有益效果。
图5为本发明另一实施例提供的服务器的结构图。本实施例基于硬件角度,如图5所示,服务器包括:
存储器20,用于存储计算机程序;
处理器21,用于执行计算机程序时实现如上述实施例中所提到输入输出超时处理的方法的步骤。
其中,处理器21可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器21可以采用数字信号处理器(Digital Signal Processor,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器21也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称中央处理器(CentralProcessing Unit,CPU);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器21可以集成有图形处理器(Graphics Processing Unit,GPU),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器21还可以包括人工智能(Artificial Intelligence,AI)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器20可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器20还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器20至少用于存储以下计算机程序201,其中,该计算机程序被处理器21加载并执行之后,能够实现前述任一实施例公开的输入输出超时处理的方法的相关步骤。另外,存储器20所存储的资源还可以包括操作系统202和数据203等,存储方式可以是短暂存储或者永久存储。其中,操作系统202可以包括Windows、Unix、Linux等。数据203可以包括但不限于上述所提到的输入输出超时处理的方法所涉及到的数据等。
在一些实施例中,服务器还可包括有显示屏22、输入输出接口23、通信接口24、电源25以及通信总线26。
本领域技术人员可以理解,图5中示出的结构并不构成对服务器的限定,可以包括比图示更多或更少的组件。
本发明实施例提供的服务器,包括存储器和处理器,处理器在执行存储器存储的程序时,能够实现如下方法:输入输出超时处理的方法,效果同上。
最后,本发明还提供一种计算机可读存储介质对应的实施例。计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述方法实施例中记载的步骤。
可以理解的是,如果上述实施例中的方法以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明提供的计算机可读存储介质包括上述提到的输入输出超时处理的方法,效果同上。
以上对本发明所提供的一种输入输出超时处理的方法、装置、服务器及介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (16)

1.一种输入输出超时处理的方法,其特征在于,包括:
获取执行输入输出超时的硬盘;
根据服务器中的执行输入输出超时的硬盘的情况确定当前输入输出超时的类型;其中,输入输出超时的类型包括独立冗余磁盘阵列异常引起的硬盘执行输入输出超时、硬盘异常引起硬盘执行输入输出超时;
在检测到当前输入输出超时的类型为硬盘异常引起硬盘执行输入输出超时的情况下,在小型计算机系统接口驱动确定出输入输出超时之前,根据执行输入输出超时的硬盘对应的扩展卡的唯一编码和物理层的物理唯一编码关闭执行输入输出超时的硬盘的物理层端口。
2.根据权利要求1所述的输入输出超时处理的方法,其特征在于,确定当前硬盘执行输入输出超时包括:
获取当前硬盘的输入输出性能指标;其中,所述输入输出性能指标中包含根据系统对硬盘的操作情况确定出的指标以及根据上层软件对硬盘的操作情况确定出的指标;
在检测到一个所述输入输出性能指标满足对应的预设要求,或检测到多个所述输入输出性能指标满足对应的预设要求的情况下,确定当前硬盘执行输入输出超时。
3.根据权利要求2所述的输入输出超时处理的方法,其特征在于,所述在检测到一个所述输入输出性能指标满足对应的预设要求,或检测到多个所述输入输出性能指标满足对应的预设要求的情况下,确定当前硬盘执行输入输出超时包括:
自检测当前硬盘的执行输入输出的情况开始,若在连续的检测周期内存在多个周期均检测到一个所述输入输出性能指标满足对应的预设要求,或多个所述输入输出性能指标满足对应的预设要求,则确定当前硬盘执行输入输出超时。
4.根据权利要求2所述的输入输出超时处理的方法,其特征在于,所述根据系统对硬盘的操作情况确定出的指标至少包括:输入输出队列非空比例、第一平均每次输入输出请求处理的时长、第二平均每次输入输出请求处理的时长、硬盘处理的所有输入输出的数量;其中,所述第一平均每次输入输出请求处理的时长小于所述第二平均每次输入输出请求处理的时长,且所述第一平均每次输入输出请求处理的时长与所述第二平均每次输入输出请求处理的时长的差值为输入输出排队等待的时长;
所述根据上层软件对硬盘的操作情况确定出的指标至少包括:上层软件发送至硬盘的每秒执行完成输入输出的数量、上层软件发送至硬盘的未完成的输入输出的平均时延。
5.根据权利要求4所述的输入输出超时处理的方法,其特征在于,所述输入输出性能指标为上层软件发送至硬盘的未完成的输入输出的平均时延;在检测到一个所述输入输出性能指标满足对应的预设要求的情况下,确定当前硬盘执行输入输出超时包括:
在检测到上层软件发送至硬盘的未完成的输入输出的平均时延大于或等于第一时长的情况下,确定当前硬盘执行输入输出超时;
在检测到多个所述输入输出性能指标满足对应的预设要求的情况下,确定当前硬盘执行输入输出超时至少包括以下之一:
在检测到输入输出队列非空比例大于预设比例的情况下,若所述第一平均每次输入输出请求处理的时长大于第二时长,则确定当前硬盘执行输入输出超时;
在检测到输入输出队列非空比例大于所述预设比例的情况下,若所述第二平均每次输入输出请求处理的时长大于第三时长、且每秒执行完成输入输出的数量小于预设数量,则确定当前硬盘执行输入输出超时;其中,所述第一时长大于所述第二时长以及所述第三时长,所述第二时长小于所述第三时长。
6.根据权利要求1至5任意一项所述的输入输出超时处理的方法,其特征在于,根据服务器中的执行输入输出超时的硬盘的情况确定当前输入输出超时的类型包括:
在检测到服务器中执行输入输出超时的硬盘的数量大于或等于预设数量的情况下,确定当前输入输出超时的类型为独立冗余磁盘阵列异常引起的硬盘执行输入输出超时;
在检测到执行输入输出超时的硬盘的数量小于所述预设数量的情况下,确定当前输入输出超时的类型为硬盘异常引起硬盘执行输入输出超时。
7.根据权利要求1所述的输入输出超时处理的方法,其特征在于,根据执行输入输出超时的当前硬盘对应的扩展卡的唯一编码和物理层的物理唯一编码关闭执行输入输出超时的当前硬盘的物理层端口包括:
获取执行输入输出超时的当前硬盘的槽位信息;
根据所述槽位信息获取当前硬盘所在的硬盘背板的槽位编号以及获取所述硬盘背板在服务器中的位置信息;
根据所述硬盘背板在服务器中的位置信息确定所述硬盘背板对应的扩展卡的串行连接小型计算机系统接口地址;
根据所述硬盘背板对应的扩展卡的串行连接小型计算机系统接口地址从服务器挂载的所有扩展卡的信息中查询扩展卡的唯一编码;
根据所述硬盘背板的槽位编号获取当前硬盘在物理层的物理唯一编码;
根据扩展卡的唯一编码和当前硬盘在物理层的物理唯一编码关闭执行输入输出超时的当前硬盘的物理层端口。
8.根据权利要求7所述的输入输出超时处理的方法,其特征在于,还包括:在检测到无法获取到以下信息之一,或检测到关闭执行输入输出超时的当前硬盘的物理层端口失败的情况下,输出用于表征关闭执行输入输出超时的当前硬盘的物理层端口失败的提示信息;
其中,所述信息包括所述槽位信息、所述硬盘背板在服务器中的位置信息、所述硬盘背板对应的扩展卡的串行连接小型计算机系统接口地址、扩展卡的唯一编码、当前硬盘在物理层的物理唯一编码。
9.根据权利要求7所述的输入输出超时处理的方法,其特征在于,在根据扩展卡的唯一编码和当前硬盘在物理层的物理唯一编码关闭执行输入输出超时的当前硬盘的物理层端口之后,还包括:
在检测到完成关闭执行输入输出超时的当前硬盘的物理层端口的情况下,记录当前硬盘的所述槽位信息、序列号。
10.根据权利要求1所述的输入输出超时处理的方法,其特征在于,在所述根据执行输入输出超时的硬盘对应的扩展卡的唯一编码和物理层的物理唯一编码关闭执行输入输出超时的硬盘的物理层端口之后,还包括:
自完成关闭执行输入输出超时的硬盘的物理层端口开始,预设时长内对执行输入输出超时的硬盘的物理层端口进行复位。
11.根据权利要求10所述的输入输出超时处理的方法,其特征在于,对执行输入输出超时的硬盘的物理层端口进行复位包括:
在检测到执行输入输出超时的硬盘不在位、且执行输入输出超时的硬盘对应的物理层的状态为关闭状态的情况下,根据执行输入输出超时的硬盘对应的扩展卡的唯一编码和物理层的物理唯一编码开启执行输入输出超时的硬盘的物理层端口。
12.根据权利要求11所述的输入输出超时处理的方法,其特征在于,在检测到执行输入输出超时的硬盘不在位、且执行输入输出超时的硬盘对应的物理层的状态为关闭状态的情况下,根据执行输入输出超时的硬盘对应的扩展卡的唯一编码和物理层的物理唯一编码开启执行输入输出超时的硬盘的物理层端口包括:
获取执行输入输出超时的当前硬盘的槽位信息;
根据所述槽位信息获取当前硬盘所在的硬盘背板的槽位编号以及获取所述硬盘背板在服务器中的位置信息;
根据所述硬盘背板的槽位编号和所述硬盘背板在服务器中的位置信息查询当前硬盘在所述硬盘背板上的索引值;
根据当前硬盘在所述硬盘背板上的索引值查询当前硬盘的在位状态;
在检测到当前硬盘不在位的情况下,根据所述硬盘背板在服务器中的位置信息确定所述硬盘背板对应的扩展卡的串行连接小型计算机系统接口地址从服务器挂载的所有扩展卡的信息中查询扩展卡的唯一编码;根据所述硬盘背板的槽位编号获取当前硬盘在物理层的物理唯一编码;
在检测到当前硬盘对应的物理层的状态为关闭状态的情况下,根据执行输入输出超时的硬盘对应的扩展卡的唯一编码和物理层的物理唯一编码开启执行输入输出超时的当前硬盘的物理层端口。
13.根据权利要求12所述的输入输出超时处理的方法,其特征在于,在检测到无法获取到以下信息之一,或检测到开启执行输入输出超时的当前硬盘的物理层端口失败的情况下,输出用于表征开启执行输入输出超时的当前硬盘的物理层端口失败的提示信息;
其中,所述信息包括所述槽位信息、所述硬盘背板在服务器中的位置信息、所述硬盘背板对应的扩展卡的串行连接小型计算机系统接口地址、扩展卡的唯一编码、当前硬盘在物理层的物理唯一编码。
14.一种输入输出超时处理的装置,其特征在于,包括:
获取模块,用于获取执行输入输出超时的硬盘;
确定模块,用于根据服务器中的执行输入输出超时的硬盘的情况确定当前输入输出超时的类型;其中,输入输出超时的类型包括独立冗余磁盘阵列异常引起的硬盘执行输入输出超时、硬盘异常引起硬盘执行输入输出超时;
关闭模块,用于在检测到当前输入输出超时的类型为硬盘异常引起硬盘执行输入输出超时的情况下,在小型计算机系统接口驱动确定出输入输出超时之前,根据执行输入输出超时的硬盘对应的扩展卡的唯一编码和物理层的物理唯一编码关闭执行输入输出超时的硬盘的物理层端口。
15.一种服务器,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至13任一项所述的输入输出超时处理的方法的步骤。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至13任一项所述的输入输出超时处理的方法的步骤。
CN202410218295.3A 2024-02-28 2024-02-28 一种输入输出超时处理的方法、装置、服务器及介质 Active CN117785074B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410218295.3A CN117785074B (zh) 2024-02-28 2024-02-28 一种输入输出超时处理的方法、装置、服务器及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410218295.3A CN117785074B (zh) 2024-02-28 2024-02-28 一种输入输出超时处理的方法、装置、服务器及介质

Publications (2)

Publication Number Publication Date
CN117785074A true CN117785074A (zh) 2024-03-29
CN117785074B CN117785074B (zh) 2024-07-02

Family

ID=90380224

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410218295.3A Active CN117785074B (zh) 2024-02-28 2024-02-28 一种输入输出超时处理的方法、装置、服务器及介质

Country Status (1)

Country Link
CN (1) CN117785074B (zh)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080263394A1 (en) * 2007-04-18 2008-10-23 Hitachi, Ltd. Disk array apparatus
JP2011108006A (ja) * 2009-11-18 2011-06-02 Nec Corp ディスクアレイ装置の故障診断システム、故障診断方法、故障診断プログラムおよびディスク装置
CN110750213A (zh) * 2019-09-09 2020-02-04 华为技术有限公司 一种硬盘管理方法及装置
CN113903389A (zh) * 2021-09-28 2022-01-07 浙江大华技术股份有限公司 一种慢盘检测方法、装置及计算机可读写存储介质
CN114218037A (zh) * 2021-11-24 2022-03-22 新华三技术有限公司成都分公司 一种硬盘管理方法、装置、设备及机器可读存储介质
CN115061641A (zh) * 2022-08-16 2022-09-16 新华三信息技术有限公司 一种磁盘故障处理方法、装置、设备以及存储介质
CN115793963A (zh) * 2022-10-31 2023-03-14 济南浪潮数据技术有限公司 一种硬盘故障处理方法、装置、设备及存储介质
CN116578459A (zh) * 2023-05-19 2023-08-11 济南浪潮数据技术有限公司 一种慢盘监测及处理方法、装置及计算机可读存储介质
CN116680104A (zh) * 2023-05-18 2023-09-01 超聚变数字技术有限公司 硬盘管理方法以及计算设备
CN116775362A (zh) * 2023-06-29 2023-09-19 济南浪潮数据技术有限公司 独立冗余磁盘阵列的通路阻塞处理方法、系统
WO2023185767A1 (zh) * 2022-03-28 2023-10-05 阿里云计算有限公司 慢盘检测方法、装置、电子设备及存储介质
CN117407200A (zh) * 2023-09-28 2024-01-16 苏州元脑智能科技有限公司 一种硬盘的管理方法、系统、装置及主机

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080263394A1 (en) * 2007-04-18 2008-10-23 Hitachi, Ltd. Disk array apparatus
JP2011108006A (ja) * 2009-11-18 2011-06-02 Nec Corp ディスクアレイ装置の故障診断システム、故障診断方法、故障診断プログラムおよびディスク装置
CN110750213A (zh) * 2019-09-09 2020-02-04 华为技术有限公司 一种硬盘管理方法及装置
CN113903389A (zh) * 2021-09-28 2022-01-07 浙江大华技术股份有限公司 一种慢盘检测方法、装置及计算机可读写存储介质
CN114218037A (zh) * 2021-11-24 2022-03-22 新华三技术有限公司成都分公司 一种硬盘管理方法、装置、设备及机器可读存储介质
WO2023185767A1 (zh) * 2022-03-28 2023-10-05 阿里云计算有限公司 慢盘检测方法、装置、电子设备及存储介质
CN115061641A (zh) * 2022-08-16 2022-09-16 新华三信息技术有限公司 一种磁盘故障处理方法、装置、设备以及存储介质
CN115793963A (zh) * 2022-10-31 2023-03-14 济南浪潮数据技术有限公司 一种硬盘故障处理方法、装置、设备及存储介质
CN116680104A (zh) * 2023-05-18 2023-09-01 超聚变数字技术有限公司 硬盘管理方法以及计算设备
CN116578459A (zh) * 2023-05-19 2023-08-11 济南浪潮数据技术有限公司 一种慢盘监测及处理方法、装置及计算机可读存储介质
CN116775362A (zh) * 2023-06-29 2023-09-19 济南浪潮数据技术有限公司 独立冗余磁盘阵列的通路阻塞处理方法、系统
CN117407200A (zh) * 2023-09-28 2024-01-16 苏州元脑智能科技有限公司 一种硬盘的管理方法、系统、装置及主机

Also Published As

Publication number Publication date
CN117785074B (zh) 2024-07-02

Similar Documents

Publication Publication Date Title
US5388254A (en) Method and means for limiting duration of input/output (I/O) requests
US7934071B2 (en) Method of managing storage capacity in a storage system, a storage device and a computer system
US20030204692A1 (en) Method and apparatus for enhancing operations in disk array storage devices
CN106354590A (zh) 磁盘检测方法和装置
CN111045881A (zh) 一种慢盘检测方法及系统
WO2021072880A1 (zh) 虚拟机内部快照异步创建方法、装置、系统及存储介质
WO2019140739A1 (zh) 客户回访的判断方法、电子装置及计算机可读存储介质
CN106155826B (zh) 用于在总线结构中检测及处理错误的方法和系统
US20050216633A1 (en) Techniques to manage critical region interrupts
CN107329914A (zh) 一种基于Linux系统检测硬盘乱序的方法及装置
CN117971497B (zh) 一种数据处理方法、系统、设备、服务器及介质
WO2005093609A1 (en) Optimizing database access for record linkage by tiling the space of record pairs
CN116149559A (zh) 队列处理方法、装置、服务器、电子设备和存储介质
CN113590405A (zh) 硬盘错误的检测方法、装置、存储介质和电子装置
CN117785074B (zh) 一种输入输出超时处理的方法、装置、服务器及介质
CN109324765A (zh) 一种磁盘状态检测方法、装置、设备及存储介质
CN116627737A (zh) 一种硬盘测试方法、装置、设备及介质
CN115061641B (zh) 一种磁盘故障处理方法、装置、设备以及存储介质
CN112306348B (zh) 识别触控操作的方法、装置及电子设备
CN109885442B (zh) 性能分析方法、装置、设备及存储介质
CN111694628B (zh) 基于应用程序的线程的页面展示方法及相关设备
CN114237957A (zh) 异常磁盘分区的处理方法与装置
CN117573483B (zh) 硬盘的移除方法和装置、存储介质及电子设备
CN116991542B (zh) 一种虚拟机快照方法、系统、电子设备及计算机存储介质
CN118916242A (zh) 硬盘处理方法以及相关系统、电子设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant