在线迁移异构系统数据的方法、装置、设备和存储介质与流程

文档序号:13735703阅读:278来源:国知局
在线迁移异构系统数据的方法、装置、设备和存储介质与流程

本发明属于存储设备技术领域,特别是涉及在线迁移异构系统数据的方法、装置、设备和存储介质。



背景技术:

当前计算机存储系统普遍采用san存储系统,支持通过fc、ip等网络连接主机服务器提供块设备和存储服务,这种特点支持通过增加网络连接和存储系统来扩展更多块设备和容量。一个计算和存储业务系统随着业务增加会产生扩大存储容量、性能和功能,以及淘汰或替换旧存储系统的需求。对于新旧存储系统为异构系统,即不同厂商或者同一厂商的不同架构的系统,一般不支持不中断数据服务的迁移和替换,原因如下:在协议方面san存储实现了fcp/ip通信层、spc(scsiprimarycommand)、sbc(scsiblockcommand)等协议簇,在主机服务器端,识别一个scsi块设备的方法是通过发送inquiry命令查询块设备的id,同一个scsi块设备可通过不同fc、ip链路访问,通过块设备id来辨识是否为同一个设备的多个路径。为了避免不同厂商及同一个厂商同型号提供的scsi设备id相同造成主机端错误辨识和使用,scsi协议要求系统实现时应确保每台存储系统提供的每个scsi块设备的id是全球唯一的,这造成了不同的两台存储系统提供的scsi块设备id是不同的,主机端会识别为不同的块设备,无法在线透明地切换读写访问。

现有的迁移异构存储系统数据的通常做法是:先停止业务,然后连接新存储系统,再从主机端拷贝被替换存储的数据到新存储系统上,最后切换和恢复业务。对于支持第3方虚拟化功能的新存储系统,方法是:先停止业务,然后断开主机和旧存储系统连接,新存储系统连接旧存储,将旧存储系统的卷接管并映射给主机,主机连接新存储系统,恢复业务。可见上述方式都涉及主机业务的暂停和中断。



技术实现要素:

为解决上述问题,本发明提供了在线迁移异构系统数据的方法、装置、设备和存储介质,支持在线接管主机与异构存储系统的访问,实现在线接管和迁移,避免存储服务暂停,提高业务的连续性。

本发明提供的在线迁移异构系统数据的方法,包括:

将新存储系统连接至原存储系统,获取所述原存储系统的设备信息;

将所述新存储系统以scsitarget模式按照与所述原存储系统相同的设备信息映射到主机;

将所述新存储系统与所述主机之间的链路设置为活动链路,利用所述新存储系统实现所述原存储系统与所述主机之间的在线链路接管和切换;

将所述原存储系统中的数据在线迁移至所述新存储系统中。

优选的,在上述在线迁移异构系统数据的方法中,所述将新存储系统连接至原存储系统,获取所述原存储系统的设备信息为:

所述新存储系统以scsiinitiator的模式连接和登录所述原存储系统,通过reportlun、inquiry、read_capacity命令查询所述原存储系统的lun列表、厂商、产品id、逻辑单元id和容量信息。

优选的,在上述在线迁移异构系统数据的方法中,所述将所述新存储系统以scsitarget模式按照与所述原存储系统相同的设备信息映射到主机为:

将所述新存储系统中创建虚拟的scsi块设备,以scsitarget模式按照与所述原存储系统相同的逻辑单元id、厂商、产品id和容量信息映射到所述主机。

优选的,在上述在线迁移异构系统数据的方法中,所述将所述原存储系统中的数据在线迁移至所述新存储系统中之后,包括:

当业务暂停时,修改所述新存储系统的厂商、产品id、逻辑单元id和容量信息至默认值,恢复主机的业务。

本发明提供的在线迁移异构系统数据的装置,包括:

设备信息获取单元,用于将新存储系统连接至原存储系统,获取所述原存储系统的设备信息;

映射单元,用于将所述新存储系统以scsitarget模式按照与所述原存储系统相同的设备信息映射到主机;

