一种共享存储迁移系统、方法及电子设备和存储介质与流程

文档序号:28119389发布日期:2021-12-22 15:03阅读:68来源:国知局
一种共享存储迁移系统、方法及电子设备和存储介质与流程

1.本技术涉及存储技术领域,更具体地说,涉及一种共享存储迁移系统、方法及一种电子设备和一种计算机可读存储介质。


背景技术:

2.随着openstack云平台的大规模应用,客户在实际现场的使用场景范围也越来越广泛,集群之间的负载均衡已经成为影响物理资源高效应用的重要因素和迫在眉睫的新难题。
3.基于本地镜像进行热迁移;基于openstack实现跨集群资源迁移的方法,也是和上述专利一样需要创建镜像文件,应用范围较为受限;同时整个迁移流程需要人工参与,并不能实现真正的热迁移流程自动化;同时该专利针对分布式块存储是直接用镜像创建系统盘和数据盘,并进行替换,有可能造成在迁移过程中的数据丢失问题,
4.因此,如何实现共享存储跨集群的热迁移是本领域技术人员需要解决的技术问题。


技术实现要素:

5.本技术的目的在于提供一种共享存储迁移系统、方法及一种电子设备和一种计算机可读存储介质,实现了共享存储跨集群的热迁移。
6.为实现上述目的,本技术提供了一种共享存储迁移系统,包括云管平台、源集群和目标集群;
7.所述云管平台,用于向所述目标集群发送第一迁移命令;其中,所述第一迁移命令包括所述源集群中源主机的参数信息;
8.所述目标集群,用于基于所述第一迁移命令中的所述参数信息创建影子云主机,并将所述源主机的云硬盘挂载至所述影子云主机下;
9.所述云管平台,还用于监测到所述影子云主机创建成功后,向所述源集群发送第二迁移命令;
10.所述源集群,用于在接收到所述第二迁移命令后,向所述目标集群中物理宿主机进行热迁移。
11.其中,所述云管平台,还用于验证所述源集群和所述目标集群是否满足跨集群热迁移条件,若是,则执行向所述目标集群发送第一迁移命令的步骤。
12.其中,所述跨集群热迁移条件包括所述源集群和所述目标集群的物理宿主机均处于免密登录状态、所述源集群和所述目标集群的基本资源满足预设条件。
13.其中,所述目标集群,还用于验证自身的基本资源是否满足所述第一迁移命令中的所述参数信息,若是,则执行所述基于所述第一迁移命令中的所述参数信息创建影子云主机的步骤。
14.其中,所述云管平台,还用于监测所述影子云主机的创建过程,若监测到所述影子
云主机创建失败,则删除所述影子云主机。
15.其中,所述云管平台,还用于监测到所述源集群热迁移完成后,向所述目标集群发送迁移完成指令;
16.所述目标集群,还用于接收到所述迁移完成指令后,通知所述影子云主机检查是否完成迁移,若是,则将所述影子云主机作为实际运行的云主机。
17.其中,所述云管平台,还用于监测到所述影子云主机作为实际运行的云主机后,向所述源集群发送删除指令;
18.所述源集群,还用于接收到所述删除指令后,删除所述源云主机,释放所述源云主机的物理资源,并释放所述源云主机纳管的云硬盘。
19.为实现上述目的,本技术提供了一种共享存储迁移方法,包括:
20.云管平台向目标集群发送第一迁移命令;其中,所述第一迁移命令包括源集群中源主机的参数信息;
21.所述目标集群基于所述第一迁移命令中的所述参数信息创建影子云主机,并将所述源主机的云硬盘挂载至所述影子云主机下;
22.所述云管平台监测到所述影子云主机创建成功后,向所述源集群发送第二迁移命令;
23.所述源集群在接收到所述第二迁移命令后,向所述目标集群中物理宿主机进行热迁移。
24.为实现上述目的,本技术提供了一种电子设备,包括:
25.存储器,用于存储计算机程序;
26.处理器,用于执行所述计算机程序时实现如上述共享存储迁移系统中云管平台或源集群或目标集群执行的步骤。
27.为实现上述目的,本技术提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述共享存储迁移系统中云管平台或源集群或目标集群执行的步骤。
28.通过以上方案可知,本技术提供的一种共享存储迁移系统,包括云管平台、源集群和目标集群;所述云管平台,用于向所述目标集群发送第一迁移命令;其中,所述第一迁移命令包括所述源集群中源主机的参数信息;所述目标集群,用于基于所述第一迁移命令中的所述参数信息创建影子云主机,并将所述源主机的云硬盘挂载至所述影子云主机下;所述云管平台,还用于监测到所述影子云主机创建成功后,向所述源集群发送第二迁移命令;所述源集群,用于在接收到所述第二迁移命令后,向所述目标集群中物理宿主机进行热迁移。
29.本技术提供的共享存储迁移系统,云管平台向目标集群发送第一迁移指令,目标集群创建影子云主机,纳管源云主机上的云硬盘,该影子云主机与源云主机拥有相同的参数。待影子云主机完成创建成功之后,云管平台再向源集群发送第二迁移指令,完成云主机的跨集群热迁移。同时通过共享存储的方式,可以保证在热迁移过程中不会对云硬盘的数据进行迁移,对云硬盘的读写不会出现中断,极大减少迁移耗时和数据丢失的风险。本技术还公开了一种共享存储迁移方法及一种电子设备和一种计算机可读存储介质,同样能实现上述技术效果。
30.应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本技术。
附图说明
31.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
32.图1为根据一示例性实施例示出的一种共享存储迁移系统的结构图;
33.图2为根据一示例性实施例示出的一种共享存储迁移方法的流程图;
34.图3为根据一示例性实施例示出的一种电子设备的结构图。
具体实施方式
35.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。另外,在本技术实施例中,“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
36.本技术实施例公开了一种共享存储迁移系统,实现了共享存储跨集群的热迁移。
37.参见图1,根据一示例性实施例示出的一种共享存储迁移系统的结构图,如图1所示,包括云管平台10、源集群20和目标集群30;
38.在本实施例中,利用云管平台作为客户端同时管理多个集群,并对集群之间的迁移任务状态进行监测,同时云管平台也作为集群之间的通信模块,在迁移过程中可以将一个集群中的迁移过程信息通过url的方式发送给另外一个集群,实现集群之间的通信。
39.在具体实施中,用户通过云管平台(incloud manager)10在源集群20中选择一个待迁移的源云主机201进行跨集群热迁移,云管平台接收到用户的指令之后,会对源集群20和目标集群30进行验证是否满足跨集群热迁移条件,即所述云管平台,还用于验证所述源集群和所述目标集群是否满足跨集群热迁移条件,若是,则执行向所述目标集群发送第一迁移命令的步骤。其中,所述跨集群热迁移条件包括所述源集群和所述目标集群的物理宿主机均处于免密登录状态、所述源集群和所述目标集群的基本资源满足预设条件。
40.所述云管平台10,用于向所述目标集群30发送第一迁移命令;其中,所述第一迁移命令包括所述源集群20中源主机201的参数信息;
41.所述目标集群30,用于基于所述第一迁移命令中的所述参数信息创建影子云主机301,并将所述源主机的201云硬盘挂载至所述影子云主机301下;
42.在具体实施中,目标集群30接收到云管平台发送的第一迁移命令之后,对其中传递的参数信息进行验证,如果自身的基本资源不满足参数信息,则返回异常信息,云管平台会将本次迁移任务置为失败状态。如果自身的基本资源满足参数信息,则创建影子云主机
301。也即,所述目标集群30还用于验证自身的基本资源是否满足所述第一迁移命令中的所述参数信息,若是,则执行所述基于所述第一迁移命令中的所述参数信息创建影子云主机的步骤。由于第一迁移命令中包括所述源集群20中源主机201的参数信息,影子云主机的各项参数和源云主机保持一致,其中可以包括名称和uuid。
43.目标集群30的nova会通知neutron建立对应的网络端口,通知cinder将源云主机的云硬盘纳管到本集群中,纳管的云硬盘状态为managing,同时将纳管中的云硬盘挂载到影子云主机下。至此,影子云主机创建成功,状态为active,任务状态为pre_migrating。如果创建失败,则将影子云主机任务置为error。
44.云管平台会对整个热迁移流程进行实时监测,并通过对影子云主机状态进行查询,如果发现该影子云主机状态为error,则会删除影子云主机,并将迁移任务状态置为失败。也即,所述云管平台10还用于监测所述影子云主机的创建过程,若监测到所述影子云主机创建失败,则删除所述影子云主机。如果任务状态为pre_migarting,则会继续向源集群10发送第二迁移命令进行热迁移操作。
45.所述云管平台10,还用于监测到所述影子云主机301创建成功后,向所述源集群20发送第二迁移命令;
46.所述源集群10,用于在接收到所述第二迁移命令后,向所述目标集群30中物理宿主机进行热迁移。
47.在具体实施中,源集群10接收到云管平台发送的第二迁移命令,则会向目标集群20中物理宿主机进行热迁移,同时会将源云主机的任务状态置为migrating。迁移的前提条件必须保证两个集群中的所有物理宿主机处于免密登录状态。热迁移完成之后,将源云主机的任务状态置为migrated。同时通知cinder将源云主机中的挂载的云硬盘状态置为managed状态,即纳管完成。
48.作为一种优选实施方式,所述云管平台10还用于监测到所述源集群20热迁移完成后,向所述目标集群30发送迁移完成指令;所述目标集群30还用于接收到所述迁移完成指令后,通知所述影子云主机301检查是否完成迁移,若是,则将所述影子云主机301作为实际运行的云主机。
49.在具体实施中,云管平台10检测到源集群20中源云主机201状态为migrated,则说明源云主机已经迁移成功。云管平台10会向目标集群30发送迁移完成指令,通知影子云主机301检查是否已经完成迁移。若已完成迁移,则会将影子云主机301的任务置为none,影子云主机变301为实际运行的云主机。
50.作为一种优选实施方式,所述云管平台10还用于监测到所述影子云主机301作为实际运行的云主机后,向所述源集群20发送删除指令;所述源集群20还用于接收到所述删除指令后,删除所述源云主机201,释放所述源云主机201的物理资源,并释放所述源云主机201纳管的云硬盘。
51.在具体实施中,云管平台10检测到目标集群30中的目标云主机即影子云主机301的任务状态变为none,则会向源集群20下发删除指令,删除源云主机201,释放物理资源,同时通知cinder将纳管的云硬盘释放,此时可以保证云硬盘在两个集群中的唯一性,防止在另外一个集群中被误操作。
52.本技术实施例提供的共享存储迁移系统,云管平台向目标集群发送第一迁移指
令,目标集群创建影子云主机,纳管源云主机上的云硬盘,该影子云主机与源云主机拥有相同的参数。待影子云主机完成创建成功之后,云管平台再向源集群发送第二迁移指令,完成云主机的跨集群热迁移。同时通过共享存储的方式,可以保证在热迁移过程中不会对云硬盘的数据进行迁移,对云硬盘的读写不会出现中断,极大减少迁移耗时和数据丢失的风险。
53.下面对本技术实施例提供的一种共享存储迁移方法进行介绍,下文描述的一种共享存储迁移方法与上文描述的一种共享存储迁移系统可以相互参照。
54.参见图2,根据一示例性实施例示出的一种共享存储迁移方法的流程图,如图2所示,包括:
55.s101:云管平台向目标集群发送第一迁移命令;其中,所述第一迁移命令包括源集群中源主机的参数信息;
56.s102:所述目标集群基于所述第一迁移命令中的所述参数信息创建影子云主机,并将所述源主机的云硬盘挂载至所述影子云主机下;
57.s103:所述云管平台监测到所述影子云主机创建成功后,向所述源集群发送第二迁移命令;
58.s104:所述源集群在接收到所述第二迁移命令后,向所述目标集群中物理宿主机进行热迁移。
59.本技术实施例提供的共享存储迁移方法,云管平台向目标集群发送第一迁移指令,目标集群创建影子云主机,纳管源云主机上的云硬盘,该影子云主机与源云主机拥有相同的参数。待影子云主机完成创建成功之后,云管平台再向源集群发送第二迁移指令,完成云主机的跨集群热迁移。同时通过共享存储的方式,可以保证在热迁移过程中不会对云硬盘的数据进行迁移,对云硬盘的读写不会出现中断,极大减少迁移耗时和数据丢失的风险。
60.在上述实施例的基础上,作为一种优选实施方式,还包括:
61.所述云管平台验证所述源集群和所述目标集群是否满足跨集群热迁移条件,若是,则执行向所述目标集群发送第一迁移命令的步骤。
62.在上述实施例的基础上,作为一种优选实施方式,所述跨集群热迁移条件包括所述源集群和所述目标集群的物理宿主机均处于免密登录状态、所述源集群和所述目标集群的基本资源满足预设条件。
63.在上述实施例的基础上,作为一种优选实施方式,还包括:
64.所述目标集群验证自身的基本资源是否满足所述第一迁移命令中的所述参数信息,若是,则执行所述基于所述第一迁移命令中的所述参数信息创建影子云主机的步骤。
65.在上述实施例的基础上,作为一种优选实施方式,还包括:
66.所述云管平台监测所述影子云主机的创建过程,若监测到所述影子云主机创建失败,则删除所述影子云主机。
67.在上述实施例的基础上,作为一种优选实施方式,还包括:
68.所述云管平台监测到所述源集群热迁移完成后,向所述目标集群发送迁移完成指令;
69.所述目标集群接收到所述迁移完成指令后,通知所述影子云主机检查是否完成迁移,若是,则将所述影子云主机作为实际运行的云主机。
70.在上述实施例的基础上,作为一种优选实施方式,还包括:
71.所述云管平台监测到所述影子云主机作为实际运行的云主机后,向所述源集群发送删除指令;
72.所述源集群接收到所述删除指令后,删除所述源云主机,释放所述源云主机的物理资源,并释放所述源云主机纳管的云硬盘。
73.基于上述程序模块的硬件实现,且为了实现本技术实施例的方法,本技术实施例还提供了一种电子设备,图3为根据一示例性实施例示出的一种电子设备的结构图,如图3所示,电子设备包括:
74.通信接口1,能够与其它设备比如网络设备等进行信息交互;
75.处理器2,与通信接口1连接,以实现与其它设备进行信息交互,用于运行计算机程序时,执行上述一个或多个技术方案提供的共享存储迁移系统中云管平台或源集群或目标集群执行。而所述计算机程序存储在存储器3上。
76.当然,实际应用时,电子设备中的各个组件通过总线系统4耦合在一起。可理解,总线系统4用于实现这些组件之间的连接通信。总线系统4除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图3中将各种总线都标为总线系统4。
77.本技术实施例中的存储器3用于存储各种类型的数据以支持电子设备的操作。这些数据的示例包括:用于在电子设备上操作的任何计算机程序。
78.可以理解,存储器3可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom,read only memory)、可编程只读存储器(prom,programmable read

only memory)、可擦除可编程只读存储器(eprom,erasable programmable read

only memory)、电可擦除可编程只读存储器(eeprom,electrically erasable programmable read

only memory)、磁性随机存取存储器(fram,ferromagnetic random access memory)、快闪存储器(flash memory)、磁表面存储器、光盘、或只读光盘(cd

rom,compact disc read

only memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(ram,random access memory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(sram,static random access memory)、同步静态随机存取存储器(ssram,synchronous static random access memory)、动态随机存取存储器(dram,dynamic random access memory)、同步动态随机存取存储器(sdram,synchronous dynamic random access memory)、双倍数据速率同步动态随机存取存储器(ddrsdram,double data rate synchronous dynamic random access memory)、增强型同步动态随机存取存储器(esdram,enhanced synchronous dynamic random access memory)、同步连接动态随机存取存储器(sldram,synclink dynamic random access memory)、直接内存总线随机存取存储器(drram,direct rambus random access memory)。本技术实施例描述的存储器2旨在包括但不限于这些和任意其它适合类型的存储器。
79.上述本技术实施例揭示的方法可以应用于处理器2中,或者由处理器2实现。处理器2可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器2中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器2可以是通用处理器、dsp,或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件
等。处理器2可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本技术实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器3,处理器2读取存储器3中的程序,结合其硬件完成前述方法的步骤。
80.处理器2执行所述程序时实现本技术实施例的各个方法中的相应流程,为了简洁,在此不再赘述。
81.在示例性实施例中,本技术实施例还提供了一种存储介质,即计算机存储介质,具体为计算机可读存储介质,例如包括存储计算机程序的存储器3,上述计算机程序可由处理器2执行,以完成前述方法所述步骤。计算机可读存储介质可以是fram、rom、prom、eprom、eeprom、flash memory、磁表面存储器、光盘、或cd

rom等存储器。
82.本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
83.或者,本技术上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台电子设备(可以是个人计算机、服务器、或者网络设备等)执行本技术各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
84.以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1