I/o数据访问中断的处理方法和系统以及设备的制作方法

文档序号:6438407阅读:360来源:国知局
专利名称:I/o数据访问中断的处理方法和系统以及设备的制作方法
技术领域
本发明涉及通信技术领域,尤其涉及一种I/O数据访问中断的处理方法和系统以及设备。
背景技术
通过虚拟技术将一台独占设备虚拟成多台逻辑设备,供多个用户进程同时使用, 通常把这种经过虚拟的设备称为虚拟化设备。如果在I/O数据读写过程中,将该虚拟化设备部署在主机服务器与存储阵列之间,以在I/O读写过程中,在主机服务器到存储设备的路径上实现虚拟存储,即当主机服务器下发到存储阵列的I/O数据都必须先到达该虚拟化设备,然后再从该虚拟化设备下发到存储阵列中时,这种虚拟化设备通常被成为带内虚拟化设备。在带内虚拟化设备的应用场景中,在数据读写过程中,所有主机服务器下发到存储阵列的业务数据都必须先到达该带内虚拟化设备,然后再从该带内虚拟化设备下发到具体的存储阵列。该些存储阵列提供真正的存储空间,主机服务器上面存储的I/O业务数据都是放在该些存储阵列上的。但是,当带内虚拟化设备由于某种原因出现故障时,主机服务器无法通过带内虚拟化设备对存储阵列中的I/O数据进行读写,从而造成主机服务器上业务的中断,进而给客户的使用带来了不便。

