CN116820332A - 数据迁移方法及装置 - Google Patents
数据迁移方法及装置 Download PDFInfo
- Publication number
- CN116820332A CN116820332A CN202310658978.6A CN202310658978A CN116820332A CN 116820332 A CN116820332 A CN 116820332A CN 202310658978 A CN202310658978 A CN 202310658978A CN 116820332 A CN116820332 A CN 116820332A
- Authority
- CN
- China
- Prior art keywords
- target data
- cloud server
- migration
- disk
- migrated
- 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.)
- Pending
Links
- 230000005012 migration Effects 0.000 title claims abstract description 276
- 238000013508 migration Methods 0.000 title claims abstract description 276
- 238000000034 method Methods 0.000 title claims abstract description 93
- 230000000977 initiatory effect Effects 0.000 claims abstract description 16
- 230000004044 response Effects 0.000 claims abstract description 12
- 230000008569 process Effects 0.000 claims description 46
- 230000008859 change Effects 0.000 claims description 15
- 230000036961 partial effect Effects 0.000 claims description 13
- 238000012790 confirmation Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 230000002411 adverse Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 4
- 230000002829 reductive effect Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000007704 transition Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 239000003999 initiator Substances 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0674—Disk device
- G06F3/0676—Magnetic disk device
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本说明书一个或多个实施例提供一种数据迁移方法及装置。该方法可以包括:响应于针对第一设备中部署的云服务器发起的迁移启动指令,确定第一磁盘中存储的目标数据,所述云服务器基于所述目标数据运行,所述第一磁盘被装配于所述第一设备中;在维持所述云服务器正常运行的同时将所述目标数据迁移至第二磁盘,并在迁移进度满足停机条件的情况下关闭所述云服务器,所述第二磁盘被装配于第二设备中;在所述目标数据被全部迁移至所述第二磁盘的情况下,在所述第二设备中重启所述云服务器,重启完成的所述云服务器基于被迁移至所述第二磁盘中的所述目标数据运行。
Description
技术领域
本说明书一个或多个实施例涉及云计算领域,尤其涉及一种数据迁移方法及装置。
背景技术
在云(Cloud)计算场景下,可以通过云服务器为用户提供计算、存储等云服务。云服务器通常被部署在物理机上,其运行过程涉及的相关数据即被存储在物理机的本地磁盘中,以便云服务器访问。在云计算服务的架构调整、物理机所在机房调整、用户的云计算需求变化等情况下,往往需要将云服务器及其相关数据迁移至其他物理机。
现阶段的迁移方式,按照迁移过程中是否需要关闭云服务器,可分为“热迁移(Live Migration)”和“冷迁移(Cold Migration)”两类。
就冷迁移而言,相关技术通常在关闭云服务器之后将其相关数据逐一迁移至新物理机中的新磁盘;在完成数据迁移后,在新物理机中重启云服务器并由其访问迁移完成的相关数据。
发明内容
有鉴于此,本说明书一个或多个实施例提供一种数据迁移方法及装置。
为实现上述目的,本说明书一个或多个实施例提供技术方案如下:
根据本说明书一个或多个实施例的第一方面,提出了一种数据迁移方法,包括:
响应于针对第一设备中部署的云服务器发起的迁移启动指令,确定第一磁盘中存储的目标数据,所述云服务器基于所述目标数据运行,所述第一磁盘被装配于所述第一设备中;
在维持所述云服务器正常运行的同时将所述目标数据迁移至第二磁盘,并在迁移进度满足停机条件的情况下关闭所述云服务器,所述第二磁盘被装配于第二设备中;
在所述目标数据被全部迁移至所述第二磁盘的情况下,在所述第二设备中重启所述云服务器,重启完成的所述云服务器基于被迁移至所述第二磁盘中的所述目标数据运行。
根据本说明书一个或多个实施例的第二方面,提出了一种数据迁移装置,包括:
确定单元,用于响应于针对第一设备中部署的云服务器发起的迁移启动指令,确定第一磁盘中存储的目标数据,所述云服务器基于所述目标数据运行,所述第一磁盘被装配于所述第一设备中;
迁移单元,用于在维持所述云服务器正常运行的同时将所述目标数据迁移至第二磁盘,并在迁移进度满足停机条件的情况下关闭所述云服务器,所述第二磁盘被装配于第二设备中;
重启单元,用于在所述目标数据被全部迁移至所述第二磁盘的情况下,在所述第二设备中重启所述云服务器,重启完成的所述云服务器基于被迁移至所述第二磁盘中的所述目标数据运行。
根据本说明书一个或多个实施例的第三方面,提出了一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器通过运行所述可执行指令以实现如第一方面中任一项所述的方法。
根据本说明书一个或多个实施例的第四方面,提出了一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如第一方面中任一项所述方法的步骤。
根据本说明书一个或多个实施例的第五方面,提出了一种计算机程序产品,包括计算机程序和/或指令,所述计算机程序和/或指令被处理器执行时实现如第一方面中任一项所述的方法。
在上述实施例中,云服务器的管理系统响应于针对第一设备中部署的基于目标数据运行的云服务器发起的迁移启动指令,先确定第一磁盘(即第一设备的本地磁盘)中存储的所述目标数据;然后在维持所述云服务器正常运行的同时将所述目标数据迁移至第二磁盘(即第二设备的本地磁盘),并在迁移进度满足停机条件的情况下关闭所述云服务器;进而在所述目标数据被全部迁移至所述第二磁盘的情况下,在所述第二设备中重启所述云服务器,重启完成的所述云服务器基于被迁移至所述第二磁盘中的所述目标数据运行。
可见,相对于相关技术中的冷迁移方案而言,本方案将目标数据的迁移过程前置,即在第一设备中部署的云服务器尚未关闭时(尚在正常工作)就开始异步迁移目标数据,并在确定迁移进度满足停机条件时才关闭云服务器并在第二设备中重启新的云服务器。显然,本方案在原云服务器正常工作时即可迁移完成至少部分目标数据,使得第一设备中的云服务器关闭时刻与第二设备中的云服务器重启时刻之前的间隔时长较短,有效缩短了云服务器的停机时长(即云服务的不可用时长),从而降低了冷迁移过程对用户使用的不利影响。
附图说明
图1是一示例性实施例提供的一种云服务系统的架构示意图。
图2是一示例性实施例提供的一种数据迁移方法的流程图。
图3是一示例性实施例提供的一种数据迁移过程中的状态转换图。
图4是一示例性实施例提供的一种设备的结构示意图。
图5是一示例性实施例提供的一种装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书一个或多个实施例相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书一个或多个实施例的一些方面相一致的装置和方法的例子。
需要说明的是:在其他实施例中并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤。在一些其他实施例中,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其他实施例中可能被分解为多个步骤进行描述;而本说明书中所描述的多个步骤,在其他实施例中也可能被合并为单个步骤进行描述。
如背景技术部分所述,相关技术中的冷迁移方案,需要在原云服务器关机后迁移数据,并在全部数据都迁移完成后再重启新的云服务器,所以在需要迁移的数据较多(即数据量较大)的情况下,可能需要较长时间(如数小时甚至数天)才能完成数据迁移,而云服务在这段时间内将不可用,从而影响用户对云服务的正常使用。
对此,本说明书提出一种新的数据迁移方案,以在实现对云服务器及其相关的目标数据进行冷迁移的同时,尽可能的减少云服务器的停机时长,提升云服务的可用性。下面结合附图及相关实施例对本方案进行详细说明。
图1是一示例性实施例提供的一种云服务系统的架构示意图。如图1所示,该系统包括服务器集群10、网络15和若干终端设备、如台式电脑16和台式电脑17等;其中,服务器集群10中包含相互连接的多台物理机,如物理机11、物理机12、物理机13和物理机14等,各个物理机分别装配有相应的本地磁盘。所述物理机例如可以为物理服务器等。
服务器集群10中可以包含任意数量的物理机,各个物理机被部署分别有相应的本地磁盘。其中,任一物理机本地可以装配至少一个本地磁盘,所述本地磁盘是指安装于该物理机主板上,不可随意插拔或移动的、用于存储数据的磁盘。另外,任一物理机中可以部署一个或多个云服务器,这些云服务器运行期间涉及的相关数据可以被存储在该物理机的本地磁盘中,其中任一云服务器的相关数据可以被存储在至少一个本地磁盘中。任一云服务器可以为其所在物理机中运行的云服务器实例,该实例可以调用该物理机的资源、存储和网络等资源实现相应的任务。各个物理机中分别部署的各个云服务器,可以由云服务器的管理系统进行管理和调度,以便向访问云服务器的用户提供相应的云服务。可见,所述服务器集群10也可以视为由其中各个物理机上分别部署的云服务器构成的集群,不再赘述。类似的,所述云服务系统可以包含任意数量的终端设备。台式电脑16~17只是相应用户(图中未示出)可以使用的一种类型的电子设备。实际上,用户显然还可以使用诸如下述类型的电子设备:手机、平板设备、笔记本电脑、掌上电脑(PDAs,Personal Digital Assistants)、可穿戴设备(如智能眼镜、智能手表等)、VR(Virtual Reality,虚拟现实)设备、AR(AugmentedReality,增强现实)设备等,本说明书对于所述云服务系统包含的终端设备的数量以及类型并不进行限制。网络15可以包括多种类型的有线或无线网络。
在图1所示的云服务系统中,服务器集群10可以向终端设备提供云服务。示例性的,普通用户User1可以使用台式电脑16通过网络15访问服务器集群10,进而登录该集群中某一物理机上部署的云服务器。其中,台式电脑16中可以运行有云服务对应的客户端(下称云客户端),登录操作即可通过该云客户端实现;而且该用户需要拥有针对该云服务器的登录权限。如User1可以预先租用某一云服务器,以获取针对该云服务器的使用权限,此后即可通过预设的账户信息(用户名和密码等)登录该云服务器,以享受该云服务器提供的云计算服务。另外,云服务系统的操作人员Operater1可以使用台式电脑17通过网络15访问服务器集群10,进而登录云服务系统的操作/管理界面。其中,台式电脑17中可以运行有云服务对应的管理客户端(简称管理端),上述登录操作即可通过该管理端实现;而且Operater1同样需要拥有针对该云服务系统的登录权限(属于管理权限的一部分)。对于所述云客户端和管理客户端中的任一客户端而言,该客户端的应用程序可以被预先安装在终端设备上,使得该客户端可以在终端设备上被启动并运行;当然,当用诸如HTML5技术的在线“客户端”时,无需在终端设备上安装相应的应用程序,即可获得并运行该客户端。
本说明书所述的冷迁移过程,包括将任一云服务器从其所在的第一设备中迁移至第二设备,即在第一设备中关闭该云服务器并在第二设备中重启该云服务器;以及,包括将所述云服务的相关数据(即下述目标数据)从第一磁盘(即第一设备的本地磁盘)迁移至第二磁盘(即第二设备的本地磁盘)。如图1所示,不妨假设第一设备和第二设备分别为物理机11和物理机12,相应的,第一磁盘和第二磁盘即为物理机11的本地磁盘(下称磁盘11)和物理机12的本地磁盘(下称磁盘12)。
通过本说明书所述的冷迁移方案,可以将运行在物理机11中的云服务器(下称原云服务器)迁移至物理机12(下称新云服务器),并将磁盘11中存储的原云服务器所依赖的目标数据迁移至磁盘12中。可以理解的是,在迁移之前:原云服务器可以基于磁盘11中存储的目标数据运行;在迁移之后:(物理机12中运行的)新云服务器可以基于磁盘12中存储的(从磁盘11迁移来的)目标数据运行。
图2是一示例性实施例提供的一种数据迁移方法的流程图。如图2所示,该方法可以应用于云服务器的管理系统,可以包括以下步骤:
步骤202,响应于针对第一设备中部署的云服务器发起的迁移启动指令,确定第一磁盘中存储的目标数据,所述云服务器基于所述目标数据运行,所述第一磁盘被装配于所述第一设备中。
本说明书所述的迁移启动指令对应的云服务器(即待迁移的云服务器)可以为服务器集群中部署的任一云服务器。在本说明书所述冷迁移方案中,通过关闭原云服务器和重启新云服务器的方式实现对云服务器的迁移:在迁移之前,待迁移的云服务器被部署于(即运行于)第一设备中;在迁移完成(即重启完成)后,新的云服务器被部署于(即运行于)第二设备中。以及,通过数据拷贝的方式实现对所述云服务器对应的目标数据的迁移,即将第一磁盘中存储的目标数据拷贝至第二磁盘中:在迁移之前,目标数据被存储在第一磁盘中;在迁移完成后,拷贝完成的所述目标数据被存储在第二磁盘中。
如前所述,本说明书所述的迁移之前的原云服务器(即在第一设备中被关闭的云服务器)和迁移之后的新云服务器(即在第二设备中重启的云服务器),都是云服务器实例。需要说明的是,所述原云服务器和新云服务器具有相同的运行逻辑,二者区别仅在于实例自身的部署位置和实例所依赖目标数据的存储位置不同。可见,所述原云服务器和新云服务器实质上是同一云服务器的不同副本;相应的,第一磁盘和第二磁盘中分别存储的目标数据(即迁移前后的目标数据)则可以视为该云服务器所依赖目标数据的不同副本。
其中,所述第二设备区别于第一设备,所述第二磁盘区别于第一磁盘。具体而言,第一磁盘被装配于第一设备中,即第一磁盘是第一设备的本地磁盘;第二磁盘被装配于第二设备中,即第二磁盘是第二设备的本地磁盘。可以理解的是,本地磁盘能够为云服务器提供本地存储访问能力,并具有低时延、高随机IOPS(Input/Output Per Second,每秒输入输出量或每秒读写次数)、高吞吐量和高性价比等优势。
所述迁移启动指令用于触发针对云服务器和所述目标数据的迁移,该指令可以通过多种方式发起。作为一示例性实施例,所述云服务器的普通用户(即登录并使用云服务器的用户,如前述User1)可以主动发起迁移任务,即通过自身使用的云客户端发起所述迁移启动指令。示例性的,就至少一个性能指标而言,第二设备的性能参数可以与第一设备的性能参数不同;和/或,第二磁盘的性能参数可以与第一磁盘的性能参数不同。如用户可以在第一设备的计算性能强于第二设备;和/或第一磁盘的读/写性能强于第二磁盘的情况下发起所述迁移启动指令,此时迁移之后的云服务器运行性能通常会弱于迁移之前,因此云服务器的管理系统可以向该用户分配相应数量的权益,如收取更少的云服务器租用费用;和/或(在不额外付费的情况下)延长其对云服务器的可用时长等。再如,用户也可以在第一设备的计算性能弱于第二设备;和/或第一磁盘的读/写性能弱于第二磁盘的情况下发起所述迁移启动指令,此时迁移之后的云服务器运行性能通常会强于迁移之前,因此云服务器的管理系统可以向该用户收取更高的云服务器租用费用;和/或(在不改变收费的情况下)缩短其对云服务器的可用时长等。通过上述方式,可以由用户根据自身需求选取性能优先还是(资费等)权益优先,实现权益换性能的效果,以尽量满足用户在不同场景下的多种需求。
作为另一示例性实施例,除了云服务器的普通用户之外,所述云服务系统可能还涉及云服务器的管理系统(该管理系统可以为所述云服务系统的子系统)的操作人员(如前述Operater1),该操作人员具体可以为所述服务器集群的管理员或运维人员等。对此,可以由所述管理系统的操作人员通过管理端发起所述迁移启动指令,从而根据对服务器集群的管理需求灵活发起迁移任务,有助于所述操作人员对服务器集群的高效管理。或者,也可以由所述管理系统按照预设的迁移计划自动发起,而该迁移计划可以由前述操作人员预先指定,有助于实现对迁移任务的定时发起和自动化迁移,提升服务器集群的自动化管理程度。
响应于针对任一云服务器发起的前述迁移启动指令,云服务器的管理系统可以确定第一磁盘中存储的、供该云服务器访问的目标数据。其中,所述目标数据可以为该云服务器的用户上传至云端的个人数据、云服务器运行过程中产生的数据(配置数据、运算结果等)、该云服务器从其他云服务器接收到的数据等,不再赘述。其中,本说明书所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和目标数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
可以理解的是,所述云服务器自身或者该管理系统可以维护有该云服务器与所述目标数据之前的对应关系,如所述云服务器可以维护有自身所对应相关数据的存储地址,从而云服务器的管理系统可以根据该存储地址将所述相关数据确定为待迁移的目标数据。
步骤204,在维持所述云服务器正常运行的同时将所述目标数据迁移至第二磁盘,并在迁移进度满足停机条件的情况下关闭所述云服务器,所述第二磁盘被装配于第二设备中。
如前所述,迁移启动指令可能并非由所述云服务器的用户发起,鉴于待迁移的云服务器和目标数据均为该用户可以使用的云端资源,而且后续迁移过程需要云服务器终端一段时间,所以为确保用户充分知晓迁移任务,可以向所述用户输出针对所述目标数据的迁移通知消息,如通过所述用户使用的云客户端展示应用内消息、向用户预留的邮箱发送邮件、向用户预留的手机发送短信等。其中,所述迁移通知消息中可以包含所述云服务器和/或迁移任务的相关信息。在阅读上述迁移通知消息后,所述用户可以决定是否执行所述迁移任务,并在决定执行的情况下向云服务器的管理系统返回相应的确认消息,如可以直接点击迁移通知消息中的“确认”按钮以进行确认,而所述云服务器的管理系统可以在接收到该确认消息的情况下,将所述目标数据迁移至第二磁盘。通过该方式,可以确保迁移任务的执行过程已经经过用户的充分确认,从而避免后续可能产生的权责问题。
鉴于目标数据的迁移过程需要一定时长,可以先确定相应的迁移时间段,然后在该迁移时间段内将所述目标数据迁移至第二磁盘,以确保迁移任务在该时间段内完成,避免迁移任务的执行过程对该时间段之外的正常运行产生不利影响。其中,所述迁移时间段可以通过下述之一的方式确定:例如,所述迁移启动指令的发起方(如所述云服务器的用户、所述云服务器的管理系统的操作人员等)可以在发起该指令之前确定所述迁移时间段,并将该时间段记录在迁移启动指令中告知管理系统。再例如,所述迁移启动指令中还可以包含迁移截止时刻,此时云服务器的管理系统可以根据所述目标数据的预期迁移耗时确定迁移时间段,所述迁移时间段的结束时刻可以不晚于该迁移截止时刻,所述迁移截止时刻可以为任一时刻。示例性的,TT的用户在发起所述迁移启动指令之前,可以先根据自身对云服务器的使用计划确定迁移截止时刻,如在用户习惯每日凌晨6:00登录云服务器的情况下,其可以确定迁移截止时刻为2023年5月31日凌晨6:00;基于此,若目标数据的预期迁移耗时为4h(小时),则云服务器的管理系统可以在2023年5月31日凌晨2:00之前开始迁移目标数据,以确保在凌晨6:00之前完成迁移。当然,在目标数据的总量较多的情况下,也可以将全部目标数据划分为多份,并在多个迁移时间段内分别迁移相应部分的目标数据,此时只需要确保(时间顺序上的)最后一个迁移时间段的结束时刻不晚于所述迁移截止时刻即可,以便于更灵活地迁移全部目标数据。通过该方式,可以避免迁移过程对用户正常使用云服务器造成不利影响。
又例如,云服务器的管理系统还可以根据历史迁移记录预测空闲时间段,并根据所述目标数据的预期迁移耗时在所述空闲时间段内确定迁移时间段。所述历史迁移记录为某些云服务器在本次迁移之前进行迁移时产生的历史记录。其中,可以将所述迁移启动指令针对的所述云服务器在本次迁移之前进行迁移时产生的历史记录作为确定迁移时间段的历史迁移记录。此时,根据该历史迁移记录预测的空闲时间段即符合该云服务器本身所对应用户的使用习惯,以便尽量在该云服务器的空闲时间段内进行迁移,从而减少对该用户正常使用云服务器造成的影响。或者,考虑到迁移过程不仅涉及被迁移的云服务器,还可能需要占用服务器集群的公共资源,所以为了尽量减少迁移过程对该集群整体(包括多个云服务器)正常运行的不利影响,也可以将服务器集群中在当前时刻之前发生历史迁移的全部云服务器的历史记录作为所述历史迁移记录。此时,根据该历史迁移记录预测的空闲时间段符合该集群中大部分云服务器的运行规律,以便尽量在这些云服务器的空闲时间段内进行迁移,从而可以在减少对这些云服务器正常运行所造成影响的同时,尽可能多的占用公共资源,以提升所述云服务器及其目标数据的迁移效率。示例性的,在根据历史迁移记录预测出空闲时间段为周一至周五的晚上22:00-次日凌晨7:00以及周六至日的晚上24:00-次日凌晨6:00的情况下,若所述目标数据的预期迁移耗时为14h,则可以将周五晚上22:00-周六凌晨7:00(共9h)和周六晚上24:00-周日凌晨5:00(共5h)确定为迁移时间段,并在该时间段内完成目标数据的迁移。可以理解的是,通过该方式确定的迁移时间段处于空间时间段内,从而在云服务器处于相对空闲的时间段内完成目标数据的迁移,尽可能避免迁移过程对云服务器的正常运行造成干扰。
在上述实施例中,所述预期迁移耗时即为迁移所述目标数据需要总消耗时间的估计值。可以理解的是,所述预期迁移耗时与云服务器的管理系统的当前负载或者所述云服务器的当前资源占用情况有关,因此不同时间段的预期迁移耗时可能不同。在方案实施时,可以根据实际情况及适当算法合理确定所述目标数据的预期迁移耗时,不再赘述。
可以理解的是,将目标数据由第一磁盘迁移至第二磁盘的过程,就是将第一磁盘中存储的目标数据拷贝后写入第二磁盘,该写入过程通常需要消耗一定的时间,若在写入目标数据的过程中第二磁盘中还被写入其他数据,则可能导致被写入的全部目标数据之间不连续,从而对迁移完成后目标数据的读取过程造成不利影响(读取不连续存储的数据时,数据寻址时间通常较长)。对此,可以通过预占存储空间的方式加以解决,如在将所述目标数据迁移至所述第二磁盘之前,可以先在所述第二磁盘的可用存储空间中占据满足所述目标数据的数据量的目标存储空间,然后将所述目标数据迁移至该目标存储空间;其中,可以控制被占据的所述目标存储空间无法被写入区别于所述目标数据的其他数据,以避免其他数据的写入过程及后续读取过程对目标数据造成干扰。另外,所述目标存储空间满足所述目标数据的数据量,即所述目标存储空间不小于存储所述目标数据所需的全部存储空间。当然,为了进一步确保目标数据连续,可以在第二磁盘的可用存储空间中预先占据连续且满足所述目标数据的数据量的目标存储空间。
将目标数据从第一磁盘迁移至第二磁盘,通常需要消耗一定的带宽等网络资源;而云服务器的用户在正常使用云服务器的过程中通常也需要消耗一定的网络资源。鉴于在迁移所述目标数据的过程中第一设备中的云服务器尚未关闭(即还在正常运行),所以为了避免迁移过程占用过多的网络资源而导致云服务器运行出现异常(如卡顿、数据传输失败等),可以先预测所述云服务器正常运行所需的运行网络资源,然后调用所述云服务器的可用网络资源中除所述运行网络资源之外的剩余网络资源将所述目标数据迁移至所述第二磁盘;换言之,将所述目标云服务器对应的全部可用网络资源分为(正常运行所需的)运行网络资源和其他网络资源两部分:所述运行网络资源被所述云服务器在正常运行时使用,以避免对该云服务器的正常运行造成干扰,而剩余的其他网络资源则被用于迁移目标数据。该方式可以在确保云服务器正常运行的同时,使用剩余的网络资源尽快迁移目标数据。或者,在云服务器的管理系统管理有可以灵活分配的网络资源的情况下,也可以为所述云服务器分配与所述云服务器所登录账户的账户等级相对应的网络资源,并调用该网络资源将所述目标数据迁移至所述第二磁盘。其中,所述云服务器所登录账户可以为该云服务器的用户的个人账户或企业账户等,该账户可以被划分有相应的账户等级,不同的账户登记可以对应于不同数量的(可灵活分配的)网络资源。与账户等级相对应的网络资源,其数量可以与账户等级正常相关,如初级账户可分配0M带宽(即不可分配)、一级账户可分配10M带宽、二级账户可分配100M带宽等,不再赘述。通过该方式,可以为账户等级较高的账户分配相对更多的网络资源、并为账户等级较低的账户分配相对更少的网络资源,从而在数据迁移的过程中体现出不同账户等级的资源使用优先级,确保不同用户享受到对应于其账户等级的数据迁移体验。
由于在迁移所述目标数据的过程中第一设备中的云服务器尚未关闭(即还在正常运行),所以迁移期间可能存在部分目标数据发生变更,其中任一目标数据可能发生一次甚至多次变更。对此,云服务器的管理系统可以采用下述方式之一进行迁移,以确保发生变更的部分目标数据也能够被准确迁移。例如,在将所述目标数据迁移至所述第二磁盘时,可以将全部所述目标数据迁移至所述第二磁盘,并为其中发生变更的部分目标数据添加待更新标记。其中,对于第一磁盘中发生变更的任一目标数据,该待更新标记可以添加在第一磁盘中存储的该数据上;或者也可以添加在被拷贝至第二磁盘中的该数据上;再或者,管理系统也可以在维护的数据标识集合中记录发生变更的部分目标数据的数据标识,以通过该数据标识对发生变更的部分目标数据进行标记。进一步的,在关闭所述第一设备中的所述云服务器的情况下,可以使用所述第一磁盘中变更后的部分目标数据更新所述待更新标记指示的所述第二磁盘中存储的相应部分目标数据。其中,第一磁盘中变更后的部分目标数据应当理解为这部分目标数据在最近一次变更后的最新值,而所述第二磁盘中存储的相应部分目标数据即为这部分目标数据在最近一次变更前(甚至首次变更前)的原始值,因此通过上述更新可以将第二磁盘中存储的这部分数据的原始值更新为最新值,从而确保第二磁盘中最终存储的是原云服务器最近一次变更这部分数据之后的最新值。
再例如,在将所述目标数据迁移至所述第二磁盘时,也可以将未发生变更的所述目标数据迁移至所述第二磁盘;然后在关闭所述第一设备中的所述云服务器的情况下,将发生变更的部分目标数据迁移至所述第二磁盘;此后,在发生变更的部分目标数据被全部迁移至所述第二磁盘的情况下,再在所述第二设备中重启所述云服务器。可见在该方案中,未发生变更的部分目标数据在原云服务器正常运行时完成迁移,而发生变更的部分目标数据在原云服务器关闭之后且新云服务器重启之前完成迁移。
如前所述,在所述目标数据的迁移进度满足停机条件的情况下关闭第一设备中的所述云服务器,其中,所述停机条件可以为至少部分目标数据完成迁移,即至少部分目标数据被成功迁移至第二磁盘。具体而言,在不同场景下可以采用不同的停机条件。例如,在迁移期间全部目标数据均未发生变更的情况下,所述停机条件可以为:所述目标数据全部完成迁移。此时,关闭第一设备中的云服务器之后可以在第二设备中立即重启该云服务器,以使停机时长尽可能短,提升云服务器的可用性。再例如,在迁移期间全部目标数据均未发生变更的情况下,所述停机条件也可以为:所述目标数据部分完成迁移,且未完成迁移的剩余目标数据对应的预期迁移耗时不大于停机时长阈值。其中,所述停机时长阈值可以为预设的固定值,如10min、15min、10h等。可以理解的是,此时将待迁移的全部目标数据分为两部分:原云服务器运行期间迁移的一部分和原云服务器关闭后迁移的另一部分(即所述未完成迁移的剩余目标数据),而所述另一部分的实际迁移耗时仅接近云服务器的停机时长,因此未完成迁移的剩余目标数据对应的预期迁移耗时不大于停机时长阈值,既可确保这部分目标数据的迁移耗时接近该停机时长阈值,亦即云服务器的不可用时长接近该停机时长阈值。当然,所述停机时长阈值可以根据用户等级、云服务器的运行情况、目标数据的数据量、云服务器或管理系统的负载甚至前述迁移时间段的空闲情况等进行合理设置,本说明书并不对此进行限制。
再例如,在迁移期间存在部分目标数据发生变更的情况下,所述停机条件可以为:未发生变更的目标数据全部完成迁移。此时是将全部目标数据划分为两部分:未发生变更的一部分和发生变更的另一部分。其中,在原云服务器运行期间迁移未发生变更的部分,并在迁移完成后关闭原云服务器;进而在原云服务器被关闭且新云服务器尚未重启的情况下迁移发生变更的另一部分。又例如,在迁移期间存在部分目标数据发生变更的情况下,所述停机条件也可以为:未发生变更的目标数据全部或部分完成迁移,且未迁移的其余目标数据对应的预期迁移耗时不大于停机时长阈值。在该方案中,在原云服务器运行期间先迁移未发生变更的目标数据再迁移发生变更的目标数据,而在迁移过程中实时预测当前时刻未迁移的剩余目标数据对应的预期迁移耗时,并在该预期迁移耗时不大于停机时长阈值时,关闭第一设备中的原云服务器;然后迁移所述剩余目标数据,并在迁移完成后在第二设备中重启新云服务器。其中,若存在某一在被拷贝至第二磁盘之后才发生变更(或又发生变更),则可以将该目标数据重新确定为未迁移的剩余目标数据,特此说明。因此,对发生变更的部分目标数据的迁移过程可以迭代进行。
另外,本说明书所述目标数据中的任一目标数据可以以数据页(Page)为单位,此时,任一数据页中的某一数据的取值发生变更,即可视为该数据页发生变更。当然,任一数据也可以采用其他单位,本说明书并不对此进行限制。
步骤206,在所述目标数据被全部迁移至所述第二磁盘的情况下,在所述第二设备中重启所述云服务器,重启完成的所述云服务器基于被迁移至所述第二磁盘中的所述目标数据运行。
在完成所述目标数据的迁移之后,可以在第二设备中重启所述云服务器(重启后的该云服务器即为前述新云服务器),重启完成的所述云服务器可以基于被迁移至所述第二磁盘中的所述目标数据运行,即所述新云服务器依赖于迁移至第二磁盘中的目标数据。如前所述,第二设备中重启的云服务器与第一设备中被关闭的云服务器具有相同的运行逻辑,对此,可以将所述云服务器的部署文件拷贝至第二设备,并调用第二设备的可用资源运行该部署文件以重启所述云服务器(即在第二设备中运行该云服务器的新副本),以确保二者具有相同的运行逻辑。
在上述实施例中,云服务器的管理系统响应于针对第一设备中部署的基于目标数据运行的云服务器发起的迁移启动指令,先确定第一磁盘(即第一设备的本地磁盘)中存储的所述目标数据;然后在维持所述云服务器正常运行的同时将所述目标数据迁移至第二磁盘(即第二设备的本地磁盘),并在迁移进度满足停机条件的情况下关闭所述云服务器;进而在所述目标数据被全部迁移至所述第二磁盘的情况下在所述第二设备中重启所述云服务器,重启完成的所述云服务器基于被迁移至所述第二磁盘中的所述目标数据运行。
可见,相对于相关技术中的冷迁移方案而言,本方案将目标数据的迁移过程前置,即在第一设备中部署的云服务器尚未关闭时(尚在正常工作)就开始异步迁移目标数据,并在确定迁移进度满足停机条件时才关闭云服务器并在第二设备中重启新的云服务器。显然,本方案在原云服务器正常工作时即可迁移完成至少部分目标数据,使得第一设备中的云服务器关闭时刻与第二设备中的云服务器重启时刻之前的间隔时长较短,有效缩短了云服务器的停机时长(即云服务的不可用时长),从而降低了冷迁移过程对用户使用的不利影响。
在一实施例中,为了尽可能的回收原云服务器的相关资源,在确定所述第二设备中重启的所述云服务器能够正常运行(即能够顺利访问被迁移至所述第二磁盘中的所述目标数据并基于其运行)的情况下,可以删除所述第一磁盘中的所述目标数据并回收相应的存储资源;和/或,回收所述第一设备中被关闭的所述云服务器对应的资源,该资源可以包括第一设备分配给所述云服务器的计算、存储和网络资源等。其中,可以在第二设备中的磁盘重启成功的预设时长(如1小时、1天、1星期、1月等)后自动回收上述资源;也可以在重启第二设备成功后提醒用户检查迁移至所述第二磁盘的目标数据是否正确和/或能否正常访问,并在接收到用户发出的确认指令的情况下回收上述资源;当然,还可以由管理系统的操作人员手动发起回收指令,以由管理系统响应于该指令回收上述资源。
在一实施例中,上述迁移过程可能出现异常状况,此时可以删除被迁移至所述第二磁盘中的所述目标数据以回收第二磁盘的存储资源。其中,可以在下述至少之一的情况下,删除被迁移至所述第二磁盘中的所述目标数据。例如,可以在所述第二设备中重启所述云服务器失败的情况下删除;当然,上述重启可以进行多次尝试,并在预设次数的尝试均无法顺利重启时再删除。再例如,也可以在所述第二设备中的云服务器无法正常访问被迁移至所述第二磁盘中的所述目标数据的情况下删除,其中,所述第二设备中的云服务器无法访问所述目标数据,可能是因为迁移过程出错,也可能是因为该云服务器的配置信息错误等。又例如,还可以在接收到针对所述云服务器发起的迁移取消指令的情况下删除;其中,所述迁移取消指令可以在迁移过程中的任一时刻发起、可以在迁移完成后发起,也可以在新云服务器重启完成后发起等,另外,该指令具体可以由所述云服务器的管理系统的操作人员发起,或者也可以由所述云服务器的用户通过自身使用的云客户端访问原云服务器或新云服务器发起,本说明书并不对此进行限制。
图3是一示例性实施例提供的一种数据迁移过程中的状态转换图。如图3所示,与迁移过程相关的系统状态分别为:
processing(迁移任务进行中):
云服务器的用户或者云服务器的管理系统的操作人员可以发起针对该云服务器的迁移启动指令,以在该系统中创建针对该云服务器的迁移任务;管理系统接收到所述迁移启动指令后,可以开始执行该任务:响应于所述迁移启动指令确定第一磁盘中存储的供所述云服务器访问的目标数据,然后在维持所述云服务器正常运行的同时将所述目标数据迁移至第二磁盘,并在迁移进度满足停机条件的情况下关闭所述云服务器;进而,在所述第二设备中重启所述云服务器,重启完成的所述云服务器用于访问被迁移至所述第二磁盘中的所述目标数据。在上述迁移过程中,该系统处于processing状态。
若上述迁移过程完成后,在第二设备中顺利重启新云服务器且该云服务器能够基于迁移至第二磁盘中的目标数据运行,则可以视为切换(即云服务器转换为新云服务器,目标数据转换为第二磁盘中的数据)成功,此时系统转换为switched状态。
若在processing状态中的任一时刻接收到云服务器的用户或管理系统的操作人员发起的资源释放指令或迁移取消指令,则可以需要终止迁移任务,如可以立即终止迁移目标数据并开始删除已经被迁移至第二磁盘的部分目标数据,此时系统转入cancelling状态。
switched(已完成数据切换):
前述切换过程可以多次尝试(如尝试多次重启),直至成功时转换为switched状态,否则可以开始回滚处理,即转入rollbacked状态。或者,若在数据切换完成后确定所述第二设备中的所述云服务器能够基于被迁移至所述第二磁盘中的所述目标数据(可以通过前述用户或操作人员确定)正常运行,则表明迁移任务顺利完成,此时转入succeeded状态。另外,也可以按照管理系统的超时逻辑在预设时刻自动删除第一磁盘中的目标数据以回收存储资源,从而转换至succeeded状态。
succeeded(迁移任务已完成):
在该状态下,云服务器的管理系统针对所述云服务器的迁移任务已经被顺利完成,此时可以结束。
rollbacked(任务回滚):
在第一设备中的原云服务器及其资源并未被回收,且第一磁盘中的原目标数据并未被删除的情况下,可以重新运行所述原云服务器并配置其基于所述原目标数据运行,从而实现对该云服务器的回滚。另外,还可以删除被迁移至第二磁盘的目标数据,以回收第二磁盘的存储资源;并删除第二设备中与云服务器相关的数据,如该云服务器的部署文件、配置数据等。
cancelling(迁移任务取消中):
在该状态下,可以删除已经被迁移至第二磁盘的部分目标数据,也可以删除第二设备中与云服务器相关的数据,不再赘述。
canceled(迁移任务已取消):
在该状态下,迁移任务已经被顺利取消,此时可以结束流程。至此,针对所述迁移任务的处理过程即告结束,根据实际状态不同,可能完成了云服务器和目标数据的迁移,也可能终止迁移,还可能在迁移之后回滚,不再赘述。
图4是一示例性实施例提供的一种设备的示意结构图。请参考图4,在硬件层面,该设备包括处理器402、内部总线404、网络接口406、内存408以及非易失性存储器410,当然还可能包括其他功能所需要的硬件。本说明书一个或多个实施例可以基于软件方式来实现,比如由处理器402从非易失性存储器410中读取对应的计算机程序到内存408中然后运行。当然,除了软件实现方式之外,本说明书一个或多个实施例并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
请参考图5,在一软件实施方式中,该数据迁移装置可以包括:
确定单元501,用于响应于针对第一设备中部署的云服务器发起的迁移启动指令,确定第一磁盘中存储的目标数据,所述云服务器基于所述目标数据运行,所述第一磁盘被装配于所述第一设备中中;
迁移单元502,用于在维持所述云服务器正常运行的同时将所述目标数据迁移至第二磁盘,并在迁移进度满足停机条件的情况下关闭所述云服务器,所述第二磁盘被装配于第二设备中;
重启单元503,用于在所述目标数据被全部迁移至所述第二磁盘的情况下,在所述第二设备中重启所述云服务器,重启完成的所述云服务器基于被迁移至所述第二磁盘中的所述目标数据运行。
可选的,还包括:
预占单元504,用于在将所述目标数据迁移至所述第二磁盘之前,在所述第二磁盘的可用存储空间中占据满足所述目标数据的数据量的目标存储空间,被占据的所述目标存储空间无法被写入区别于所述目标数据的其他数据。
可选的,所述迁移单元502具体用于:
在迁移时间段内将所述目标数据迁移至所述第二磁盘;其中,通过下述方式之一确定所述迁移时间段:
确定所述迁移启动指令中包含的迁移时间段;
根据所述目标数据的预期迁移耗时确定迁移时间段,所述迁移时间段的结束时刻不晚于所述迁移启动指令中包含的迁移截止时刻;
根据历史迁移记录预测空闲时间段,并根据所述目标数据的预期迁移耗时在所述空闲时间段内确定迁移时间段。
可选的,所述迁移单元502具体用于:
预测所述云服务器正常运行所需的运行网络资源,并调用所述云服务器的可用网络资源中除所述运行网络资源之外的剩余网络资源将所述目标数据迁移至所述第二磁盘;或者,
为所述云服务器分配与所述云服务器所登录账户的账户等级相对应的网络资源,并调用该网络资源将所述目标数据迁移至所述第二磁盘。
可选的,在迁移期间存在部分目标数据发生变更的情况下,
所述迁移单元502具体用于:将未发生变更的所述目标数据迁移至所述第二磁盘;所述装置还包括变更迁移单元505,用于在关闭所述第一设备中的所述云服务器的情况下,将发生变更的部分目标数据迁移至所述第二磁盘;所述重启单元503具体用于:在发生变更的部分目标数据被全部迁移至所述第二磁盘的情况下,在所述第二设备中重启所述云服务器;或者,
所述迁移单元502具体用于:将全部所述目标数据迁移至所述第二磁盘,并为其中发生变更的部分目标数据添加待更新标记;所述装置还包括数据更新单元506,用于在关闭所述第一设备中的所述云服务器的情况下,使用所述第一磁盘中变更后的部分目标数据更新所述待更新标记指示的所述第二磁盘中存储的相应部分目标数据。
可选的,所述停机条件包括下述之一:
在迁移期间全部目标数据均未发生变更的情况下,所述目标数据全部完成迁移;
在迁移期间全部目标数据均未发生变更的情况下,所述目标数据部分完成迁移,且未完成迁移的剩余目标数据对应的预期迁移耗时不大于停机时长阈值;
在迁移期间存在部分目标数据发生变更的情况下,未发生变更的目标数据全部完成迁移;
在迁移期间存在部分目标数据发生变更的情况下,未发生变更的目标数据全部或部分完成迁移,且未迁移的其余目标数据对应的预期迁移耗时不大于停机时长阈值。
可选的,还包括第一删除单元507,用于:
在确定所述第二设备中的所述云服务器能够正常访问被迁移至所述第二磁盘中的所述目标数据的情况下,删除所述第一磁盘中的所述目标数据并回收相应的存储资源;和/或,回收所述第一设备中被关闭的所述云服务器对应的资源。
可选的,还包括第二删除单元508,用于:
在下述至少之一的情况下,删除被迁移至所述第二磁盘中的所述目标数据:
在所述第二设备中重启所述云服务器失败;
所述第二设备中的云服务器无法正常访问被迁移至所述第二磁盘中的所述目标数据;
接收到针对所述云服务器发起的迁移取消指令。
可选的,所述迁移启动指令通过下述之一的方式发起:
由所述云服务器的用户通过云客户端发起、由所述云服务器的管理系统的操作人员通过管理端发起、由所述管理系统按照预设的迁移计划自动发起。
可选的,在所述迁移启动指令并非由所述云服务器的用户发起的情况下,所述迁移单元502具体用于:
向所述用户输出针对所述目标数据的迁移通知消息,并在接收到所述用户返回的确认消息的情况下,将所述目标数据迁移至所述第二磁盘。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
在一个典型的配置中,计算机包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带、磁盘存储、量子存储器、基于石墨烯的存储介质或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在本说明书一个或多个实施例使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书一个或多个实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
以上所述仅为本说明书一个或多个实施例的较佳实施例而已,并不用以限制本说明书一个或多个实施例,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书一个或多个实施例保护的范围之内。
Claims (14)
1.一种数据迁移方法,其特征在于,包括:
响应于针对第一设备中部署的云服务器发起的迁移启动指令,确定第一磁盘中存储的目标数据,所述云服务器基于所述目标数据运行,所述第一磁盘被装配于所述第一设备中;
在维持所述云服务器正常运行的同时将所述目标数据迁移至第二磁盘,并在迁移进度满足停机条件的情况下关闭所述云服务器,所述第二磁盘被装配于第二设备中;
在所述目标数据被全部迁移至所述第二磁盘的情况下,在所述第二设备中重启所述云服务器,重启完成的所述云服务器基于被迁移至所述第二磁盘中的所述目标数据运行。
2.根据权利要求1所述的方法,其特征在于,还包括:
在将所述目标数据迁移至所述第二磁盘之前,在所述第二磁盘的可用存储空间中占据满足所述目标数据的数据量的目标存储空间,被占据的所述目标存储空间无法被写入区别于所述目标数据的其他数据。
3.根据权利要求1所述的方法,其特征在于,所述将所述目标数据迁移至所述第二磁盘,包括:
在迁移时间段内将所述目标数据迁移至所述第二磁盘;其中,通过下述方式之一确定所述迁移时间段:
确定所述迁移启动指令中包含的迁移时间段;
根据所述目标数据的预期迁移耗时确定迁移时间段,所述迁移时间段的结束时刻不晚于所述迁移启动指令中包含的迁移截止时刻;
根据历史迁移记录预测空闲时间段,并根据所述目标数据的预期迁移耗时在所述空闲时间段内确定迁移时间段。
4.根据权利要求1所述的方法,其特征在于,所述将所述目标数据迁移至所述第二磁盘,包括:
预测所述云服务器正常运行所需的运行网络资源,并调用所述云服务器的可用网络资源中除所述运行网络资源之外的剩余网络资源将所述目标数据迁移至所述第二磁盘;或者,
为所述云服务器分配与所述云服务器所登录账户的账户等级相对应的网络资源,并调用该网络资源将所述目标数据迁移至所述第二磁盘。
5.根据权利要求1所述的方法,其特征在于,在迁移期间存在部分目标数据发生变更的情况下,
所述将所述目标数据迁移至所述第二磁盘包括:将未发生变更的所述目标数据迁移至所述第二磁盘;所述方法还包括:在关闭所述第一设备中的所述云服务器的情况下,将发生变更的部分目标数据迁移至所述第二磁盘;所述在所述第二设备中重启所述云服务器包括:在发生变更的部分目标数据被全部迁移至所述第二磁盘的情况下,在所述第二设备中重启所述云服务器;或者,
所述将所述目标数据迁移至所述第二磁盘包括:将全部所述目标数据迁移至所述第二磁盘,并为其中发生变更的部分目标数据添加待更新标记;所述方法还包括:在关闭所述第一设备中的所述云服务器的情况下,使用所述第一磁盘中变更后的部分目标数据更新所述待更新标记指示的所述第二磁盘中存储的相应部分目标数据。
6.根据权利要求1所述的方法,其特征在于,所述停机条件包括下述之一:
在迁移期间全部目标数据均未发生变更的情况下,所述目标数据全部完成迁移;
在迁移期间全部目标数据均未发生变更的情况下,所述目标数据部分完成迁移,且未完成迁移的剩余目标数据对应的预期迁移耗时不大于停机时长阈值;
在迁移期间存在部分目标数据发生变更的情况下,未发生变更的目标数据全部完成迁移;
在迁移期间存在部分目标数据发生变更的情况下,未发生变更的目标数据全部或部分完成迁移,且未迁移的其余目标数据对应的预期迁移耗时不大于停机时长阈值。
7.根据权利要求1所述的方法,其特征在于,还包括:
在确定所述第二设备中重启的所述云服务器能够正常运行的情况下,删除所述第一磁盘中的所述目标数据并回收相应的存储资源;和/或,回收所述第一设备中被关闭的所述云服务器对应的资源。
8.根据权利要求1所述的方法,其特征在于,还包括:
在下述至少之一的情况下,删除被迁移至所述第二磁盘中的所述目标数据:
在所述第二设备中重启所述云服务器失败;
所述第二设备中的云服务器无法正常访问被迁移至所述第二磁盘中的所述目标数据;
接收到针对所述云服务器发起的迁移取消指令。
9.根据权利要求1所述的方法,其特征在于,所述迁移启动指令通过下述之一的方式发起:
由所述云服务器的用户通过云客户端发起、由所述云服务器的管理系统的操作人员通过管理端发起、由所述管理系统按照预设的迁移计划自动发起。
10.根据权利要求9所述的方法,其特征在于,在所述迁移启动指令并非由所述云服务器的用户发起的情况下,所述将所述目标数据迁移至所述第二磁盘,包括:
向所述用户输出针对所述目标数据的迁移通知消息,并在接收到所述用户返回的确认消息的情况下,将所述目标数据迁移至所述第二磁盘。
11.一种数据迁移装置,其特征在于,包括:
确定单元,用于响应于针对第一设备中部署的云服务器发起的迁移启动指令,确定第一磁盘中存储的目标数据,所述云服务器基于所述目标数据运行,所述第一磁盘被装配于所述第一设备中;
迁移单元,用于在维持所述云服务器正常运行的同时将所述目标数据迁移至第二磁盘,并在迁移进度满足停机条件的情况下关闭所述云服务器,所述第二磁盘被装配于第二设备中;
重启单元,用于在所述目标数据被全部迁移至所述第二磁盘的情况下,在所述第二设备中重启所述云服务器,重启完成的所述云服务器基于被迁移至所述第二磁盘中的所述目标数据运行。
12.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器通过运行所述可执行指令以实现如权利要求1-10中任一项所述的方法。
13.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现如权利要求1-10中任一项所述方法的步骤。
14.一种计算机程序产品,包括计算机程序和/或指令,其特征在于,所述计算机程序和/或指令被处理器执行时实现如权利要求1-10中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310658978.6A CN116820332A (zh) | 2023-06-05 | 2023-06-05 | 数据迁移方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310658978.6A CN116820332A (zh) | 2023-06-05 | 2023-06-05 | 数据迁移方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116820332A true CN116820332A (zh) | 2023-09-29 |
Family
ID=88115921
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310658978.6A Pending CN116820332A (zh) | 2023-06-05 | 2023-06-05 | 数据迁移方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116820332A (zh) |
-
2023
- 2023-06-05 CN CN202310658978.6A patent/CN116820332A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20190215313A1 (en) | Implementing Secure Communication In A Distributed Computing System | |
US8321558B1 (en) | Dynamically monitoring and modifying distributed execution of programs | |
CN110018899B (zh) | 回收内存的方法及装置 | |
CN111880956B (zh) | 一种数据同步方法和装置 | |
EP3531264B1 (en) | Data storage, reading, and cleansing method and device, and cloud storage system | |
CN107483631B (zh) | 一种控制缓存实现移动互联网络服务访问的方法 | |
CN106357703B (zh) | 集群切换方法与设备 | |
CN113420005A (zh) | 数据存储方法、系统、电子设备及计算机存储介质 | |
CN113297031A (zh) | 容器集群中的容器组防护方法及装置 | |
CN110019083A (zh) | 分布式文件系统的存储方法、装置、电子设备及存储介质 | |
CN111831221A (zh) | 一种基于云存储的分布式存储方法及系统 | |
CN116594734A (zh) | 容器迁移方法、装置、存储介质及电子设备 | |
CN116820332A (zh) | 数据迁移方法及装置 | |
US20200241911A1 (en) | Automatically freeing up virtual machine resources based on virtual machine tagging | |
CN114780296B (zh) | 数据库集群的数据备份方法、装置及系统 | |
CN116527590A (zh) | 一种云原生网关的分布式限流实现方法及装置 | |
CN116302555A (zh) | 实例管理方法、系统、物理主机、设备和存储介质 | |
CN111857836A (zh) | 服务器开机管理系统、方法及装置 | |
CN115543225A (zh) | 数据处理方法、系统、装置、计算机存储介质及电子设备 | |
WO2018188959A1 (en) | Method and apparatus for managing events in a network that adopts event-driven programming framework | |
WO2018188958A1 (en) | A method and a host for managing events in a network that adopts event-driven programming framework | |
CN114595169A (zh) | 数据保护方法、电子设备和存储介质 | |
CN110019023B (zh) | 一种机构信息报文的推送方法、装置及设备 | |
CN114546591A (zh) | 镜像文件共享方法、容器集群管理系统及相关设备 | |
CN109542598B (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 |