设置单元,用于将所述新存储系统与所述主机之间的链路设置为活动链路,利用所述新存储系统实现所述原存储系统与所述主机之间的在线链路接管和切换;

迁移单元,用于将所述原存储系统中的数据在线迁移至所述新存储系统中。

优选的,在上述在线迁移异构系统数据的装置中,所述设备信息获取单元具体用于所述新存储系统以scsiinitiator的模式连接和登录所述原存储系统,通过reportlun、inquiry、read_capacity命令查询所述原存储系统的lun列表、厂商、产品id、逻辑单元id和容量信息。

优选的,在上述在线迁移异构系统数据的装置中,所述映射单元具体用于将所述新存储系统中创建虚拟的scsi块设备,以scsitarget模式按照与所述原存储系统相同的逻辑单元id、厂商、产品id和容量信息映射到所述主机。

优选的,在上述在线迁移异构系统数据的装置中,还包括:

修改单元,用于当业务暂停时,修改所述新存储系统的厂商、产品id、逻辑单元id和容量信息至默认值,恢复主机的业务。

本发明提供的一种在线迁移异构系统数据的设备,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现上面任一项所述在线迁移异构系统数据的方法的步骤。

本发明提供的一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上面任一项所述在线迁移异构系统数据的方法的步骤。

通过上述描述可知,本发明提供的上述在线迁移异构系统数据的方法、装置、设备和存储介质,由于该方法包括将新存储系统连接至原存储系统,获取所述原存储系统的设备信息;将所述新存储系统以scsitarget模式按照与所述原存储系统相同的设备信息映射到主机;将所述新存储系统与所述主机之间的链路设置为活动链路,利用所述新存储系统实现所述原存储系统与所述主机之间的在线链路接管和切换;将所述原存储系统中的数据在线迁移至所述新存储系统中,因此上述在线迁移异构系统数据的方法、装置、设备和存储介质支持在线接管主机与异构存储系统的访问,实现在线接管和迁移,避免存储服务暂停,提高业务的连续性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本申请实施例提供的第一种在线迁移异构系统数据的方法的示意图;

图2为本申请实施例提供的第一种在线迁移异构系统数据的装置的示意图;

图3为本申请实施例提供的一种在线迁移异构系统数据的设备的示意图。

具体实施方式

本发明的核心思想在于提供在线迁移异构系统数据的方法、装置、设备和存储介质,支持在线接管主机与异构存储系统的访问,实现在线接管和迁移,避免存储服务暂停,提高业务的连续性。

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本申请实施例提供的第一种在线迁移异构系统数据的方法如图1所示,图1为本申请实施例提供的第一种在线迁移异构系统数据的方法的示意图,该方法包括如下步骤:

s1:将新存储系统连接至原存储系统,获取所述原存储系统的设备信息;

需要说明的是,此时并不断开原存储系统与主机之间的连接,仍保持原存储系统与主机之间数据的传递,该步骤但不限于包括通过reportlun命令查询lun信息、通过inquiry命令查询厂商和产品id信息,通过read_capacity命令查询容量信息。

s2:将所述新存储系统以scsitarget模式按照与所述原存储系统相同的设备信息映射到主机;

正是由于新存储系统和原存储系统的id相同,因此主机不会将二者识别为不同的存储系统,从而为在线迁移数据的实现成为了可能。

s3:将所述新存储系统与所述主机之间的链路设置为活动链路,利用所述新存储系统实现所述原存储系统与所述主机之间的在线链路接管和切换;

在这种情况下,新存储系统支持原存储系统相同的目标端口组属性,这是通过inquiry命令结果返回的tpgs字段(targetportgroupsupport)来查询的,这包括:0表示不支持alua访问特性00b、1表示支持隐式的alua特性(implicitasymmetriclogicalunitaccess)、2表示支持显式的alua特性(explicitasymmetriclogicalunitaccess),3表示隐式和显式alua特性都支持。新存储系统对于来自主机的读写命令下发给原存储系统,即实际数据从原存储系统读写,然后将数据和结果应答给主机。对于目标端口组策略为隐式alua的情况,新存储系统应答主机的reporttargetportgroups命令时设置端口为优选的以及活动且优化的,即preferredtargetport(pref)字段值=1,asymmetricaccessstate字段值=0,这确保主机通过新存储系统的路径进行读写。当主机建立通过新存储系统进行读写的链路后,断开原存储系统与主机的链路,实现在线切换,具体地可以通过从原存储系统删除与主机的scsi块设备映射方式,或者断开与主机的专用fc链路。

s4:将所述原存储系统中的数据在线迁移至所述新存储系统中。

需要说明的是,正是由于上面步骤实现了新存储系统在线接管和转移原存储系统的io,因此可以实现在线迁移数据,该在线迁移过程与现有技术相同,此处不再赘述。

通过上述描述可知,本申请实施例提供的第一种在线迁移异构系统数据的方法,由于包括将新存储系统连接至原存储系统,获取所述原存储系统的设备信息;将所述新存储系统以scsitarget模式按照与所述原存储系统相同的设备信息映射到主机;将所述新存储系统与所述主机之间的链路设置为活动链路,利用所述新存储系统实现所述原存储系统与所述主机之间的在线链路接管和切换;将所述原存储系统中的数据在线迁移至所述新存储系统中,因此上述在线迁移异构系统数据的方法、装置、设备和存储介质支持在线接管主机与异构存储系统的访问,实现在线接管和迁移,避免存储服务暂停,提高业务的连续性。

本申请实施例提供的第二种在线迁移异构系统数据的方法,是在上述第一种在线迁移异构系统数据的方法的基础上,还包括如下技术特征:

所述将新存储系统连接至原存储系统,获取所述原存储系统的设备信息为:

所述新存储系统以scsiinitiator的模式连接和登录所述原存储系统,通过reportlun、inquiry、read_capacity命令查询所述原存储系统的lun列表、厂商、产品id、逻辑单元id和容量信息。

本申请实施例提供的第三种在线迁移异构系统数据的方法,是在上述第二种在线迁移异构系统数据的方法的基础上,还包括如下技术特征:

所述将所述新存储系统以scsitarget模式按照与所述原存储系统相同的设备信息映射到主机为:

将所述新存储系统中创建虚拟的scsi块设备,以scsitarget模式按照与所述原存储系统相同的逻辑单元id、厂商、产品id和容量信息映射到所述主机。

在这种情况下,主机的多路径软件查询新存储系统提供的lun,通过report_lun、inquiry、read_capacity获取厂商、产品型号、逻辑单元id、容量等信息,这些因素使主机多路径软件认为是和原存储系统中相同逻辑单元id的块设备的新路径,从而实现在线数据迁移。

本申请实施例提供的第四种在线迁移异构系统数据的方法,是在上述第一种至第三种在线迁移异构系统数据的方法中任一种的基础上,还包括如下技术特征:

所述将所述原存储系统中的数据在线迁移至所述新存储系统中之后,包括:

当业务暂停时,修改所述新存储系统的厂商、产品id、逻辑单元id和容量信息至默认值,恢复主机的业务。

具体的,完成原存储系统到新存储系统的数据迁移后,在业务允许暂停的情况下,新存储系统可修改块设备的厂商、产品型号、逻辑单元id,恢复到默认值,再恢复主机业务,而且数据迁移完成后可将新存储系统与原存储系统断开。

本申请实施例提供的第一种在线迁移异构系统数据的装置如图2所示,图2为本申请实施例提供的第一种在线迁移异构系统数据的装置的示意图,该装置包括:

设备信息获取单元201,用于将新存储系统连接至原存储系统,获取所述原存储系统的设备信息,需要说明的是,此时并不断开原存储系统与主机之间的连接,仍保持原存储系统与主机之间数据的传递,包括通过reportlun命令查询lun信息、通过inquiry命令查询厂商和产品id信息,通过read_capacity命令查询容量信息;

