logo好方法网

一种虚拟设备最优空闲时间迁移法、装置及可读存储介质


技术摘要:
本发明公开一种虚拟设备最优空闲时间迁移法、装置及可读存储介质。所述迁移法的步骤包括:采集待迁移虚拟设备历史N个周期内的性能指标;根据所述性能指标,获得训练用输入输出数据集;将所述训练用输入输出数据集输入预设第一模型中进行训练;当训练达到第一预设条件时  全部
背景技术:
系统的迁移是指把源主机上的操作系统和应用程序移动到目的主机,并且能够在 目的主机上正常运行。在没有虚拟设备的时代,物理机之间的迁移依靠的是系统备份和恢 复技术。在源主机上实时备份操作系统和应用程序的状态,然后把存储介质连接到目标主 机上,最后在目标主机上恢复系统。随着虚拟设备技术的发展,系统的迁移更加灵活和多样 化。虚拟设备的迁移方法为服务器的虚拟化提供简便的方法,虚拟设备迁移的方式包括静 态迁移(离线迁移)和动态迁移(在线迁移),所谓静态迁移就是在虚拟设备关机或暂停的情 况下从一台物理机迁移到另一台物理机,这种方式的迁移过程需要停止虚拟设备的运行, 从用户角度看,有明确的一段停机时间,虚拟设备上的服务不可用。所谓动态迁移就是在保 证虚拟设备上的服务正常运行的同时,将一个虚拟设备系统从一个物理主机移动到另一个 物理主机,该过程不会对最终用户造成明显的影响,从而使得管理员能够在不影响用户正 常使用的情况下,对物理服务器进行离线维修或者升级。虽然动态迁移与与静态迁移相比, 可以保证迁移过程中虚拟设备服务的可用,但迁移过程仍然难以避免要有一定的停机时 间。
技术实现要素:
本发明的目的在于提供一种虚拟设备最优空闲时间迁移、装置及可读存储介质, 进一步缩短了现有的虚拟设备迁移过程中的中断时间。 为解决上述技术问题,本发明是通过以下技术方案实现的: 本发明提供一种虚拟设备最优空闲时间迁移法,所述最优空闲时间迁移法至少包括以 下步骤: S1.采集待迁移虚拟设备历史N个周期内的性能指标; S2.根据所述性能指标,获得训练用输入输出数据集; S3.将所述训练用输入输出数据集输入预设第一模型中进行训练; S4.当训练达到第一预设条件时,结束训练并获得模型最佳性能参数; S5.使用具有所述最佳性能参数的模型获得所述待迁移虚拟设备未来M个周期内的预 测性能指标; S6.根据所述预测性能指标,获得所述待迁移虚拟设备最优空闲迁移时间; S7.根据所述最优空闲迁移时间,设置定时调度任务; S8.根据所述定时调度任务,完成所述待迁移虚拟设备的自动迁移。 在本发明的一个实施例中,所述性能指标包括:待迁移虚拟设备的中央处理器的 4 CN 111611055 A 说 明 书 2/10 页 占用率、待迁移虚拟设备的内存的占用率、输入/输出接口的利用率、网络流量、网络延迟时 间、并发连接数、发包数等其中的一种或几种。 在本发明的一个实施例中,所述预设第一模型包括为基于神经网络的模型。 在本发明的一个实施例中,所述第一预设条件为完整遍历所述预设第一模型的训 练次数。 在本发明的一个实施例中,所述自动迁移的方法至少包括以下步骤: R1. 提供源主机与目标主机; R2.在所述源主机内配置一第一虚拟设备,在所述目标主机内配置一第二虚拟设备,并 检查虚拟设备迁移环境; R3.在所述源主机的第一虚拟设备外配置一内存访问跟踪记录器,所述内存访问跟踪 记录器用于监视所述第一虚拟设备内的内存块使用情况; R4.根据所述内存块使用情况,采用内存分类分块算法,将内存分为空闲内存块和活跃 内存块,将所有所述空闲内存块由所述第一虚拟设备拷贝至所述第二虚拟设备中; R5.将剩余所述活跃内存块拷贝由所述第一虚拟设备拷贝至第二虚拟设备中,完成所 述第一虚拟设备的自动迁移。 在本发明的一个实施例中,所述内存访问跟踪记录器所监视的内存块使用情况包 括: 记录被访问过的内存块、记录对所述内存块的访问频次及记录对所述内存块的最后访 问时间和拷贝状态。 在本发明的一个实施例中,所述自动迁移方法中还包括以下步骤: H1.根据所述内存访问跟踪记录器的监视结果,筛选最近最久没有使用的所述内存块, 并标记在预设阈值时间内没有被访问的所述内存块为空闲内存块,其余的所述内存块为活 跃内存块; H2.将所述空闲内存块由第一虚拟设备拷贝至第二虚拟设备中; H3.获取所述活跃内存块的大小; H4.若所述活跃内存块的大小大于最小内存块阈值,则将所述活跃内存块分割为同等 大小的两个内存块,根据所述内存访问跟踪记录器的监视结果,在预设阈值时间内如果所 述内存块没有被访问过,则标记所述内存块为空闲内存块,否则,则标记所述内存块为活跃 内存块; H5.重复步骤H2至步骤H4,直至剩余所述活跃内存块的大小小于等于最小内存块阈值; H6.所有空闲内存块拷贝完毕。 在本发明的一个实施例中,所述自动迁移方法中还包括以下步骤: F1.若所述活跃内存块的大小小于等于最小内存块阈值; F2.根据最近访问的频次对所述活跃内存块集合内的活跃内存块进行排序; F3.依据所述排序结果将所述活跃内存块由所述第一虚拟设备拷贝至所述第二虚拟设 备,直至所有活跃内存块的最后访问时间在最小阈值时间内,停止拷贝; F4.暂停所述源主机; F5.将拷贝后发生变动的内存块合并到所述活跃内存块集合; F6.同步剩余活跃内存块至所述第二虚拟设备; 5 CN 111611055 A 说 明 书 3/10 页 F7.切换业务至目标主机,停止源主机,所述第一虚拟设备的自动迁移完成。 本发明还提供一种虚拟设备迁移装置,其包括: 数据采集模块,用于采集待迁移虚拟设备历史N个周期内的性能指标; 数据处理模块,其与所述数据采集模块连接,用于对获取的所述性能指标进行处理,获 取待迁移虚拟设备最优空闲迁移时间; 时间调度模块,其与所述数据处理模块连接,根据获取的待迁移虚拟设备最优空闲迁 移时间设置定时调度任务; 数据传输模块,其与所述时间调度模块连接,根据所述定时调度任务实现待迁移虚拟 设备的自动迁移。 本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算 机程序,所述计算机程序被处理器执行时实现如本发明所述的一种虚拟设备最优空闲时间 迁移法。 本发明首先根据源主机的历史使用情况,自动预测源主机的最空闲的时段,用户 使用最少的时段作为最优空闲迁移时间,并可以推断在此最优空闲迁移时间段进行虚拟设 备的迁移可以最大限度的保证用户的使用,避免迁移过程对用户的使用造成影响,当预测 了源主机的最优空闲时间之后,系统可以设定当系统时间到达所预测的最优空闲迁移时间 时,源主机自动开始进行迁移。在自动迁移过程中,通过内存访问跟踪记录器监视内存块的 使用情况,并根据所述内存块使用情况,将所述内存块分割为同样大小的两部分,且分别标 记为空闲内存块和活跃内存块,然后将所述空闲内存块由源主机的第一虚拟设备拷贝至目 标主机的第二虚拟设备中,同时将所述活跃内存块再次分割为同样大小的空闲内存块和活 跃内存块,不断重复空闲内存块拷贝和活跃内存块分割的步骤,直至剩余所述活跃内存块 的大小小于等于最小内存块阈值,再根据最近访问的频次对所述活跃内存块集合内的活跃 内存块进行排序,依据所述排序结果将所述活跃内存块由所述第一虚拟设备拷贝至所述第 二虚拟设备,直至所有活跃内存块的最后访问时间在最小阈值时间内,停止拷贝,再进行中 断迁移,至此完成源主机第一虚拟设备的迁移过程,且同时保证了最短的源主机中断时间, 使用户在基本不影响使用的情况下完成源主机虚拟设备的迁移。 当然,实施本发明的任一产品并不一定需要同时达到以上所述的所有优点。 附图说明 为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述所需要使用的 附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领 域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附 图。 图1为本发明虚拟设备数据迁移的应用示意图; 图2为本发明虚拟设备数据迁移的另一应用示意图; 图3为本发明虚拟设备最优空闲时间迁移法的方法流程图; 图4为图1中性能指标曲线图及预测性能指标曲线图; 图5为图1中自动迁移的方法流程图; 图6为本发明虚拟设备数据迁移的示意图; 6 CN 111611055 A 说 明 书 4/10 页 图7至图11为图5中自动迁移的方法示意图; 图12为图5中步骤R4的方法流程图; 图13为图5中步骤R5的方法流程图; 图14为本发明一种虚拟设备迁移装置的结构图; 图15为图14中数据处理模块的结构图。
分享到:
收藏