发明内容
本发明提供一种I/O数据访问中断的处理方法和系统以及设备,用于解决现有技术中当带内虚拟化设备由于某种原因出现故障时,主机服务器上业务中断的问题。本发明提供一种I/O数据访问中断的处理方法,包括若判断出虚拟化设备故障或者第一路径组的第一路径全部故障,则发送用于注册第二路径的第二 SCSI注册指令给存储阵列,所述第一路径组包括至少一条所述第一路径, 所述第一路径由所述主机服务器与所述存储阵列通过所述虚拟化设备连接形成,所述第二路径组包括至少一条第二路径,所述第二路径由所述主机服务器与所述存储阵列直连形成,所述存储阵列上设置有与第一路径对应的第一 SCSI预留;通过所述第二路径发送携带有第一路径标识的第一 SCSI预留删除指令给所述存储阵列,以使所述存储阵列根据所述第一 SCSI预留删除指令,删除与所述第一路径标识对应的第一 SCSI预留;在接收到所述存储阵列发送的第二 SCSI注册指令的响应消息,以及所述第一 SCSI删除指令的响应消息后,通过所述第二路径发送携带有第二路径标识的第二 SCSI预留设置指令给所述存储阵列,以使所述存储阵列根据所述第二 SCSI预留设置指令,设置与所述第二路径标识对应的第二 SCSI预留;根据与所述第二路径标识对应的第二 SCSI预留,通过所述第二路径对所述存储阵列进行I/O数据访问处理。
本发明提供一种主机服务器,包括判断模块,用于判断虚拟化设备是否发生故障或者第一路径组的第一路径是否全部故障;所述第一路径组包括至少一条所述第一路径,所述第一路径由所述主机服务器与所述存储阵列通过所述虚拟化设备连接形成,所述存储阵列上设置有与第一路径对应的第一 SCSI预留;注册模块,用于若所述判断模块判断出虚拟化设备故障或者第一路径组的第一路径全部故障,则发送用于注册的第二路径的第二 SCSI注册指令给存储阵列;所述第二路径组包括至少一条第二路径,所述第二路径由所述主机服务器与所述存储阵列直连形成;路径处理模块,用于通过所述第二路径发送携带有第一路径标识的第一 SCSI预留删除指令给所述存储阵列,以使得所述存储阵列根据所述第一 SCSI预留删除指令,删除与所述第一路径标识对应的第一 SCSI预留;并在接收到所述存储阵列发送的第二 SCSI注册指令的响应消息,以及所述第一 SCSI删除指令的响应消息后,通过所述第二路径发送携带有第二路径标识的第二 SCSI预留设置指令给所述存储阵列,以使所述存储阵列根据所述第二 SCSI预留设置指令,设置与所述第二路径标识对应的第二 SCSI预留;访问处理模块,用于根据与所述第二路径标识对应的第二 SCSI预留,通过所述第二路径对所述存储阵列进行I/O数据访问处理。本发明提供一种I/O数据访问中断的处理系统,包括虚拟化设备、存储阵列和上述所述的主机服务器,其中,所述主机服务器通过所述第二路径组与所述存储阵列相连,所述虚拟化设备通过第一路径组分别与所述主机服务器和所述存储阵列相连。本发明提供的I/O数据访问中断的处理方法和系统以及设备,通过主机服务器若判断出虚拟化设备故障或者第一路径组的第一路径全部故障,则发送用于注册第二路径组的第二 SCSI预留注册指令给存储阵列,并通过第二路径发送携带有第一路径标识的第一 SCSI预留删除指令给该存储阵列,以使得该存储阵列删除第一路径标识对应的第一 SCSI 预留,当接收存储阵列发送的第二 SCSI注册指令的响应消息,以及第一 SCSI删除指令的响应消息,则发送携带有第二路径标识的第二 SCSI预留设置指令给存储阵列,以供该存储阵列设置与该第二路径组标识对应的第二 SCSI预留,从而可以通过第二路径对存储阵列进行I/O数据访问处理,进而有效地解决了现有技术中当带内虚拟化设备由于某种原因出现故障时,主机服务器上业务中断的问题,并有效地提高了用户使用的便捷性。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本实施例I/O数据访问终端处理方法所基于的带内虚拟化设备应用场景的结构示意图;图2为本发明I/O数据访问中断的处理方法的一个实施例的流程图;图3为本发明I/O数据访问中断的处理方法的再一个实施例的流程图;图4为本发明主机服务器的一个实施例的结构图。
具体实施例方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。图1为本实施例I/O数据访问终端处理方法所基于的带内虚拟化设备应用场景的结构示意图,如图1所示,该带内虚拟化设备应用场景包括主机服务器11、虚拟化设备12 和存储阵列13。具体的,主机服务器11经过虚拟化设备到存储阵列的路径为第一路径组 14,主机服务器11直连到存储阵列13的路径为第二路径组15,虚拟化设备12后端可以接多个存储阵列13,并将这些存储阵列13映射过来的逻辑单元号(Logical Unit Number ;简称LUN)经过虚拟化处理后提供给主机服务器11。其中,该LUN用于存储I/O数据,该第一路径组14包括至少一条第一路径;该第二路径组15包括至少一条第二路径。在虚拟化设备12未故障,且全部第一路径组14未故障时,主机服务器11 一般通过第一路径组14和虚拟化设备12对存储阵列13上的I/O数据进行访问处理。另外,举例来说,当第一路径组14包括两条第一路径时,可以通过这两条第一路径对该存储阵列13上的I/O数据进行访问处理,或者通过其中一条第一路径对该存储阵列13上的I/O数据进行访问处理。当设置其中一条第一路径为访问路径来对该存储阵列13上的I/O数据进行访问处理时,如果该路径出现故障,则路径管理模块111可以将访问路径由该第一路径4切换到另一条第一路径上。值得注意的是,该虚拟化设备12的数量可以是两个,其中一个虚拟化设备12的后端可以接多个存储阵列13,并与另一个虚拟化设备12相连接,用于将虚拟化LUN复制到这个虚拟化设备12上,进行容灾备份。图2为本发明I/O数据访问中断的处理方法的一个实施例的流程图,如图2所示, 本实施例的执行主体为主机服务器,则该方法包括步骤101、主机服务器若判断出虚拟化设备故障或者第一路径组的第一路径全部故障,则发送用于注册第二路径组的第二小型计算机系统接口(Small Computer System Interface ;简称SCSI)注册指令给存储阵列。其中,该虚拟化设备部署在主机服务器与存储阵列之间,该第一路径组包括至少一条第一路径,该第一路径由该主机服务器与存储阵列通过虚拟化设备连接形成;该第二路径组包括至少一条第二路径,该第二路径由主机服务器与该存储阵列直连形成,该存储阵列上设置有第一路径对应的第一 SCSI预留。步骤102、主机服务器通过第二路径发送携带有第一路径标识的第一 SCSI预留删除指令给存储阵列,以使得该存储阵列根据该第一 SCSI预留删除指令,删除与该第一路径标识对应的第一 SCSI预留。步骤103、主机服务器在接收到该存储阵列发送的第二 SCSI注册指令的响应消息,以及该第一 SCSI删除指令的响应消息后,通过第二路径发送携带有第二路径标识的第二 SCSI预留设置指令给该存储阵列,以使该存储阵列根据该第二 SCSI预留设置指令,设置与该第二路径标识对应的第二 SCSI预留。
在本实施例中,该第一 SCSI预留包括第一路径信息,例如虚拟化设备端口号和存储阵列端口号等 ’第二 SCSI预留包括第二路径信息,例如主机服务器端口号和存储阵列端口号等。步骤104、主机服务器根据与该第二路径标识对应的第二 SCSI预留,通过该第二路径对该存储阵列进行I/O数据访问处理。在本实施例中,当主机服务器判断出虚拟化设备未故障,且第一路径组中的第一路径全部未发生故障时,可以设置第一路径组为访问路径,并通过该第一路径组和虚拟化设备发送第一 SCSI注册指令给存储阵列,其中该第一 SCSI注册指令包括第一路径标识。当存储阵列发送第一 SCSI注册指令的响应消息时,则说明允许主机服务器通过第一路径组对存储阵列上的I/O数据进行访问处理,该主机服务器发送携带有第一路径标识对应的第
一SCSI预留设置指令给存储阵列,以供存储阵列根据该该第一 SCSI预留设置指令,设置与该第一路径标识对应的第一 SCSI预留,从而使得该主机服务器可以通过第一路径组和虚拟化设备对该存储阵列上的I/O数据进行访问处理,例如主机服务器可以对存储阵列上的I/O数据进行读写。当主机服务器判断出该虚拟化设备故障或者第一路径组的第一路径全部故障时, 可以将访问路径由第一路径组切换为第二路径组,具体的,发送用于注册第二路径组的第
二SCSI注册指令给存储阵列,并通过第二路径发送携带有第一路径标识的第一 SCSI预留删除指令给存储阵列,以供该存储阵列根据该第一 SCSI预留删除指令,删除与该第一路径标识对应的第一 SCSI预留;当主机服务器接收到存储阵列返回的第二 SCSI注册指令的响应消息,以及第一 SCSI删除指令的响应消息,发送携带有第二路径标识的第二 SCSI预留设置指令给该存储阵列,以供该存储阵列根据该第二 SCSI预留设置指令,设置与该第二路径标识对应的第二 SCSI预留,从而使得该主机服务器可以通过第二路径对存储阵列上的I/O 数据进行访问处理。在本实施例中,通过主机服务器若判断出虚拟化设备故障或者第一路径组的第一路径全部故障,则发送用于注册第二路径组的第二 SCSI预留注册指令给存储阵列,并通过第二路径发送携带有第一路径标识的第一 SCSI预留删除指令给该存储阵列,以使得该存储阵列删除第一路径标识对应的第一 SCSI预留,当接收存储阵列发送的第二 SCSI注册指令的响应消息,以及第一 SCSI删除指令的响应消息,则发送携带有第二路径标识的第二 SCSI预留设置指令给存储阵列,以供该存储阵列设置与该第二路径组标识对应的第二 SCSI预留,从而可以通过第二路径对存储阵列进行I/O数据访问处理,进而有效地解决了现有技术中当带内虚拟化设备由于某种原因出现故障时,主机服务器上业务中断的问题, 并有效地提高了用户使用的便捷性。进一步的,在本发明的另一个实施例中,在上述图1所示实施例的基础上,该方法还可以包括主机服务器接收该存储阵列通过该虚拟化设备和该第一路径映射给该主机服务器的虚拟化LUN,并接收该存储阵列通过该第二路径映射给该主机服务器的非虚拟化LUN ;主机服务器判断该虚拟化LUN中的全球唯一名字(World Wide Name ;简称WWN) 与该非虚拟化LUN中的WffN是否相同,若相同,则设置该虚拟化LUN和非虚拟化LUN为同一 LUN。
在本实施例中,存储阵列将存储阵列上的非虚拟化LUN映射给该虚拟化设备,由该虚拟化设备对该些非虚拟化LUN进行虚拟化处理,并将获取的虚拟化LUN通过第一路径提供给主机服务器,同时,存储阵列将存储阵列上的非虚拟化LUN通过第二路径映射给主机服务器,为了避免主机服务器上同一个LUN显示出一个非虚拟化LUN和一个虚拟化LUN, 而导致数据可能被破坏的问题,主机服务器可以判断该虚拟化LUN中的WffN和该非虚化LUN 中的WffN是否相同,若相同,则设置该虚拟化LUN和非虚拟化LUN为同一 LUN,即使得主机服务器将具有相同的WffN的虚拟化LUN和非虚拟化LUN设置为相同的LUN。图3为本发明I/O数据访问中断的处理方法的又一个实施例的流程图,如图3所示,在本实施例中,主机服务器设置从主机服务器经过虚拟化设备到存储阵列的路径为第一路径组;并设置从主机服务器直连到存储阵列的路径为第二路径组。其中,该第一路径组包括至少一条第一路径,第二路径组包括至少一条第二路径。则该方法包括步骤201、主机服务器通过第一路径发送测试信号。其中,该测试信号可以用于检测第一路径和带内虚拟化设备是否正常工作。步骤202、主机服务器判断通过该第一路径是否接收到测试信号的响应消息,或者通过该第一路径接收到测试信号的响应消息是否正确;若判断出没有通过第一路径接收到测试信号的响应消息,或者通过第一路径接收到测试信号的响应消息不正确,则执行步骤 203 ;若判断出通过第一路径接收到测试信号的响应消息正确,则执行步骤212。步骤203、主机服务器发送用于注册第二路径的第二 SCSI注册指令给存储阵列。步骤204、主机服务器发送携带有第一路径标识的第一 SCSI预留删除指令给该存储阵列,以使该存储阵列根据该第一 SCSI预留删除指令,删除与该第一路径标识对应的第
一SCSI预留。步骤205、主机服务器根据该存储阵列发送的第二 SCSI注册指令的响应消息,以及该第一 SCSI删除指令的响应消息,发送携带有第二路径标识的第二 SCSI预留设置指令给该存储阵列,以使该存储阵列根据该第二 SCSI预留设置指令,设置与该第二路径组标识对应的第二 SCSI预留。步骤206、主机服务器根据与该第二路径标识对应的第二 SCSI预留,通过该第二路径对该存储阵列进行I/O数据访问处理。步骤207、主机服务器每隔预定时间,通过该第一路径发送测试信号。其中,该测试信号用于检测该第一路径和/或带内虚拟化设备是否恢复。步骤208、主机服务器判断通过该第一路径是否接收到测试信号的响应消息,或者通过该第一路径接收到测试信号的响应消息是否正确;若判断出没有通过第一路径接收到测试信号的响应消息,或者通过第一路径接收到测试信号的响应消息不正确,则执行步骤 206 ;若判断出通过第一路径接收到测试信号的响应消息正确,则执行步骤209。步骤209、主机服务器发送携带有第二路径标识的第二 SCSI预留删除指令给该存储阵列,以供该存储阵列根据该第二 SCSI预留删除指令,删除与该第二路径标识对应的第
二SCSI预留。步骤210、主机服务器根据该存储阵列发送的第二 SCSI预留删除指令的响应消息,发送携带有第一路径标识对应的第一 SCSI预留设置指令给该存储阵列,以供该存储阵列根据该第一 SCSI预留设置指令,设置与该第一路径标识对应的第一 SCSI预留。
步骤211、主机服务器通过该第一路径对该存储阵列进行I/O数据访问处理。结
束ο步骤212、主机服务器通过所述未发生故障的第一路径发送第一 SCSI注册指令给该存储阵列,当接收到该存储阵列发送的第一 SCSI注册指令的响应消息时,发送携带有未发生故障的第一路径标识的第一 SCSI预留设置指令给该存储阵列,以供该存储阵列根据该第一 SCSI预留设置指令,设置与该未发生故障的第一路径标识对应的第一 SCSI预留。步骤213、根据该与未发生故障的第一路径对应的第一 SCSI预留,通过该未发生故障的第一路径对该存储阵列进行I/O数据访问处理。在本实施例中,通过主机服务器若判断出虚拟化设备故障或者第一路径组的第一路径全部故障,则发送用于注册第二路径组的第二 SCSI预留注册指令给存储阵列,并通过第二路径发送携带有第一路径标识的第一 SCSI预留删除指令给该存储阵列,以使得该存储阵列删除第一路径标识对应的第一 SCSI预留,当接收存储阵列发送的第二 SCSI注册指令的响应消息,以及第一 SCSI删除指令的响应消息,则发送携带有第二路径标识的第二 SCSI预留设置指令给存储阵列,以供该存储阵列设置与该第二路径组标识对应的第二 SCSI预留,从而可以通过第二路径对存储阵列进行I/O数据访问处理,进而有效地解决了现有技术中当带内虚拟化设备由于某种原因出现故障时,主机服务器上业务中断的问题, 并有效地提高了用户使用的便捷性。进一步的,在本发明的另一个实施例中,在上述图1或者图2所示实施例基础上, 在主机服务器将该访问路径由该第一路径组切换到该第二路径组之后,该方法还包括主机服务器通过该第二路径发送测试信号;其中,该测试信号用于检测第二路径是否正常工作。则主机服务器通过所述第二路径发送用于注册第二路径的第二 SCSI注册指令给存储阵列可以具体为主机服务器若判断出通过第二路径接收到的测试信号的响应消息正确,则下发用于注册第二路径的第二 SCSI注册指令给存储阵列。图4为本发明主机服务器的一个实施例的结构示意图,如图4所示,本实施例的主机服务器包括判断模块21、注册模块22、路径处理模块23和访问处理模块M,其中,判断模块21用于判断虚拟化设备是否发生故障或者第一路径组的第一路径是否全部故障,该虚拟化设备部署在主机服务器与存储阵列之间,该第一路径组包括至少一条路径,该第一路径由主机服务器与存储阵列通过虚拟化设备连接形成;该存储阵列上设置有与该第一路径对应的第一 SCSI预留;注册模块22用于若该判断模块21判断出虚拟化设备故障或者第一路径组的第一路径全部故障,则发送用于注册的第二路径的第二 SCSI注册指令给存储阵列;该第二路径组包括至少一条第二路径,该第二路径由该主机服务器与该存储阵列直连形成;路径处理模块23用于通过该第二路径发送携带有第一路径标识的第一 SCSI预留删除指令给该存储阵列,以使得该存储阵列根据该第一 SCSI预留删除指令,删除与该第一路径标识对应的第一 SCSI预留;并在接收到该存储阵列发送的第二 SCSI注册指令的响应消息,以及该第一 SCSI删除指令的响应消息,通过第二路径发送携带有第二路径标识的第二 SCSI预留设置指令给所述存储阵列,以使该存储阵列根据该第二 SCSI预留设置指令,设置与该第二路径标识对应的第二 SCSI预留;访问处理模块M用于根据与该第二路径标识对应的第二 SCSI预留,通过该第二路径对该存储阵列进行I/O数据访问处理。本实施例的主机服务器可以执行图2所示方法实施例的技术方案,其实现原理相类似,此处不再赘述。在本实施例中,通过主机服务器若判断出虚拟化设备故障或者第一路径组的第一路径全部故障,则发送用于注册第二路径组的第二 SCSI预留注册指令给存储阵列,并通过第二路径发送携带有第一路径标识的第一 SCSI预留删除指令给该存储阵列,以使得该存储阵列删除第一路径标识对应的第一 SCSI预留,当接收存储阵列发送的第二 SCSI注册指令的响应消息,以及第一 SCSI删除指令的响应消息,则发送携带有第二路径标识的第二 SCSI预留设置指令给存储阵列,以供该存储阵列设置与该第二路径组标识对应的第二 SCSI预留,从而可以通过第二路径对存储阵列进行I/O数据访问处理,进而有效地解决了现有技术中当带内虚拟化设备由于某种原因出现故障时,主机服务器上业务中断的问题, 并有效地提高了用户使用的便捷性。进一步的,在本发明的另一个实施例中,在上述图4所示实施例的基础上,判断模块21还用于每隔预定时间,通过该第一路径发送测试信号,该测试信号用于检测该第一路径和/或带内虚拟化设备是否恢复,并判断是否通过该第一路径接收到测试信号的响应消息,或者判断通过该第一路径接收到的该测试信号的响应消息是否正确;路径处理模块23还用于若该判断模块21判断出通过该第一路径接收到的测试信号的响应消息正确,则发送携带有第二路径标识的第二 SCSI预留删除指令给该存储阵列, 以供该存储阵列根据该第二 SCSI预留删除指令,删除与该第二路径标识对应的第二 SCSI 预留;并根据该存储阵列发送的第二 SCSI预留删除指令的响应消息,发送携带有第一路径标识对应的第一 SCSI预留设置指令给该存储阵列,以供该存储阵列根据该第一 SCSI预留设置指令,设置与该第一路径标识对应的第一 SCSI预留。访问处理模块M还用于通过该第一路径和所述虚拟化设备对该存储阵列进行I/ 0数据访问处理。进一步的,在初始化时,注册模块22还用于若判断模块21判断出该虚拟化设备无故障,且第一路径组所包含的第一路径未全部发生故障,则通过未发生故障的第一路径发送第一 SCSI注册指令给该存储阵列;路径处理模块23还用于当接收到该存储阵列发送的第一 SCSI注册指令的响应消息后,发送携带有未发生故障的第一路径标识的第一 SCSI预留设置指令给该存储阵列,以供该存储阵列根据该第一 SCSI预留设置指令,设置与该未发生故障的第一路径标识对应的第一 SCSI预留。访问处理模块M还用于根据该与未发生故障的第一路径对应的第一 SCSI预留, 通过该未发生故障的第一路径和该虚拟化设备对该存储阵列进行I/O数据访问处理。本实施例的主机服务器可以执行图3所示方法实施例的技术方案,其实现原理相类似,此处不再赘述。在本实施例中,通过主机服务器若判断出虚拟化设备故障或者第一路径组的第一路径全部故障,则发送用于注册第二路径组的第二 SCSI预留注册指令给存储阵列,并通过第二路径发送携带有第一路径标识的第一 SCSI预留删除指令给该存储阵列,以使得该存储阵列删除第一路径标识对应的第一 SCSI预留,当接收存储阵列发送的第二 SCSI注册
1指令的响应消息,以及第一 SCSI删除指令的响应消息,则发送携带有第二路径标识的第二 SCSI预留设置指令给存储阵列,以供该存储阵列设置与该第二路径组标识对应的第二 SCSI预留,从而可以通过第二路径对存储阵列进行I/O数据访问处理,进而有效地解决了现有技术中当带内虚拟化设备由于某种原因出现故障时,主机服务器上业务中断的问题, 并有效地提高了用户使用的便捷性。更进一步的,在本发明的又一个实施例中,在上述图4所示实施例的基础上,为了避免主机服务器上同一个LUN显示出一个非虚拟化LUN和一个虚拟化LUN,而导致数据可能被破坏的问题,该主机服务器还可以包括接收模块和识别处理模块,其中,接收模块用于接收该存储阵列通过该虚拟化设备和该第一路径映射给该主机服务器的虚拟化LUN,并接收该存储阵列通过该第二路径映射给该主机服务器的非虚拟化LUN ;识别处理模块用于识别该虚拟化LUN中的WWW与该非虚拟化LUN中的WWW是否相同,若相同,则设置该虚拟化 LUN和非虚拟化LUN为同一 LUN。发明还提供了一种I/O数据访问中断的处理系统,该系统包括虚拟化设备、存储阵列和主机服务器,其中,该主机服务器可以执行图2或者图3所示方法实施例的技术方案,其原理相类似,此处不再赘述。具体的,主机服务器通过第二路径组与存储阵列相连,虚拟化设备通过第一路径组分别与主机服务器和存储阵列相连。本领域普通技术人员可以理解实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括R0M、RAM、磁碟或者光盘等各种可以存储程序代码的介质。最后应说明的是以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
权利要求
1.一种I/O数据访问中断的处理方法,其特征在于,包括若判断出虚拟化设备故障或者第一路径组的第一路径全部故障,则发送用于注册第二路径的第二 SCSI注册指令给存储阵列,所述第一路径组包括至少一条所述第一路径,所述第一路径由所述主机服务器与所述存储阵列通过所述虚拟化设备连接形成,所述第二路径组包括至少一条第二路径,所述第二路径由所述主机服务器与所述存储阵列直连形成,所述存储阵列上设置有与第一路径对应的第一 SCSI预留;通过所述第二路径发送携带有第一路径标识的第一 SCSI预留删除指令给所述存储阵列,以使所述存储阵列根据所述第一 SCSI预留删除指令,删除与所述第一路径标识对应的第一 SCSI预留;在接收到所述存储阵列发送的第二 SCSI注册指令的响应消息,以及所述第一 SCSI删除指令的响应消息后,通过所述第二路径发送携带有第二路径标识的第二 SCSI预留设置指令给所述存储阵列,以使所述存储阵列根据所述第二 SCSI预留设置指令,设置与所述第二路径标识对应的第二 SCSI预留;根据与所述第二路径标识对应的第二 SCSI预留,通过所述第二路径对所述存储阵列进行I/O数据访问处理。
2.根据权利要求1所述的I/O数据访问中断的处理方法,其特征在于,还包括 接收所述存储阵列通过所述虚拟化设备和所述第一路径映射给所述主机服务器的虚拟化逻辑单元号,并接收所述存储阵列通过所述第二路径映射给所述主机服务器的非虚拟化逻辑单元号;识别所述虚拟化逻辑单元号中的全球唯一名字与所述非虚拟化逻辑单元号中的全球唯一名字是否相同,若相同,则设置所述虚拟化逻辑单元号和非虚拟化逻辑单元号为同一逻辑单元号。
3.根据权利要求1所述的I/O数据访问中断的处理方法,其特征在于,还包括每隔预定时间,通过所述第一路径发送测试信号,所述测试信号用于检测所述第一路径和/或所述带内化虚拟设备是否恢复;若通过所述第一路径接收到的测试信号的响应消息正确,则发送携带有第二路径标识的第二 SCSI预留删除指令给所述存储阵列,以供所述存储阵列根据所述第二 SCSI预留删除指令,删除与所述第二路径标识对应的第二 SCSI预留;根据所述存储阵列发送的第二 SCSI预留删除指令的响应消息,发送携带有第一路径标识对应的第一 SCSI预留设置指令给所述存储阵列,以供所述存储阵列根据所述第一 SCSI预留设置指令,设置与所述第一路径标识对应的第一 SCSI预留; 通过所述第一路径对所述存储阵列进行I/O数据访问处理。
4.根据权利要求1所述的I/O数据访问中断的处理方法,其特征在于,还包括若判断出所述虚拟化设备无故障,且所述第一路径组所包含的第一路径未全部发生故障,则通过未发生故障的第一路径发送第一 SCSI注册指令给所述存储阵列,当接收到所述存储阵列发送的第一 SCSI注册指令的响应消息后,发送携带有未发生故障的第一路径标识的第一 SCSI预留设置指令给所述存储阵列,以供所述存储阵列根据所述第一 SCSI预留设置指令,设置与所述未发生故障的第一路径标识对应的第一 SCSI预留;根据所述与未发生故障的第一路径对应的第一 SCSI预留,通过所述未发生故障的第一路径和所述虚拟化设备对所述存储阵列进行I/O数据访问处理。
5.一种主机服务器,其特征在于,包括判断模块,用于判断虚拟化设备是否发生故障或者第一路径组的第一路径是否全部故障;所述第一路径组包括至少一条所述第一路径,所述第一路径由所述主机服务器与所述存储阵列通过所述虚拟化设备连接形成,所述存储阵列上设置有与第一路径对应的第一 SCSI预留;注册模块,用于若所述判断模块判断出虚拟化设备故障或者第一路径组的第一路径全部故障,则发送用于注册的第二路径的第二 SCSI注册指令给存储阵列;所述第二路径组包括至少一条第二路径,所述第二路径由所述主机服务器与所述存储阵列直连形成;路径处理模块,用于通过所述第二路径发送携带有第一路径标识的第一 SCSI预留删除指令给所述存储阵列,以使得所述存储阵列根据所述第一 SCSI预留删除指令,删除与所述第一路径标识对应的第一 SCSI预留;并在接收到所述存储阵列发送的第二 SCSI注册指令的响应消息,以及所述第一 SCSI删除指令的响应消息后,通过所述第二路径发送携带有第二路径标识的第二 SCSI预留设置指令给所述存储阵列,以使所述存储阵列根据所述第二 SCSI预留设置指令,设置与所述第二路径标识对应的第二 SCSI预留;访问处理模块,用于根据与所述第二路径标识对应的第二 SCSI预留,通过所述第二路径对所述存储阵列进行I/O数据访问处理。
6.根据权利要求5所述的主机服务器,其特征在于,还包括接收模块,用于接收所述存储阵列通过所述虚拟化设备和所述第一路径映射给所述主机服务器的虚拟化逻辑单元号,并接收所述存储阵列通过所述第二路径映射给所述主机服务器的非虚拟化逻辑单元号;识别处理模块,用于识别所述虚拟化逻辑单元号中的全球唯一名字与所述非虚拟化逻辑单元号中的全球唯一名字是否相同,若相同,则设置所述虚拟化逻辑单元号和非虚拟化逻辑单元号为同一逻辑单元号。
7.根据权利要求5所述的主机服务器,其特征在于,所述判断模块还用于每隔预定时间,通过所述第一路径发送测试信号,所述测试信号用于检测所述第一路径和/或所述带内化虚拟设备是否恢复,并判断是否通过所述第一路径接收到测试信号的响应消息;所述路径处理模块还用于若所述判断模块判断出通过所述第一路径接收到的测试信号的响应消息正确,则发送携带有第二路径标识的第二 SCSI预留删除指令给所述存储阵列,以供所述存储阵列根据所述第二 SCSI预留删除指令,删除与所述第二路径标识对应的第二 SCSI预留;并根据所述存储阵列发送的第二 SCSI预留删除指令的响应消息,发送携带有第一路径标识对应的第一 SCSI预留设置指令给所述存储阵列,以供所述存储阵列根据所述第一 SCSI预留设置指令,设置与所述第一路径标识对应的第一 SCSI预留;所述访问处理模块还用于通过所述第一路径对所述存储阵列进行I/O数据访问处理。
8.根据权利要求5所述的主机服务器,其特征在于,所述注册模块还用于若所述判断模块判断出所述虚拟化设备无故障,且所述第一路径组所包含的第一路径未全部发生故障,则通过未发生故障的第一路径发送第一 SCSI注册指令给所述存储阵列;所述路径处理模块还用于当接收到所述存储阵列发送的第一 SCSI注册指令的响应消息后,发送携带有未发生故障的第一路径标识的第一 SCSI预留设置指令给所述存储阵列,以供所述存储阵列根据所述第一 SCSI预留设置指令,设置与所述未发生故障的第一路径标识对应的第一 SCSI预留;所述访问处理模块还用于根据所述与未发生故障的第一路径对应的第一 SCSI预留, 通过所述未发生故障的第一路径和所述虚拟化设备对所述存储阵列进行I/O数据访问处理。
9. 一种I/O数据访问中断的处理系统,其特征在于,包括虚拟化设备、存储阵列和如权利要求5至8任一项所述的主机服务器,其中,所述主机服务器通过所述第二路径组与所述存储阵列相连,所述虚拟化设备通过所述第一路径组分别与所述主机服务器和所述存储阵列相连。
全文摘要
本发明提供一种I/O数据访问中断的处理方法和系统以及设备,该方法包括若判断出虚拟化设备故障或者第一路径组的第一路径全部故障,则发送第二SCSI注册指令给存储阵列,并通过第二路径发送携带有第一路径标识的第一SCSI预留删除指令给存储阵列,以使存储阵列删除与第一路径标识对应的第一SCSI预留;在接收到存储阵列发送的第二SCSI注册指令的响应消息以及第一SCSI删除指令的响应消息后,通过第二路径发送携带有第二路径标识的第二SCSI预留设置指令给存储阵列,以使存储阵列设置与第二路径标识对应的第二SCSI预留;通过第二路径对存储阵列进行I/O数据访问处理。
文档编号G06F13/24GK102495815SQ20111036120
公开日2012年6月13日 申请日期2011年11月15日 优先权日2011年11月15日
发明者卿翔, 李小华 申请人:成都市华为赛门铁克科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1