映射单元202,用于将所述新存储系统以scsitarget模式按照与所述原存储系统相同的设备信息映射到主机,正是由于新存储系统和原存储系统的id相同,因此主机不会将二者识别为不同的存储系统,从而为在线迁移数据的实现成为了可能;

设置单元203,用于将所述新存储系统与所述主机之间的链路设置为活动链路,利用所述新存储系统实现所述原存储系统与所述主机之间的在线链路接管和切换,在这种情况下,新存储系统支持原存储系统相同的目标端口组属性,这是通过inquiry命令结果返回的tpgs字段(targetportgroupsupport)来查询的,这包括:0表示不支持alua访问特性00b、1表示支持隐式的alua特性(implicitasymmetriclogicalunitaccess)、2表示支持显式的alua特性(explicitasymmetriclogicalunitaccess),3表示隐式和显式alua特性都支持。新存储系统对于来自主机的读写命令下发给原存储系统,即实际数据从原存储系统读写,然后将数据和结果应答给主机。对于目标端口组策略为隐式alua的情况,新存储系统应答主机的reporttargetportgroups命令时设置端口为优选的以及活动且优化的,即preferredtargetport(pref)字段值=1,asymmetricaccessstate字段值=0,这确保主机通过新存储系统的路径进行读写。当主机建立通过新存储系统进行读写的链路后,断开原存储系统与主机的链路,实现在线切换,具体地可以通过从原存储系统删除与主机的scsi块设备映射方式,或者断开与主机的专用fc链路;

迁移单元204,用于将所述原存储系统中的数据在线迁移至所述新存储系统中,需要说明的是,正是由于实现了新存储系统在线接管和转移原存储系统的io,因此可以实现在线迁移数据。

本申请实施例提供的第二种在线迁移异构系统数据的装置,是在上述第一种在线迁移异构系统数据的装置的基础上,还包括如下技术特征:

所述设备信息获取单元具体用于所述新存储系统以scsiinitiator的模式连接和登录所述原存储系统,通过reportlun、inquiry、read_capacity命令查询所述原存储系统的lun列表、厂商、产品id、逻辑单元id和容量信息。

本申请实施例提供的第三种在线迁移异构系统数据的装置,是在上述第二种在线迁移异构系统数据的装置的基础上,还包括如下技术特征:

所述映射单元具体用于将所述新存储系统中创建虚拟的scsi块设备,以scsitarget模式按照与所述原存储系统相同的逻辑单元id、厂商、产品id和容量信息映射到所述主机。

在这种情况下,主机的多路径软件查询新存储系统提供的lun,通过report_lun、inquiry、read_capacity获取厂商、产品型号、逻辑单元id、容量等信息,这些因素使主机多路径软件认为是和原存储系统中相同逻辑单元id的块设备的新路径,从而实现在线数据迁移。

本申请实施例提供的第四种在线迁移异构系统数据的装置,是在上述第一种至第三种在线迁移异构系统数据的装置中任一种的基础上,还包括如下技术特征:

还包括:

修改单元,用于当业务暂停时,修改所述新存储系统的厂商、产品id、逻辑单元id和容量信息至默认值,恢复主机的业务。

具体的,完成原存储系统到新存储系统的数据迁移后,在业务允许暂停的情况下,新存储系统可修改块设备的厂商、产品型号、逻辑单元id,恢复到默认值,再恢复主机业务,而且数据迁移完成后可将新存储系统与原存储系统断开。

本申请实施例提供的一种在线迁移异构系统数据的设备如图3所示,图3为本申请实施例提供的一种在线迁移异构系统数据的设备的示意图,该设备包括:

存储器301,用于存储计算机程序;

处理器302,用于执行所述计算机程序时实现上面任一项所述在线迁移异构系统数据的方法的步骤。

除了上述存储器和处理器之外,还包括主机适配卡,如网卡、fibrechannel卡等用于连接第三方存储系统和连接主机服务器。

本申请实施例提供的一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上面任一项所述在线迁移异构系统数据的方法的步骤。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1