CN103677927B - 软件升级的方法及装置 - Google Patents
软件升级的方法及装置 Download PDFInfo
- Publication number
- CN103677927B CN103677927B CN201310694593.1A CN201310694593A CN103677927B CN 103677927 B CN103677927 B CN 103677927B CN 201310694593 A CN201310694593 A CN 201310694593A CN 103677927 B CN103677927 B CN 103677927B
- Authority
- CN
- China
- Prior art keywords
- pmd
- access request
- data access
- mfd
- application server
- 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.)
- Active
Links
Landscapes
- Stored Programmes (AREA)
Abstract
本发明实施例涉及一种软件升级的方法及装置。当需要对所述多路径管理软件进行升级时,所述应用服务器继续利用所述第一PMD处理升级之前接收到的第一数据访问请求;获取所述第二PMD;对所述第二PMD进行注册,使得所述应用服务器利用所述MFD将后续接收到第二数据访问请求转发给所述第二PMD;利用所述第二PMD接收所述MFD发送的所述第二数据访问请求,并处理所述第二数据访问请求;当所述第一数据访问请求处理完毕时,卸载所述第一PMD。从而可以保证在不中断数据访问请求处理的情况下,升级多路径管理软件。
Description
技术领域
本发明涉及信息技术领域,尤其涉及一种软件升级的方法及装置。
背景技术
在IT领域,在应用服务器与存储阵列组成的应用环境中,为了避免应用服务器与存储阵列之间的一条链路出现故障时应用程序上的业务便中断,并且为了提高数据传输的可靠性,在应用服务器与存储阵列之间一般采用多条链路(称为路径)相连的方式。运行在应用服务器的操作系统内核的多路径管理软件就负责管理多条路径,在一条路径发生故障时可以把业务流切换到其他路径,保证业务不中断,但是多路径管理软件通常需要升级。
现有技术中,多路径管理软件运行在应用服务器的操作系统的内核态(称为内核驱动程序),而对于内核驱动程序,如果要升级,通常需要中断与待升级内核驱动程序相依赖的业务,对于有的内核驱动程序还需要重启系统才能生效,长期以来多路径管理软件的升级均需重启主机,业务必然会中断一次才能完成多路径管理软件升级。
发明内容
本发明实施例提供了一种软件升级的方法及装置,以实现在不中断数据访问请求处理的情况下,升级多路径管理软件。
第一方面,提供了一种软件升级的方法,该方法应用于存储系统中,所述存储系统包括应用服务器和存储设备,所述应用服务器和所述存储设备之间通过多条路径进行通信,其中所述应用服务器中包含多路径管理软件,所述多路径管理软件包含多路径框架驱动MFD和第一路径管理驱动PMD,所述方法用于将所述第一PMD升级成第二PMD,该方法包括:
当需要对所述多路径管理软件进行升级时,所述应用服务器继续利用所述第一PMD处理升级之前接收到的第一数据访问请求;
获取所述第二PMD;
对所述第二PMD进行注册,使得所述应用服务器利用所述MFD将后续接收到第二数据访问请求转发给所述第二PMD;
利用所述第二PMD接收所述MFD发送的所述第二数据访问请求,并处理所述第二数据访问请求;
当所述第一数据访问请求处理完毕时,卸载所述第一PMD。
根据第一方面,在第一方面的第一种可能的实现方式中,所述在对所述第二PMD进行注册之前,所述方法还包括:
向所述第二PMD发送初始化指示信息,使得所述第二PMD通过所述MFD获取所述多路径管理软件运行时所需的全局内存数据,根据所述全局内存数据对所述第二PMD进行初始化。
根据第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述向所述第二PMD发送初始化指示信息,使得所述第二PMD通过所述MFD获取所述多路径管理软件运行时所需的全局内存数据包括:
对所述第一PMD、所述MFD和所述第二PMD进行兼容性检查,当符合兼容性要求时,向所述第二PMD发送初始化指示信息,使得所述第二PMD通过所述MFD获取所述多路径管理软件运行时所需的全局内存数据。
第二方面,提供了一种软件升级的方法,该方法应用于存储系统中,所述存储系统包括应用服务器和存储设备,所述应用服务器和所述存储设备之间通过多条路径进行通信,其中所述应用服务器中包含多路径管理软件,所述多路径管理软件包含多路径框架驱动MFD和第一路径管理驱动PMD,所述方法用于将所述第一PMD升级成第二PMD,该方法包括:
当需要对所述多路径管理软件进行升级时,所述应用服务器继续利用所述第一PMD处理升级之前接收到的第一数据访问请求;
利用所述MFD处理后续接收到的第二数据访问请求;
当所述第一数据访问请求处理完毕时,卸载所述第一PMD;
获取所述第二PMD;
对所述第二PMD进行注册,使得所述应用服务器利用所述MFD将第三数据访问请求转发给所述第二PMD,其中,所述第三数据访问请求为在对所述第二PMD进行注册之后,所述应用服务器接收到的数据访问请求;
利用所述第二PMD接收所述MFD发送的所述第三数据访问请求,并处理所述第三数据访问请求。
第三方面,提供了一种软件升级的装置,该装置应用于存储系统中,所述存储系统包括应用服务器和存储设备,所述应用服务器和所述存储设备之间通过多条路径进行通信,其中所述应用服务器中包含多路径管理软件,所述多路径管理软件包含多路径框架驱动MFD和第一路径管理驱动PMD,所述装置用于将所述第一PMD升级成第二PMD,该装置包括:第一处理单元、获取单元、注册单元、第二处理单元和卸载单元;
所述第一处理单元,用于当需要对所述多路径管理软件进行升级时,继续利用所述第一PMD处理升级之前接收到的第一数据访问请求;
所述获取单元,用于获取所述第二PMD;
所述注册单元,用于对所述获取单元获取的所述第二PMD进行注册,使得所述应用服务器利用所述MFD将后续接收到第二数据访问请求转发给所述第二PMD;
所述第二处理单元,用于利用所述注册单元注册后的所述第二PMD接收所述MFD发送的所述第二数据访问请求,并处理所述第二数据访问请求;
所述卸载单元,用于当所述第一数据访问请求处理完毕时,卸载所述第一PMD。
根据第三方面,在第三方面的第一种可能的实现方式中,所述装置还包括:发送单元,用于向所述第二PMD发送初始化指示信息,使得所述第二PMD通过所述MFD获取所述多路径管理软件运行时所需的全局内存数据,根据所述全局内存数据对所述第二PMD进行初始化。
根据第三方面的第一种可能的实现方式,在第三方面的第二种可能的实现方式中,所述发送单元具体用于:
对所述第一PMD、所述MFD和所述第二PMD进行兼容性检查,当符合兼容性要求时,向所述第二PMD发送初始化指示信息,使得所述第二PMD通过所述MFD获取所述多路径管理软件运行时所需的全局内存数据。
第四方面,提供了一种软件升级的装置,该装置应用于存储系统中,所述存储系统包括应用服务器和存储设备,所述应用服务器和所述存储设备之间通过多条路径进行通信,其中所述应用服务器中包含多路径管理软件,所述多路径管理软件包含多路径框架驱动MFD和第一路径管理驱动PMD,所述装置用于将所述第一PMD升级成第二PMD,该装置包括:第一处理单元、第二处理单元、卸载单元、获取单元、注册单元和第三处理单元;
所述第一处理单元,用于当需要对所述多路径管理软件进行升级时,继续利用所述第一PMD处理升级之前接收到的第一数据访问请求;
所述第二处理单元,用于利用所述MFD处理后续接收到的第二数据访问请求;
所述卸载单元,当所述第一处理单元处理的第一数据访问请求处理完毕时,卸载所述第一PMD;
所述获取单元,用于获取所述第二PMD;
所述注册单元,用于对所述获取单元获取的所述第二PMD进行注册,使得所述应用服务器利用所述MFD将第三数据访问请求转发给所述第二PMD,其中,所述第三数据访问请求为在对所述第二PMD进行注册之后,所述应用服务器接收到的数据访问请求;
所述第三处理单元,利用所述注册单元注册的所述第二PMD接收所述MFD发送的所述第三数据访问请求,并处理所述第三数据访问请求。
本发明实施例提供的软件升级的方法及装置,当需要对所述多路径管理软件进行升级时,所述应用服务器继续利用所述第一PMD处理升级之前接收到的第一数据访问请求;获取所述第二PMD;对所述第二PMD进行注册,使得所述应用服务器利用所述MFD将后续接收到第二数据访问请求转发给所述第二PMD;利用所述第二PMD接收所述MFD发送的所述第二数据访问请求,并处理所述第二数据访问请求;当所述第一数据访问请求处理完毕时,卸载所述第一PMD。这种由第一PMD处理多路径管理软件升级之前接收到的第一数据访问请求,并且由第二PMD同时处理后续接收到的第二数据访问请求方式,且在第一数据访问请求处理完毕时,卸载第一PMD的方式,保证了在将第一PMD升级为第二PMD时,即升级多路径管理软件时,不中断数据访问请求的处理。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的多路径管理软件逻辑示意图;
图2为本发明实施一提供的软件升级的方法流程图;
图3为本发明实施例一提供的软件升级的方法示意图之一;
图4为本发明实施例一提供的软件升级的方法示意图之二;
图5为本发明实施例一提供的软件升级的方法示意图之三;
图6为本发明实施例一提供的软件升级的方法示意图之四;
图7为本发明实施二提供的软件升级的方法流程图;
图8为本发明实施例二提供的软件升级的方法示意图之一;
图9为本发明实施例二提供的软件升级的方法示意图之二;
图10为本发明实施例二提供的软件升级的方法示意图之三;
图11为本发明实施例二提供的软件升级的方法示意图之四;
图12为本发明实施例三提供的软件升级的装置示意图;
图13为本发明实施例四提供的软件升级的装置示意图。
具体实施方式
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
在实际的应用环境中,通常存储系统包括应用服务器和存储设备,应用服务器和所述存储设备之间通过多条路径进行通信,其中应用服务器中包含多路径管理软件,而多路径管理软件又包括两个驱动:多路径框架驱动(Multipath Framework Driver,MFD)和路径管理驱动(Path Management Driver,PMD),多路径框架驱动与操作系统强依赖但是与多路径业务特性功能无关,这个驱动在多路径管理软件升级过程中维持不变;路径管理驱动一般可以为多个,它与多路径业务功能强相关但是与操作系统不依赖,在多路径管理驱动升级过程中进行更新。
图1为本发明提供的多路径管理软件逻辑示意图。图1中,多路径管理软件10包括两个驱动:多路径框架驱动101和路径管理驱动102。多路径框架驱动101与操作系统上下驱动层进行IO直接交互,实现与系统设备栈关联的功能,举例为,在应用服务器与存储设备组成的应用环境中,当在存储设备上新增或者删除LUN或者磁盘空间时,多路径框架驱动101即可捕获到该新增或者删除磁盘空间的事件,然后通知路径管理驱动102去新建或删除存储设备与应用服务器之间的物理路径;多路径框架驱动101同时还实现一个很重要的功能,即对多路径管理驱动中所有全局数据的管理,包括内存申请和释放,通过对外提供接口让路径管理驱动102获取全局内存地址和配置数据,但是路径管理驱动102只使用但不负责这些数据的生命周期。
路径管理驱动102,不与系统具体驱动及设备栈层次直接关联,解除了与系统的耦合,相应地,升级多路径管理软件10时,只需要升级路径管理驱动102。路径管理驱动102是一堆业务功能函数集,实现多路径的业务逻辑功能,包括:路径管理,举例为,物理路径的上报删除,即在接收到多路径框架驱动101发送的管理路径的通知时,新建或删除存储设备与应用服务器之间的物理路径;选路负载,举例为,通过轮询算法、最小队列深度算法或最小任务选路算法去有效利用各条物理路径,以达到负载均衡;错误处理,举例为,通过错误码翻译、I/O重试和I/O倒换等进行错误处理;路径健康管理,周期性对各条物理路径进行检查,对出现故障的路径进行隔离并降级检查,恢复已修复好的路径;IO切换,举例为,在已存在的n条物理路径中,第i条路径出现故障,则将原本通过第i条路径转发的业务流重定向至其他路径进行业务流的转发。
需要说明的是,在多路径管理软件10中包括多个路径管理驱动102时,各路径管理驱动102通过其提供的对外接口注册关于各路径管理驱动102的信息,在有业务流下发时,多路径框架驱动101根据一定的管理规则(举例为,在某一时刻,调用某个接口)调用不同的接口,以实现对各路径管理驱动102的调用,即在一个多路径管理驱动中可同时运行多个路径管理驱动102,从而为多路径管理软件升级不中断业务提供了基础。
图2为本发明实施一提供的软件升级的方法流程图,该方法用于将第一路径管理驱动升级成第二路径管理驱动,如图2所示,本实施例具体包括以下步骤:
步骤210,当需要对所述多路径管理软件进行升级时,所述应用服务器继续利用所述第一PMD处理升级之前接收到的第一数据访问请求。
参见图3所示的本发明实施例一提供的软件升级的方法示意图之一,图3中,多路径管理软件30包括两个驱动:多路径框架驱动MFD301和第一路径管理驱动PMD302,对多路径管理软件30的升级即为对第一路径管理驱动302的升级。具体地,多路径框架驱动301定义一个运行时多路径内存数据管理的数据结构,它通过但不限于虚拟磁盘列表和管理的存储产品信息列表将多路径管理软件30运行时的全局内存数据统一管理起来。这样可以保证在多路径管理软件30包括多个路径管理驱动,且在升级其中一个路径管理驱动时,运行时全局公共内存数据仍然可用,其他路径管理驱动能够获取得到,这种多个路径管理驱动共享的同一套多路径内存数据可实现业务流的并行处理,还可以实现在不影响业务流的下发和返回的情况下实现将旧路径管理驱动升级成新路径管理驱动,此处,对业务流的处理通过对数据访问请求的处理来实现,而通常的数据访问请求即为I/O请求。此外,多路径框架驱动301还需定义一个管理I/O的数据结构,该结构包含指向系统I/O结构体的指针,还包含一个记录I/O处理的路径管理驱动的HOOK指针,该HOOK指针即为路径管理驱动对外提供的函数接口,这样的设计是为了保证在有多个路径管理驱动时,也即可以调用多个路径管理驱动同时处理I/O时,保证I/O的下发和返回都是同一个路径管理驱动处理,满足升级过程中,I/O从升级前的路径管理驱动平滑过渡到升级后的路径管理驱动而业务流的转发不受影响的要求。具体地,当需要对所述多路径管理软件30进行升级时,应用服务器继续利用所述第一路径管理驱动处理升级之前接收到的第一数据访问请求,具体实现为,多路径框架驱动301定义一个管理I/O的数据结构,该数据结构中包含一个记录I/O处理的第一路径管理驱动302的HOOK指针,该HOOK指针即为第一路径管理驱动302对外提供的函数接口,记录为第一接口,通过第一路径管理驱动302对应的第一接口调用第一路径管理驱动302(该第一接口是由第一路径管理驱动302事先注册到多路径框架驱动301中),然后该第一路径管理驱动302选择相应的物理路径进行第一数据访问请求的处理,其中第一路径管理驱动302为升级前的路径管理驱动。
需要说明的是,对于多路径管理软件30运行时所需的内存数据,多路径框架驱动301通过定义数据结构的方式对上述内存数据进行管理,可以将上述内存数据分为基本部分和扩展部分,基本部分包含对象基本信息等跨版本的公共成员,足以实现业务流处理过程中最简单的选路,这部分数据一直保持不变;扩展部分包存支撑复杂路径管理功能的,很有可能随版本升级而修改新增成员变量,为各版本路径管理驱动私有部分,由各路径管理驱动自己构造维护,适应变化。
步骤220,获取所述第二PMD。
参见图4所示的本发明实施例一提供的软件升级的方法示意图之二,图4中,应用服务器先获取第二路径管理驱动403。
步骤230,对所述第二PMD进行注册,使得所述应用服务器利用所述MFD将后续接收到第二数据访问请求转发给所述第二PMD。
图4中,应用服务器在获取到第二路径管理驱动403之后,检查多路径框架驱动401、第一路径管理驱动402和第二路径管理驱动403的兼容性,当符合兼容性要求时,将第二路径管理驱动403加载到操作系统的内核中,并向第二路径管理驱动403发送初始化指示信息;第二路径管理驱动403接收到上述初始化指示信息之后,通过所述多路径框架驱动401对外提供的接口获取多路径管理软件40运行时所需的全局内存数据,根据上述全局内存数据对自身进行初始化,完成初始化的第二路径管理驱动403就具备了处理数据访问请求的能力,包括I/O的下发和返回;最后对第二路径管理驱动403进行注册,具体地,第二路径管理驱动403向路径框架驱动401发送注册接口请求信息,路径框架驱动401接收到请求信息后,可在其定义的管理I/O的数据结构中新增一个I/O处理的第二路径管理驱动403的HOOK指针(记录为第二接口),之后多路径框架驱动401通过第二路径管理驱动403对应的第二接口,即可实现将后续接收到的第二数据访问请求转发给第二路径管理驱动403。
步骤240,利用所述第二PMD接收所述MFD发送的所述第二数据访问请求,并处理所述第二数据访问请求。
参见图5所示的本发明实施例一提供的软件升级的方法示意图之三,图5中,在对第二路径管理驱动503进行注册之后,多路径框架驱动501将新注册的第二接口标识为优先使用的状态,以实现当应用服务器接收到后续的第二数据访问请求时,多路径框架驱动501通过标识为优先使用状态的第二接口向第二路径管理驱动503发送第二数据访问请求,由第二路径管理驱动503处理接收到的第二数据访问请求。图5中,第一路径管理驱动502和第二路径管理驱动503同时在处理数据访问请求,因为它们都可以通过多路径框架驱动501对外提供的接口获取全局内存数据。上述这种第一路径管理驱动502和第二路径管理驱动503同时在处理数据访问请求的方式,保证了不中断数据访问请求处理的情况下,升级多路径管理软件。
需要说明的是,上述过程中,当第二路径管理驱动503向多路径框架驱动501注册第二接口之后,多路径框架驱动501通过修改新注册的第二接口的状态实现后续数据访问请求的处理,多路径框架驱动501还可通过其他的管理规则实现后续数据访问请求的处理,举例为,可以通过设置时间段的方式,即某一时刻调用某个固定的接口。
步骤250,当所述第一数据访问请求处理完毕时,卸载所述第一PMD。
参见图6所示的本发明实施例一提供的软件升级的方法示意图之四,图6中,在多路径框架驱动601重定向新业务流之后,即通过新注册的第二接口向第二路径管理驱动603发送第二数据访问请求,并由第二路径管理驱动603处理接收到的第二数据访问请求时,应用服务器向第一路径管理驱动602发送注销命令,由第一路径管理驱动602注销与多路径框架驱动601之间的第一接口。具体地,在第一路径管理驱动602接收到注销命令之后,判断其之前处理的第一数据访问请求是否全部处理完毕,如果没有全部处理完毕,则继续判断;如果全部处理完毕,则表示第一路径管理驱动602处理完成了所有的业务流,然后第一路径管理驱动602注销与多路径框架驱动601之间的第一接口,清理其在多路径框架驱动601中的内部数据,并设置停工标记为已停工。应用服务器定期查询第一路径管理驱动602的停工标记,当该停工标记为已停工时,表示第一数据访问请求已经全部处理完毕,卸载第一路径管理驱动602,整个多路径管理软件升级完成。
图7为本发明实施二提供的软件升级的方法流程图,该方法用于将第一路径管理驱动升级成第二路径管理驱动,如图7所示,本实施例具体包括以下步骤:
步骤710,当需要对所述多路径管理软件进行升级时,所述应用服务器继续利用所述第一PMD处理升级之前接收到的第一数据访问请求。
参见图8所示的本发明实施例二提供的软件升级的方法示意图之一,图8中,多路径管理软件80包括两个驱动:多路径框架驱动MFD801和第一路径管理驱动PMD802,对多路径管理软件80的升级即为对第一路径管理驱动802的升级。具体地,多路径框架驱动801定义一个运行时多路径内存数据管理的数据结构,它通过但不限于虚拟磁盘列表和管理的存储产品信息列表将多路径管理软件80运行时的全局内存数据统一管理起来。这样可以保证在多路径管理软件80包括多个路径管理驱动,且在升级其中一个路径管理驱动时,运行时全局公共内存数据仍然可用,其他路径管理驱动能够获取得到,这种多个路径管理驱动共享的同一套多路径内存数据可实现业务流的并行处理,还可以实现在不影响业务流的下发和返回的情况下实现将旧路径管理驱动升级成新路径管理驱动,此处,对业务流的处理通过对数据访问请求的处理来实现,而通常的数据访问请求即为I/O请求。此外,多路径框架驱动301还需定义一个管理I/O的数据结构,该结构包含指向系统I/O结构体的指针,还包含一个记录I/O处理的路径管理驱动的HOOK指针,该HOOK指针即为路径管理驱动对外提供的函数接口,这样的设计是为了保证在有多个路径管理驱动时,也即可以调用多个路径管理驱动同时处理I/O时,保证I/O的下发和返回都是同一个路径管理驱动处理,满足升级过程中,I/O从升级前的路径管理驱动平滑过渡到升级后的路径管理驱动而业务流的转发不受影响的要求。具体地,当需要对所述多路径管理软件80进行升级时,应用服务器继续利用所述第一路径管理驱动处理升级之前接收到的第一数据访问请求,具体实现为,多路径框架驱动801定义一个管理I/O的数据结构,该数据结构中包含一个记录I/O处理的第一路径管理驱动802的HOOK指针,该HOOK指针即为第一路径管理驱动802对外提供的函数接口,记录为第一接口,通过第一路径管理驱动802对应的第一接口调用第一路径管理驱动802(该第一接口是由第一路径管理驱动802事先注册到多路径框架驱动801中),然后该第一路径管理驱动802选择相应的物理路径进行第一数据访问请求的处理,其中第一路径管理驱动802为升级前的路径管理驱动。
需要说明的是,对于多路径管理软件80运行时所需的内存数据,多路径框架驱动801通过定义数据结构的方式对上述内存数据进行管理,可以将上述内存数据分为基本部分和扩展部分,基本部分包含对象基本信息等跨版本的公共成员,足以实现业务流处理过程中最简单的选路,这部分数据一直保持不变;扩展部分包存支撑复杂路径管理功能的,很有可能随版本升级而修改新增成员变量,为各版本路径管理驱动私有部分,由各路径管理驱动自己构造维护,适应变化。
步骤720,利用所述MFD处理后续接收到的第二数据访问请求。
参见图9所示的本发明实施例二提供的软件升级的方法示意图之二,图9中,应用服务器先检查多路径框架驱动901、第一路径管理驱动902和第二路径管理驱动903的兼容性,当符合兼容性要求时,利用多路径框架驱动901处理后续接收到的第二数据访问请求。具体实现为,多路径框架驱动901管理I/O的数据结构中还包含一个指向系统I/O结构体的指针,通过该指针,多路径框架驱动901可以直接选择相应的物理路径,进行上述I/O的下发和返回。
步骤730,当所述第一数据访问请求处理完毕时,卸载所述第一PMD。
图9中,在利用所述多路径框架驱动901处理后续接收到的第二数据访问请求之后,应用服务器向第一路径管理驱动902发送注销命令,由第一路径管理驱动902注销与多路径框架驱动901之间的第一接口。具体地,在第一路径管理驱动902接收到注销命令之后,判断其之前处理的第一数据访问请求是否全部处理完毕,如果没有全部处理完毕,则继续判断;如果全部处理完毕,则表示第一路径管理驱动902处理完成了所有的业务流,然后第一路径管理驱动902注销与多路径框架驱动901之间的第一接口,清理其在多路径框架驱动901中的内部数据,并设置停工标记为已停工。应用服务器定期查询第一路径管理驱动902的停工标记,当该停工标记为已停工时,表示第一数据访问请求已经全部处理完毕,卸载第一路径管理驱动902。
步骤730,获取所述第二PMD。
参见图10所示的本发明实施例二提供的软件升级的方法示意图之三,图10中,应用服务器获取第二路径管理驱动1003。
步骤740,对所述第二PMD进行注册,使得所述应用服务器利用所述MFD将第三数据访问请求转发给所述第二PMD,其中,所述第三数据访问请求为在对所述第二PMD进行注册之后,所述应用服务器接收到的数据访问请求。
图10中,应用服务器在获取到第二路径管理驱动1003之后,将第二路径管理驱动1003加载到操作系统的内核中,并向第二路径管理驱动1003发送初始化指示信息;第二路径管理驱动1003接收到上述初始化指示信息之后,通过所述多路径框架驱动1001对外提供的接口获取多路径管理软件100运行时所需的全局内存数据,根据上述全局内存数据对自身进行初始化,完成初始化的第二路径管理驱动1003就具备了处理数据访问请求的能力,包括I/O的下发和返回;最后对第二路径管理驱动1003进行注册,具体地,第二路径管理驱动1003向路径框架驱动1001发送注册接口请求信息,路径框架驱动1001接收到请求信息后,可在其定义的管理I/O的数据结构中新增一个I/O处理的第二路径管理驱动1003的HOOK指针(记录为第二接口),之后多路径框架驱动1001通过第二路径管理驱动1003对应的第二接口,即可实现将第三数据访问请求转发给第二路径管理驱动1003,其中,第三数据访问请求为在对所述第二路径管理驱动1003进行注册之后,应用服务器接收到的数据访问请求。图10中,多路径框架驱动1001和第二路径管理驱动1003同时在处理数据访问请求的方式,保证了不中断业务流转发的情况下,升级多路径管理软件。
步骤750,利用所述第二PMD接收所述MFD发送的所述第三数据访问请求,并处理所述第三数据访问请求。
参见图11所示的本发明实施例二提供的软件升级的方法示意图之四,图11中,在对第二路径管理驱动1103进行注册之后,多路径框架驱动1101将新注册的第二接口标识为优先使用的状态,以实现当应用服务器接收到后续的第三数据访问请求时,多路径框架驱动1101通过标识为优先使用状态的第二接口向第二路径管理驱动1103发送第三数据访问请求,由第二路径管理驱动1103处理接收到的第三数据访问请求。
需要说明的是,上述过程中,当第二路径管理驱动1103向多路径框架驱动1101注册第二接口之后,多路径框架驱动1101通过修改新注册的第二接口的状态实现后续数据访问请求的处理,多路径框架驱动1101还可通过其他的管理规则实现后续数据访问请求的处理,举例为,可以通过设置时间段的方式,即某一时刻调用某个固定的接口。
图12为本发明实施例三提供的软件升级的装置示意图,所述装置可以用于执行图2所示的方法。图12中,该装置应用于存储系统中,所述存储系统包括应用服务器和存储设备,所述应用服务器和所述存储设备之间通过多条路径进行通信,其中所述应用服务器中包含多路径管理软件,所述多路径管理软件包含多路径框架驱动MFD和第一路径管理驱动PMD,所述装置用于将所述第一PMD升级成第二PMD,所述装置包括:第一处理单元1201、获取单元1202、注册单元1203、第二处理单元1204和卸载单元1205。
所述第一处理单元1201,用于当需要对所述多路径管理软件进行升级时,继续利用所述第一PMD处理升级之前接收到的第一数据访问请求。
多路径框架驱动定义一个管理I/O的数据结构,该数据结构中包含一个记录I/O处理的第一路径管理驱动的HOOK指针,该HOOK指针即为第一路径管理驱动对外提供的函数接口,记录为第一接口,通过第一路径管理驱动对应的第一接口调用第一路径管理驱动(该第一接口是由第一路径管理驱动事先注册到多路径框架驱动中),然后该第一路径管理驱动选择相应的物理路径进行第一数据访问请求的处理,其中第一路径管理驱动为升级前的路径管理驱动。
所述获取单元1202,用于获取所述第二PMD。
所述注册单元1203,用于对所述获取单元1202获取的所述第二PMD进行注册,使得所述应用服务器利用所述MFD将后续接收到第二数据访问请求转发给所述第二PMD。
首先,第二路径管理驱动通过所述多路径框架驱动对外提供的接口获取多路径管理软件运行时所需的全局内存数据,根据上述全局内存数据对自身进行初始化,完成初始化的第二路径管理驱动就具备了处理数据访问请求的能力,包括I/O的下发和返回;然后对第二路径管理驱动进行注册,具体地,第二路径管理驱动向路径框架驱动发送注册接口请求信息,路径框架驱动接收到请求信息后,可在其定义的管理I/O的数据结构中新增一个I/O处理的第二路径管理驱动的HOOK指针(记录为第二接口),之后多路径框架驱动通过第二路径管理驱动对应的第二接口,即可实现将后续接收到的第二数据访问请求转发给第二路径管理驱动。
所述第二处理单元1204,用于利用所述注册单元注册后的所述第二PMD接收所述MFD发送的所述第二数据访问请求,并处理所述第二数据访问请求。
在对第二路径管理驱动进行注册之后,多路径框架驱动将新注册的第二接口标识为优先使用的状态,以实现当应用服务器接收到后续的第二数据访问请求时,多路径框架驱动通过标识为优先使用状态的第二接口向第二路径管理驱动发送第二数据访问请求,由第二路径管理驱动处理接收到的第二数据访问请求。
所述卸载单元1205,用于当所述第一数据访问请求处理完毕时,卸载所述第一PMD。
可选地,所述装置还包括:发送单元1206,用于向所述第二PMD发送初始化指示信息,使得所述第二PMD通过所述MFD获取所述多路径管理软件运行时所需的全局内存数据,根据所述全局内存数据对所述第二PMD进行初始化。
所述发送单元1206具体用于:对所述第一PMD、所述MFD和所述第二PMD进行兼容性检查,当符合兼容性要求时,向所述第二PMD发送初始化指示信息,使得所述第二PMD通过所述MFD获取所述多路径管理软件运行时所需的全局内存数据。
本发明实施例三提供的装置植入了本发明实施例一提供的方法,因此,本发明提供的装置的具体工作过程,在此不复赘述。
图13为本发明实施例四提供的软件升级的装置示意图,所述装置可以用于执行图7所示的方法。图13中,该装置应用于存储系统中,所述存储系统包括应用服务器和存储设备,所述应用服务器和所述存储设备之间通过多条路径进行通信,其中所述应用服务器中包含多路径管理软件,所述多路径管理软件包含多路径框架驱动MFD和第一路径管理驱动PMD,所述装置用于将所述第一PMD升级成第二PMD,所述装置包括:第一处理单元1301、第二处理单元1302、卸载单元1303、获取单元1304、注册单元1305和第三处理单元1306。
所述第一处理单元1301,用于当需要对所述多路径管理软件进行升级时,继续利用所述第一PMD处理升级之前接收到的第一数据访问请求。
多路径框架驱动定义一个管理I/O的数据结构,该数据结构中包含一个记录I/O处理的第一路径管理驱动的HOOK指针,该HOOK指针即为第一路径管理驱动对外提供的函数接口,记录为第一接口,通过第一路径管理驱动对应的第一接口调用第一路径管理驱动(该第一接口是由第一路径管理驱动事先注册到多路径框架驱动中),然后该第一路径管理驱动选择相应的物理路径进行第一数据访问请求的处理,其中第一路径管理驱动为升级前的路径管理驱动。
所述第二处理单元1302,用于利用所述MFD处理后续接收到的第二数据访问请求。
多路径框架驱动管理I/O的数据结构中还包含一个指向系统I/O结构体的指针,通过该指针,多路径框架驱动可以直接选择相应的物理路径,进行上述I/O的下发和返回。
所述卸载单元1303,当所述第一处理单元处理的第一数据访问请求处理完毕时,卸载所述第一PMD。
所述获取单元1304,用于获取所述第二PMD。
所述注册单元1305,用于对所述获取单元1304获取的所述第二PMD进行注册,使得所述应用服务器利用所述MFD将第三数据访问请求转发给所述第二PMD,其中,所述第三数据访问请求为在对所述第二PMD进行注册之后,所述应用服务器接收到的数据访问请求。
首先,第二路径管理驱动通过所述多路径框架驱动对外提供的接口获取多路径管理软件运行时所需的全局内存数据,根据上述全局内存数据对自身进行初始化,完成初始化的第二路径管理驱动就具备了处理数据访问请求的能力,包括I/O的下发和返回;然后对第二路径管理驱动进行注册,具体地,第二路径管理驱动向路径框架驱动发送注册接口请求信息,路径框架驱动接收到请求信息后,可在其定义的管理I/O的数据结构中新增一个I/O处理的第二路径管理驱动的HOOK指针(记录为第二接口),之后多路径框架驱动通过第二路径管理驱动对应的第二接口,即可实现将第三数据访问请求转发给第二路径管理驱动,其中,第三数据访问请求为在对所述第二路径管理驱动进行注册之后,应用服务器接收到的数据访问请求。
所述第三处理单元1306,利用所述注册单元1305注册的所述第二PMD接收所述MFD发送的所述第三数据访问请求,并处理所述第三数据访问请求。
在对第二路径管理驱动进行注册之后,多路径框架驱动将新注册的第二接口标识为优先使用的状态,以实现当应用服务器接收到后续的第三数据访问请求时,多路径框架驱动通过标识为优先使用状态的第二接口向第二路径管理驱动发送第三数据访问请求,由第二路径管理驱动处理接收到的第三数据访问请求。
可见,本发明实施例提供的软件升级的方法及装置,可以保证在不中断数据访问请求处理的情况下,升级多路径管理软件。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种软件升级的方法,其特征在于,所述方法应用于存储系统中,所述存储系统包括应用服务器和存储设备,所述应用服务器和所述存储设备之间通过多条路径进行通信,其中所述应用服务器中包含多路径管理软件,所述多路径管理软件包含多路径框架驱动MFD和第一路径管理驱动PMD,所述方法用于将所述第一PMD升级成第二PMD,所述方法包括:
当需要对所述多路径管理软件进行升级时,所述应用服务器继续利用所述第一PMD处理升级之前接收到的第一数据访问请求;
获取所述第二PMD;
对所述第二PMD进行注册,使得所述应用服务器利用所述MFD将后续接收到第二数据访问请求转发给所述第二PMD;
利用所述第二PMD接收所述MFD发送的所述第二数据访问请求,并处理所述第二数据访问请求;
当所述第一数据访问请求处理完毕时,卸载所述第一PMD。
2.根据权利要求1所述的方法,其特征在于,在对所述第二PMD进行注册之前,所述方法还包括:
向所述第二PMD发送初始化指示信息,使得所述第二PMD通过所述MFD获取所述多路径管理软件运行时所需的全局内存数据,根据所述全局内存数据对所述第二PMD进行初始化。
3.根据权利要求2所述的方法,其特征在于,所述向所述第二PMD发送初始化指示信息,使得所述第二PMD通过所述MFD获取所述多路径管理软件运行时所需的全局内存数据包括:
对所述第一PMD、所述MFD和所述第二PMD进行兼容性检查,当符合兼容性要求时,向所述第二PMD发送初始化指示信息,使得所述第二PMD通过所述MFD获取所述多路径管理软件运行时所需的全局内存数据。
4.一种软件升级的方法,其特征在于,所述方法应用于存储系统中,所述存储系统包括应用服务器和存储设备,所述应用服务器和所述存储设备之间通过多条路径进行通信,其中所述应用服务器中包含多路径管理软件,所述多路径管理软件包含多路径框架驱动MFD和第一路径管理驱动PMD,所述方法用于将所述第一PMD升级成第二PMD,所述方法包括:
当需要对所述多路径管理软件进行升级时,所述应用服务器继续利用所述第一PMD处理升级之前接收到的第一数据访问请求;
利用所述MFD处理后续接收到的第二数据访问请求;
当所述第一数据访问请求处理完毕时,卸载所述第一PMD;
获取所述第二PMD;
对所述第二PMD进行注册,使得所述应用服务器利用所述MFD将第三数据访问请求转发给所述第二PMD,其中,所述第三数据访问请求为在对所述第二PMD进行注册之后,所述应用服务器接收到的数据访问请求;
利用所述第二PMD接收所述MFD发送的所述第三数据访问请求,并处理所述第三数据访问请求。
5.一种软件升级的装置,其特征在于,所述装置应用于存储系统中,所述存储系统包括应用服务器和存储设备,所述应用服务器和所述存储设备之间通过多条路径进行通信,其中所述应用服务器中包含多路径管理软件,所述多路径管理软件包含多路径框架驱动MFD和第一路径管理驱动PMD,所述装置用于将所述第一PMD升级成第二PMD,所述装置包括:第一处理单元、获取单元、注册单元、第二处理单元和卸载单元;
所述第一处理单元,用于当需要对所述多路径管理软件进行升级时,继续利用所述第一PMD处理升级之前接收到的第一数据访问请求;
所述获取单元,用于获取所述第二PMD;
所述注册单元,用于对所述获取单元获取的所述第二PMD进行注册,使得所述应用服务器利用所述MFD将后续接收到第二数据访问请求转发给所述第二PMD;
所述第二处理单元,用于利用所述注册单元注册后的所述第二PMD接收所述MFD发送的所述第二数据访问请求,并处理所述第二数据访问请求;
所述卸载单元,用于当所述第一数据访问请求处理完毕时,卸载所述第一PMD。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:发送单元,用于向所述第二PMD发送初始化指示信息,使得所述第二PMD通过所述MFD获取所述多路径管理软件运行时所需的全局内存数据,根据所述全局内存数据对所述第二PMD进行初始化。
7.根据权利要求6所述的装置,其特征在于,所述发送单元具体用于:
对所述第一PMD、所述MFD和所述第二PMD进行兼容性检查,当符合兼容性要求时,向所述第二PMD发送初始化指示信息,使得所述第二PMD通过所述MFD获取所述多路径管理软件运行时所需的全局内存数据。
8.一种软件升级的装置,其特征在于,所述装置应用于存储系统中,所述存储系统包括应用服务器和存储设备,所述应用服务器和所述存储设备之间通过多条路径进行通信,其中所述应用服务器中包含多路径管理软件,所述多路径管理软件包含多路径框架驱动MFD和第一路径管理驱动PMD,所述装置用于将所述第一PMD升级成第二PMD,所述装置包括:第一处理单元、第二处理单元、卸载单元、获取单元、注册单元和第三处理单元;
所述第一处理单元,用于当需要对所述多路径管理软件进行升级时,继续利用所述第一PMD处理升级之前接收到的第一数据访问请求;
所述第二处理单元,用于利用所述MFD处理后续接收到的第二数据访问请求;
所述卸载单元,当所述第一处理单元处理的第一数据访问请求处理完毕时,卸载所述第一PMD;
所述获取单元,用于获取所述第二PMD;
所述注册单元,用于对所述获取单元获取的所述第二PMD进行注册,使得所述应用服务器利用所述MFD将第三数据访问请求转发给所述第二PMD,其中,所述第三数据访问请求为在对所述第二PMD进行注册之后,所述应用服务器接收到的数据访问请求;
所述第三处理单元,利用所述注册单元注册的所述第二PMD接收所述MFD发送的所述第三数据访问请求,并处理所述第三数据访问请求。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310694593.1A CN103677927B (zh) | 2013-12-16 | 2013-12-16 | 软件升级的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310694593.1A CN103677927B (zh) | 2013-12-16 | 2013-12-16 | 软件升级的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103677927A CN103677927A (zh) | 2014-03-26 |
CN103677927B true CN103677927B (zh) | 2017-02-22 |
Family
ID=50315584
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310694593.1A Active CN103677927B (zh) | 2013-12-16 | 2013-12-16 | 软件升级的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103677927B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020076512A1 (en) * | 2018-10-09 | 2020-04-16 | EMC IP Holding Company LLC | Migrating control of a multi-path logical device from a current mpio driver to a target mpio driver |
US11567669B1 (en) | 2021-12-09 | 2023-01-31 | Dell Products L.P. | Dynamic latency management of active-active configurations using multi-pathing software |
US11782611B2 (en) | 2021-04-13 | 2023-10-10 | EMC IP Holding Company LLC | Logical storage device access using device-specific keys in an encrypted storage environment |
US11789624B1 (en) | 2022-05-31 | 2023-10-17 | Dell Products L.P. | Host device with differentiated alerting for single points of failure in distributed storage systems |
US11797312B2 (en) | 2021-02-26 | 2023-10-24 | EMC IP Holding Company LLC | Synchronization of multi-pathing settings across clustered nodes |
US11822706B2 (en) | 2021-05-26 | 2023-11-21 | EMC IP Holding Company LLC | Logical storage device access using device-specific keys in an encrypted storage environment |
US11886711B2 (en) | 2022-06-16 | 2024-01-30 | Dell Products L.P. | Host-assisted IO service levels utilizing false-positive signaling |
US12032842B2 (en) | 2022-10-10 | 2024-07-09 | Dell Products L.P. | Host device with multi-path layer configured for alignment to storage system local-remote designations |
Families Citing this family (79)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106341440A (zh) * | 2015-07-14 | 2017-01-18 | 阿里巴巴集团控股有限公司 | 一种数据更新方法和装置 |
US10671376B2 (en) | 2016-03-15 | 2020-06-02 | Shenzhen Skyworth-Rgb Electronic Co., Ltd. | Server program hot upgrading method and device |
WO2017156693A1 (zh) * | 2016-03-15 | 2017-09-21 | 深圳创维-Rgb电子有限公司 | 服务器程序热升级的方法及装置 |
CN108304200B (zh) * | 2017-01-12 | 2022-02-22 | 阿里巴巴集团控股有限公司 | 一种驱动程序升级的方法、装置以及电子设备 |
US10652206B1 (en) | 2017-10-27 | 2020-05-12 | EMC IP Holding Company LLC | Storage system with network-wide configurable device names |
US10757189B2 (en) | 2018-04-30 | 2020-08-25 | EMC IP Holding Company LLC | Service level objection based input-output selection utilizing multi-path layer of host device |
US11050660B2 (en) | 2018-09-28 | 2021-06-29 | EMC IP Holding Company LLC | Host device with multi-path layer implementing path selection based at least in part on fabric identifiers |
US11044313B2 (en) | 2018-10-09 | 2021-06-22 | EMC IP Holding Company LLC | Categorizing host IO load pattern and communicating categorization to storage system |
US10880217B2 (en) | 2018-12-24 | 2020-12-29 | EMC IP Holding Company LLC | Host device with multi-path layer configured for detection and resolution of oversubscription conditions |
US10754559B1 (en) | 2019-03-08 | 2020-08-25 | EMC IP Holding Company LLC | Active-active storage clustering with clock synchronization |
US11277335B2 (en) | 2019-12-26 | 2022-03-15 | EMC IP Holding Company LLC | Host device with path selection modification responsive to mismatch in initiator-target negotiated rates |
US11099755B2 (en) | 2020-01-06 | 2021-08-24 | EMC IP Holding Company LLC | Multipath device pseudo name to logical volume mapping for host devices |
US11231861B2 (en) | 2020-01-15 | 2022-01-25 | EMC IP Holding Company LLC | Host device with active-active storage aware path selection |
US11461026B2 (en) | 2020-01-21 | 2022-10-04 | EMC IP Holding Company LLC | Non-disruptive update of host multipath device dependency |
US11520671B2 (en) | 2020-01-29 | 2022-12-06 | EMC IP Holding Company LLC | Fast multipath failover |
US11050825B1 (en) | 2020-01-30 | 2021-06-29 | EMC IP Holding Company LLC | Storage system port usage information sharing between host devices |
US11175840B2 (en) | 2020-01-30 | 2021-11-16 | EMC IP Holding Company LLC | Host-based transfer of input-output operations from kernel space block device to user space block device |
US11093144B1 (en) | 2020-02-18 | 2021-08-17 | EMC IP Holding Company LLC | Non-disruptive transformation of a logical storage device from a first access protocol to a second access protocol |
US11449257B2 (en) | 2020-02-21 | 2022-09-20 | EMC IP Holding Company LLC | Host device with efficient automated seamless migration of logical storage devices across multiple access protocols |
US11204699B2 (en) | 2020-03-05 | 2021-12-21 | EMC IP Holding Company LLC | Storage system port maintenance information sharing with host device |
US11397589B2 (en) | 2020-03-06 | 2022-07-26 | EMC IP Holding Company LLC | Snapshot transmission from storage array to cloud using multi-path input-output |
US11042327B1 (en) | 2020-03-10 | 2021-06-22 | EMC IP Holding Company LLC | IO operation cloning using change information sharing with a storage system |
US11265261B2 (en) | 2020-03-18 | 2022-03-01 | EMC IP Holding Company LLC | Access path management based on path condition |
US11368399B2 (en) | 2020-03-27 | 2022-06-21 | EMC IP Holding Company LLC | Congestion aware multipathing based on network congestion notifications |
US11080215B1 (en) | 2020-03-31 | 2021-08-03 | EMC IP Holding Company LLC | Host device providing automated prediction of change intervals to reduce adverse impacts on applications |
US11169941B2 (en) | 2020-04-09 | 2021-11-09 | EMC IP Holding Company LLC | Host device with automated connectivity provisioning |
US11366756B2 (en) | 2020-04-13 | 2022-06-21 | EMC IP Holding Company LLC | Local cached data coherency in host devices using remote direct memory access |
US11561699B2 (en) | 2020-04-24 | 2023-01-24 | EMC IP Holding Company LLC | Input-output path selection using switch topology information |
US11216200B2 (en) | 2020-05-06 | 2022-01-04 | EMC IP Holding Company LLC | Partition utilization awareness of logical units on storage arrays used for booting |
US11099754B1 (en) | 2020-05-14 | 2021-08-24 | EMC IP Holding Company LLC | Storage array with dynamic cache memory configuration provisioning based on prediction of input-output operations |
US11175828B1 (en) | 2020-05-14 | 2021-11-16 | EMC IP Holding Company LLC | Mitigating IO processing performance impacts in automated seamless migration |
US11012512B1 (en) | 2020-05-20 | 2021-05-18 | EMC IP Holding Company LLC | Host device with automated write throttling responsive to storage system write pressure condition |
US11023134B1 (en) | 2020-05-22 | 2021-06-01 | EMC IP Holding Company LLC | Addition of data services to an operating system running a native multi-path input-output architecture |
US11151071B1 (en) | 2020-05-27 | 2021-10-19 | EMC IP Holding Company LLC | Host device with multi-path layer distribution of input-output operations across storage caches |
US11226851B1 (en) | 2020-07-10 | 2022-01-18 | EMC IP Holding Company LLC | Execution of multipath operation triggered by container application |
US11256446B1 (en) | 2020-08-03 | 2022-02-22 | EMC IP Holding Company LLC | Host bus adaptor (HBA) virtualization aware multi-pathing failover policy |
US11157432B1 (en) | 2020-08-28 | 2021-10-26 | EMC IP Holding Company LLC | Configuration of block devices based on provisioning of logical volumes in a storage system |
US11916938B2 (en) | 2020-08-28 | 2024-02-27 | EMC IP Holding Company LLC | Anomaly detection and remediation utilizing analysis of storage area network access patterns |
US11392459B2 (en) | 2020-09-14 | 2022-07-19 | EMC IP Holding Company LLC | Virtualization server aware multi-pathing failover policy |
US11320994B2 (en) | 2020-09-18 | 2022-05-03 | EMC IP Holding Company LLC | Dynamic configuration change control in a storage system using multi-path layer notifications |
US11032373B1 (en) | 2020-10-12 | 2021-06-08 | EMC IP Holding Company LLC | Host-based bandwidth control for virtual initiators |
US11397540B2 (en) | 2020-10-12 | 2022-07-26 | EMC IP Holding Company LLC | Write pressure reduction for remote replication |
US11630581B2 (en) | 2020-11-04 | 2023-04-18 | EMC IP Holding Company LLC | Host bus adaptor (HBA) virtualization awareness for effective input-output load balancing |
US11397539B2 (en) | 2020-11-30 | 2022-07-26 | EMC IP Holding Company LLC | Distributed backup using local access |
US11543971B2 (en) | 2020-11-30 | 2023-01-03 | EMC IP Holding Company LLC | Array driven fabric performance notifications for multi-pathing devices |
US11204777B1 (en) | 2020-11-30 | 2021-12-21 | EMC IP Holding Company LLC | Boot from SAN operation support on multi-pathing devices |
US11385824B2 (en) | 2020-11-30 | 2022-07-12 | EMC IP Holding Company LLC | Automated seamless migration across access protocols for a logical storage device |
US11620240B2 (en) | 2020-12-07 | 2023-04-04 | EMC IP Holding Company LLC | Performance-driven access protocol switching for a logical storage device |
US11409460B2 (en) | 2020-12-08 | 2022-08-09 | EMC IP Holding Company LLC | Performance-driven movement of applications between containers utilizing multiple data transmission paths with associated different access protocols |
US11455116B2 (en) | 2020-12-16 | 2022-09-27 | EMC IP Holding Company LLC | Reservation handling in conjunction with switching between storage access protocols |
US11651066B2 (en) | 2021-01-07 | 2023-05-16 | EMC IP Holding Company LLC | Secure token-based communications between a host device and a storage system |
US11308004B1 (en) | 2021-01-18 | 2022-04-19 | EMC IP Holding Company LLC | Multi-path layer configured for detection and mitigation of slow drain issues in a storage area network |
US11494091B2 (en) | 2021-01-19 | 2022-11-08 | EMC IP Holding Company LLC | Using checksums for mining storage device access data |
US11449440B2 (en) | 2021-01-19 | 2022-09-20 | EMC IP Holding Company LLC | Data copy offload command support across multiple storage access protocols |
US11467765B2 (en) | 2021-01-20 | 2022-10-11 | EMC IP Holding Company LLC | Detection and mitigation of slow drain issues using response times and storage-side latency view |
US11386023B1 (en) | 2021-01-21 | 2022-07-12 | EMC IP Holding Company LLC | Retrieval of portions of storage device access data indicating access state changes |
US11640245B2 (en) | 2021-02-17 | 2023-05-02 | EMC IP Holding Company LLC | Logical storage device access in an encrypted storage environment |
US11755222B2 (en) | 2021-02-26 | 2023-09-12 | EMC IP Holding Company LLC | File based encryption for multi-pathing devices |
US11928365B2 (en) | 2021-03-09 | 2024-03-12 | EMC IP Holding Company LLC | Logical storage device access using datastore-level keys in an encrypted storage environment |
US11294782B1 (en) | 2021-03-22 | 2022-04-05 | EMC IP Holding Company LLC | Failover affinity rule modification based on node health information |
US11422718B1 (en) | 2021-05-03 | 2022-08-23 | EMC IP Holding Company LLC | Multi-path layer configured to provide access authorization for software code of multi-path input-output drivers |
US11550511B2 (en) | 2021-05-21 | 2023-01-10 | EMC IP Holding Company LLC | Write pressure throttling based on service level objectives |
US11625232B2 (en) | 2021-06-07 | 2023-04-11 | EMC IP Holding Company LLC | Software upgrade management for host devices in a data center |
US11526283B1 (en) | 2021-06-08 | 2022-12-13 | EMC IP Holding Company LLC | Logical storage device access using per-VM keys in an encrypted storage environment |
US11762588B2 (en) | 2021-06-11 | 2023-09-19 | EMC IP Holding Company LLC | Multi-path layer configured to access storage-side performance metrics for load balancing policy control |
US11954344B2 (en) | 2021-06-16 | 2024-04-09 | EMC IP Holding Company LLC | Host device comprising layered software architecture with automated tiering of logical storage devices |
US11750457B2 (en) | 2021-07-28 | 2023-09-05 | Dell Products L.P. | Automated zoning set selection triggered by switch fabric notifications |
US11625308B2 (en) | 2021-09-14 | 2023-04-11 | Dell Products L.P. | Management of active-active configuration using multi-pathing software |
US11586356B1 (en) | 2021-09-27 | 2023-02-21 | Dell Products L.P. | Multi-path layer configured for detection and mitigation of link performance issues in a storage area network |
US11656987B2 (en) | 2021-10-18 | 2023-05-23 | Dell Products L.P. | Dynamic chunk size adjustment for cache-aware load balancing |
US11418594B1 (en) | 2021-10-20 | 2022-08-16 | Dell Products L.P. | Multi-path layer configured to provide link availability information to storage system for load rebalancing |
US12001595B2 (en) | 2021-12-03 | 2024-06-04 | Dell Products L.P. | End-to-end encryption of logical storage devices in a Linux native multi-pathing environment |
US12001679B2 (en) | 2022-03-31 | 2024-06-04 | Dell Products L.P. | Storage system configured to collaborate with host device to provide fine-grained throttling of input-output operations |
US11620054B1 (en) | 2022-04-21 | 2023-04-04 | Dell Products L.P. | Proactive monitoring and management of storage system input-output operation limits |
US11983432B2 (en) | 2022-04-28 | 2024-05-14 | Dell Products L.P. | Load sharing of copy workloads in device clusters |
US11983429B2 (en) | 2022-06-22 | 2024-05-14 | Dell Products L.P. | Migration processes utilizing mapping entry timestamps for selection of target logical storage devices |
US12001714B2 (en) | 2022-08-16 | 2024-06-04 | Dell Products L.P. | Host device IO selection using buffer availability information obtained from storage system |
US11934659B1 (en) | 2022-09-28 | 2024-03-19 | Dell Products L.P. | Host background copy process with rate adjustment utilizing input-output processing pressure feedback from storage system |
US11989156B1 (en) | 2023-03-06 | 2024-05-21 | Dell Products L.P. | Host device conversion of configuration information to an intermediate format to facilitate database transitions |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7155715B1 (en) * | 1999-03-31 | 2006-12-26 | British Telecommunications Public Limited Company | Distributed software system visualization |
CN101217678A (zh) * | 2007-12-28 | 2008-07-09 | 华为技术有限公司 | 一种系统升级方法、系统及装置 |
CN102158923A (zh) * | 2010-02-12 | 2011-08-17 | 中兴通讯股份有限公司 | 一种单模业务连续实现方法和系统 |
CN102307113A (zh) * | 2007-12-28 | 2012-01-04 | 华为技术有限公司 | 一种系统升级方法、系统及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN201217678Y (zh) * | 2008-07-07 | 2009-04-08 | 河北上大再生资源科技有限公司 | 镍再生资源中间合金的熔炼净化处理炉 |
-
2013
- 2013-12-16 CN CN201310694593.1A patent/CN103677927B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7155715B1 (en) * | 1999-03-31 | 2006-12-26 | British Telecommunications Public Limited Company | Distributed software system visualization |
CN101217678A (zh) * | 2007-12-28 | 2008-07-09 | 华为技术有限公司 | 一种系统升级方法、系统及装置 |
CN102307113A (zh) * | 2007-12-28 | 2012-01-04 | 华为技术有限公司 | 一种系统升级方法、系统及装置 |
CN102158923A (zh) * | 2010-02-12 | 2011-08-17 | 中兴通讯股份有限公司 | 一种单模业务连续实现方法和系统 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020076512A1 (en) * | 2018-10-09 | 2020-04-16 | EMC IP Holding Company LLC | Migrating control of a multi-path logical device from a current mpio driver to a target mpio driver |
US11797312B2 (en) | 2021-02-26 | 2023-10-24 | EMC IP Holding Company LLC | Synchronization of multi-pathing settings across clustered nodes |
US11782611B2 (en) | 2021-04-13 | 2023-10-10 | EMC IP Holding Company LLC | Logical storage device access using device-specific keys in an encrypted storage environment |
US11822706B2 (en) | 2021-05-26 | 2023-11-21 | EMC IP Holding Company LLC | Logical storage device access using device-specific keys in an encrypted storage environment |
US11567669B1 (en) | 2021-12-09 | 2023-01-31 | Dell Products L.P. | Dynamic latency management of active-active configurations using multi-pathing software |
US11789624B1 (en) | 2022-05-31 | 2023-10-17 | Dell Products L.P. | Host device with differentiated alerting for single points of failure in distributed storage systems |
US11886711B2 (en) | 2022-06-16 | 2024-01-30 | Dell Products L.P. | Host-assisted IO service levels utilizing false-positive signaling |
US12032842B2 (en) | 2022-10-10 | 2024-07-09 | Dell Products L.P. | Host device with multi-path layer configured for alignment to storage system local-remote designations |
Also Published As
Publication number | Publication date |
---|---|
CN103677927A (zh) | 2014-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103677927B (zh) | 软件升级的方法及装置 | |
TWI765138B (zh) | 主機系統及其方法和加速模組 | |
US9134913B2 (en) | Methods and structure for improved processing of I/O requests in fast path circuits of a storage controller in a clustered storage system | |
CN104750658B (zh) | 辅助式一致共享存储器 | |
CN101206629B (zh) | 在运行的PCIe架构中热插/拔新组件的系统和方法 | |
CN101206621B (zh) | 迁移无状态虚拟功能的系统和方法 | |
CN101206623B (zh) | 迁移虚拟端点的系统和方法 | |
CN101981541B (zh) | 使用闪存和有限功能存储器控制器来引导电子设备 | |
CN100568881C (zh) | 用于选择存储群集以用来存取存储装置的方法和系统 | |
CN101102256B (zh) | 存储区域网系统以及在存储网络中确定数据路径的方法 | |
CN103559075B (zh) | 一种数据传输方法、装置和系统及内存装置 | |
KR100843495B1 (ko) | 부착된 컴퓨터 시스템의 파워 오프시 rfid 태그로서비스 데이터를 전송하는 방법 및 이를 위한 컴퓨터시스템 | |
CN108459988A (zh) | 持续性远程直接存储器存取 | |
CN100462947C (zh) | 用于实现卸载发起方功能的方法和系统 | |
CN102223394A (zh) | 远程直接存储设备访问 | |
KR20200078382A (ko) | 개시자 모드를 갖는 솔리드-스테이트 드라이브 | |
CN102984214B (zh) | 一种实现电信云中业务迁移的方法及装置 | |
CN106020938A (zh) | 虚拟智能平台管理接口(ipmi)卫星控制器和方法 | |
JP2013257893A (ja) | 分散型サーバーシステムにおいてバックアップマネージャを転送するメッセージ | |
CN103546529A (zh) | 集群中的虚拟共享存储 | |
CN105144105A (zh) | 用于可扩展的崩溃一致的快照操作的系统和方法 | |
CN105874442B (zh) | 计算机系统和计算机系统中端点设备访问的方法 | |
US20120284435A1 (en) | Zone group manager virtual phy | |
CN106533714A (zh) | 重新实例化虚拟网络功能的方法和装置 | |
CN102576329A (zh) | 存储区域网络中虚拟存储管理的主动-主动支持 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |