一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

云操作系统的虚拟机控制方法、装置以及存储介质与流程

2022-02-20 01:42:08 来源:中国专利 TAG:


1.本发明涉及虚拟化技术领域,尤其涉及一种云操作系统的虚拟机控制方法、装置以及存储介质。


背景技术:

2.vmware(vmware,virtualmachine ware)是目前主流的云计算虚拟化平台,其主要功能是虚拟计算机的cpu、内存和硬盘。在这些虚拟设备上安装操作系统和应用程序,在一台物理主机上就可以同时使用多个操作系统和各种应用程序。虚拟机的迁移是指将源主机上的虚拟机的操作系统和应用程序移动到目的主机上,并且能够在目的主机上正常运行的过程。目前常用的迁移是在线迁移(也称动态迁移),是指在保证虚拟机上服务正常运行的同时,虚拟机在不同的物理主机之间进行迁移。在相关技术中,为了保证迁移过程中虚拟机服务的可用,迁移过程仅有非常短暂的停机时间。迁移的前面阶段,虚拟机在源主机运行,当迁移进行到一定阶段,目的主机已经具备了运行系统的必须资源,经过一个非常短暂的切换,源主机将控制权转移到目的主机,虚拟机在目的主机上继续运行。虚拟机迁移需要重新安装所有软件,会导致用户信息丢失,还需要花费大量时间,迁移效率低下。
3.针对相关技术中,虚拟机迁移存在用户信息丢失、迁移效率低的问题,目前尚未提出有效的解决方案。


技术实现要素:

4.本技术实施例提供了一种云操作系统的虚拟机控制方法、装置以及存储介质,以至少解决相关技术中,虚拟机迁移存在用户信息丢失、迁移效率低的问题。
5.第一方面,本技术实施例提供了一种云操作系统的虚拟机控制方法,所述云操作系统部署在服务器集群中各服务器操作系统的容器中,所述服务器集群中的各服务器之间通过tcp星形分布连接,所述方法包括:在接收到非首次登录的客户端发送的请求服务器资源时,第一服务器判断自身的硬件负载是否超过预设阈值,其中,若所述第一服务器的硬件负载小于所述预设阈值,所述非首次登录的客户端分配所述第一服务器已生成的第一虚拟机资源;若所述第一服务器的硬件负载大于或等于所述预设阈值,所述云操作系统查找所述服务器集群中、硬件负载小于所述预设阈值的第二服务器,以导入所述第一虚拟机的用户信息至所述第二服务器上新创建的第二虚拟机,并返回所述第二虚拟机给所述客户端,其中,所述第一虚拟机的用户信息保存在所述第一服务器的第一操作系统中。
6.在其中一些实施例中,所述服务器集群中的各服务器上有服务器对应ip和性能的记录表,所述记录表包括各服务器虚拟机上的用户信息,所述用户信息包括用户操作文件和应用程序数据,所述记录表周期性同步。
7.在其中一些实施例中,所述接收到非首次登录的客户端发送的请求服务器资源之前,所述方法还包括:
负载均衡模块接收到所述客户端发送的请求虚拟机指令时,查找所述服务器集群中、硬件负载小于所述预设阈值的第一服务器,生成与所述请求虚拟机指令相应配置的第一虚拟机,并返回所述第一虚拟机给所述客户端,以使所述客户端首次连接所述第一虚拟机;所述云操作系统周期性保存所述第一虚拟机上的用户操作文件,并将所述第一虚拟机上的用户操作文件备份到所述第一操作系统中。
8.在其中一些实施例中,所述生成与所述请求虚拟机指令相应配置的第一虚拟机之后,所述方法还包括:在接收到所述客户端发送的请求增加或删除应用的应用指令时,所述第一虚拟机将与所述应用指令相应操作的应用程序数据同步保存到所述第一操作系统。
9.在其中一些实施例中,所述查找所述服务器集群中、硬件负载小于所述预设阈值的第一服务器时,优先查找空置的服务器作为所述第一服务器。
10.在其中一些实施例中,在查找所述服务器集群中、硬件负载小于所述预设阈值的第二服务器时,优先查找空置的服务器作为所述第二服务器。
11.在其中一些实施例中,所述生成所述请求虚拟机指令相应配置的第一虚拟机后,所述方法还包括:在接收到所述客户端发送的请求升级或降级操作系统配置的配置指令时,所述云操作系统动态生成与所述配置指令相匹配的操作系统,并导入客户端配置文件。
12.第二方面,本技术实施例提供了一种云操作系统的虚拟机控制装置,所述装置包括资源分配模块和虚拟机迁移模块;其中,所述资源分配模块用于在接收到非首次登录的客户端发送的请求服务器资源时,判断第一服务器的硬件负载是否超过预设阈值,其中,若所述第一服务器的硬件负载大于所述预设阈值,所述非首次登录的客户端分配所述第一服务器已生成的第一虚拟机资源;所述虚拟机迁移模块用于在判断所述第一服务器的硬件负载大于或等于所述预设阈值时,查找所述服务器集群中、硬件负载小于所述预设阈值的第二服务器,以导入所述第一虚拟机的用户信息至所述第二服务器上新创建的第二虚拟机,并返回所述第二虚拟机给所述客户端,其中,所述第一虚拟机的用户信息保存在所述第一服务器的第一操作系统中。
13.在其中一些实施例中,所述装置还包括负载均衡模块、虚拟机生成模块、数据同步模块和扩容模块;其中,所述负载均衡模块用于在接收到所述客户端发送的请求虚拟机指令时,查找所述服务器集群中、硬件负载小于所述预设阈值的第一服务器;所述虚拟机生成模块用于生成与所述请求虚拟机指令相应配置的第一虚拟机,并返回所述第一虚拟机给所述客户端,以使所述客户端首次连接所述第一虚拟机;所述数据同步模块用于周期性保存所述第一虚拟机上的用户操作文件,并将所述第一虚拟机上的用户操作文件备份到所述第一操作系统中;所述扩容模块用于在接收到所述客户端发送的请求升级或降级操作系统配置的配置指令时,动态生成与所述配置指令相匹配的操作系统,并导入客户端配置文件。
14.第三方面,本技术实施例提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述第一方面所述的虚拟机控制方法。
15.相比相关技术,本技术实施例提供的云操作系统的虚拟机控制方法,该云操作系统部署在服务器集群中各服务器操作系统的容器中,该服务器集群中的各服务器之间通过tcp星形分布连接,通过在接收到非首次登录的客户端发送的请求服务器资源时,第一服务器判断自身的硬件负载是否超过预设阈值,其中,若第一服务器的硬件负载小于该预设阈值,则该非首次登录的客户端分配该第一服务器生成的第一虚拟机资源;若第一服务器判断自身的硬件负载超过预设阈值,该云操作系统查找该服务器集群中、硬件负载小于该预设阈值的第二服务器,以导入该第一虚拟机的用户信息至该第二服务器上新创建的第二虚拟机,并返回该第二虚拟机给该客户端,其中,该第一虚拟机的用户信息保存在该第一服务器的第一操作系统中。通过将虚拟机的用户信息保存在服务器上,实现虚拟机和服务器的数据同步,在不重新安装软件下可以实现虚拟机的快速迁移,解决了虚拟机迁移存在用户信息丢失、迁移效率低的问题,提高了迁移效率,同时不会丢失用户信息。
附图说明
16.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:图1是根据本技术实施例的服务器集群示意图;图2是根据本技术实施例的云操作系统的虚拟机控制方法的流程图;图3是根据本技术实施例的虚拟机控制方法的交互示意图;图4是根据本技术实施例的用于虚拟机状态保存的虚拟机控制方法的交互示意图;图5是根据本技术实施例的另一种云操作系统的虚拟机控制方法的流程图;图6是根据本技术实施例的第一服务器资源满载情况下的的交互示意图;图7是客户端和虚拟机及服务器交互的时序示意图;图8是根据本技术实施例的云操作系统的虚拟机控制装置的结构示意图;图9是根据本技术实施例的另一种云操作系统的虚拟机控制装置的结构示意图。
具体实施方式
17.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。基于本技术提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
18.显而易见地,下面描述中的附图仅仅是本技术的一些示例或实施例,对于本领域的普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图将本技术应用于其他类似情景。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本技术公开的内容相关的本领域的普通技术人员而言,在本技术揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本技术公开的内容不充分。
19.在本技术中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域普通技术人员显式地和隐式地理解的是,本技术所描述的实施例在不冲突的情况下,可以与其它实施例相结合。
20.除非另作定义,本技术所涉及的技术术语或者科学术语应当为本技术所属技术领域内具有一般技能的人士所理解的通常意义。本技术所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本技术所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本技术所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本技术所涉及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本技术所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。
21.云操作系统一般是指构架于服务器、存储、网络等基础硬件资源和单机操作系统、中间件、数据库等基础软件之上的、管理海量的基础硬件、软件资源的云平台综合管理系统。本实施例中的云操作系统(如cloudneedleos操作系统)包括linux内核模块和jsapi模块,linux 内核模块用于提供基本的linux命令,jsapi模块用于提供操作系统应用的远程调用和驱动调用。该云操作系统部署在服务器集群各服务器操作系统的容器中。图1是根据本技术实施例的服务器集群示意图,如图1所示,该服务器集群中的各服务器通过tcp星形分布连接,并记录有用户列表。需要说明的是,图中的服务器数量是示意性的。各服务器上有服务器对应ip和性能的记录表,该记录表包括在各服务器虚拟机上与用户列表对应的用户信息,该用户信息包括虚拟机上的用户操作文件和应用程序数据,该记录表周期性同步,可以提高虚拟机和服务器上数据同步的及时性。
22.本实施例提供了一种云操作系统的虚拟机控制方法,图2是根据本技术实施例的云操作系统的虚拟机控制方法的流程图,图3是根据本技术实施例的虚拟机控制方法的交互示意图。结合图2和图3所示,该流程包括如下步骤:s210、客户端发出请求虚拟机指令,以请求建立虚拟机。
23.s220、负载均衡模块在接收到请求虚拟机指令时,查找服务器集群中、硬件负载小于预设阈值的第一服务器,生成与请求虚拟机指令相应配置的第一虚拟机。该第一虚拟机具有与请求虚拟机指令相应的配置,并导入客户端的用户信息记录。第一服务器为空置的服务器或者其自身硬件负载小于预设阈值的服务器,即该第一服务器有足够资源可以建立虚拟机。优选地,优先查找空置的服务器作为第一服务器,从而第一服务器可以使用更久时间,延迟迁移时机,服务器集群上的虚拟机整体迁移次数减少,效能更好。
24.s230、返回第一虚拟机给客户端。
25.s240、客户端首次连接第一虚拟机。在有足够资源的第一服务器上生成虚拟机,可
以保证快速响应客户端发送的指令,提高用户体验。
26.优选地,云操作系统定时周期性地保存第一虚拟机上的用户操作文件,并将第一虚拟机上的用户操作文件备份到第一操作系统中。比如每30秒各服务器同步一次状态,可以保证在客户端有连接请求时,优先在记录表中查询到当前空置的服务器进行分配,用于均衡服务器集群的硬件负载。且保证了虚拟机和服务器数据同步的及时性。
27.本实施例提供了一种用于虚拟机状态保存的虚拟机控制方法。图4是根据本技术实施例的用于虚拟机状态保存的虚拟机控制方法的交互示意图,如图4所示,客户端与第一服务器连接并建立用户列表。该客户端向第一虚拟机提出请求增加或删除应用的应用指令。第一虚拟机响应该应用指令,进行添加或删除应用的相应操作,并将相应操作的应用程序数据同步保存到第一操作系统,以实现虚拟机和服务器的应用程序数据同步,服务器保存软件列表记录等相关信息。使得在保存云数据的时候,将数据保存到服务器而不是虚拟机中,从而在客户端提出连接请求时,云操作系统可以分配任意操作系统给客户端,同时导入用户操作文件和应用程序数据等用户信息。并且云操作系统将监视服务器集群硬件的使用情况,如果某一服务器硬件负载超过预设阈值时,就会自动将客户端发出的请求和用户信息发送到其他硬件负载小于预设阈值甚至空置的服务器,从而可以达到服务器集群的负载均衡。
28.而在服务器的硬件扩容时(比如硬盘要从10g变为20g,内存从1g变为2g等)存在操作步骤繁琐、效率低下的问题,为了提升扩容效率,解决扩容难得问题,本技术实施例提供了一种用于扩容的云操作系统的虚拟机控制方法,通过客户端发出请求升级或降低操作系统配置的配置指令,云操作系统在接收到该配置指令时,动态生成与该配置指令相匹配的操作系统,并将客户端配置文件导入该操作系统。
29.本实施例提供了另一种云操作系统的虚拟机控制方法,图5是根据本技术实施例的另一种云操作系统的虚拟机控制方法的流程图,图6是根据本技术实施例的第一服务器资源满载情况下的交互示意图。结合图5和图6所示,该流程包括如下步骤:s510、客户端非首次连接第一服务器已生成的第一虚拟机。
30.s520、客户端向第一服务器发送请求服务器资源。
31.s530、第一服务器在接收到客户端发送的请求服务器资源时,判断自身的硬件负载是否超过预设阈值。
32.s540、若第一服务器的硬件负载超过该预设阈值,云操作系统查找服务器集群中、硬件负载小于预设阈值的第二服务器。示意性地,本实施例中,服务器集群中还包括第二服务器、第三服务器和第四服务器。实际中服务器集群还可以包括更多的服务器。优选地,优先查找空置的服务器作为第二服务器,可以使服务器集群中各服务器硬件负载更加均衡。如第一服务器的服务器资源满载,在服务器集群中呼叫资源使用率最少的第二服务器。
33.s550、第二服务器上创建第二虚拟机,并导入第一虚拟机的用户信息。
34.s560、返回第二虚拟机给客户端。第二虚拟机向客户端响应数据。
35.s570、若第一服务器的硬件负载小于预设阈值,则非首次登录的客户端分配该已生成的第一虚拟机资源。
36.在第一服务器硬件资源充足时,非首次登录的客户端可以直接分配第一虚拟机资源。在第一服务器硬件资源不足时,因第一虚拟机的用户信息保存在服务器集群中,从而在
不重新安装软件的情况下,可以快速迁移虚拟机用户信息,不会丢失用户信息且在服务器集群上实现虚拟机的快速迁移,在很短的时间内让任何一台虚拟机都能成为响应客户端需求的虚拟机,同时通过服务器之间的通信,兼顾了各服务器上的虚拟机负载均衡。
37.图7是客户端和虚拟机及服务器交互的时序示意图,如图7所示,在不同场景下客户端发起的请求信息在虚拟机和服务器中的消息流。在客户端请求添加或删除应用时,虚拟机执行相应操作并同步信息至服务器1。在客户端请求虚拟机时,服务器1有足够资源,服务器1生成虚拟机并导入用户信息,返回虚拟机给客户端,客户端首次连接服务器1生成的虚拟机。客户端非首次连接服务器1生成的虚拟机并向服务器1请求资源,在服务器1硬件负载超过预设阈值时,寻找低负载(负载小于预设阈值)的服务器2,并发送用户信息给服务器2,服务器2生成虚拟机并导入用户信息,返回该虚拟机给客户端。通过将虚拟机和服务器的数据同步,可以在很短的时间内快速让用户使用任何一台虚拟机创建自己的操作系统,解决了虚拟机迁移难的问题。同时通过服务器之间的通信,可以让服务器集群各服务器上的虚拟机负载均衡。
38.本技术实施例提供了一种云操作系统的虚拟机控制装置。图8是根据本技术实施例的云操作系统的虚拟机控制装置的结构示意图,如图8所示,该装置包括资源分配模块810和虚拟机迁移模块820:资源分配模块810用于在接收到非首次登录的客户端发送的请求服务器资源时,判断第一服务器的硬件负载是否超过预设阈值,其中,若第一服务器的硬件负载大于该预设阈值,则该非首次登录的客户端分配第一服务器已生成的第一虚拟机资源;虚拟机迁移模块820用于在判断第一服务器的硬件负载超过预设阈值时,查找服务器集群中、硬件负载小于预设阈值的第二服务器,以导入第一虚拟机的用户信息至第二服务器上新创建的第二虚拟机,并返回第二虚拟机给客户端,其中,第一虚拟机的用户信息保存在第一服务器的第一操作系统中。
39.在其他的一些实施例中,图9是根据本技术实施例的另一种云操作系统的虚拟机控制装置的结构示意图,如图9所示,该装置还包括负载均衡模块920、虚拟机生成模块930、数据同步模块940和扩容模块950,负载均衡模块920在接收到客户端发送的请求虚拟机指令时,查找服务器集群中、硬件负载小于预设阈值的第一服务器;虚拟机生成模块930生成与请求虚拟机指令相应配置的第一虚拟机,并返回第一虚拟机给客户端,以使客户端首次连接第一虚拟机;数据同步模块940用于周期性保存所述第一虚拟机上的用户操作文件,并将所述第一虚拟机上的用户操作文件备份到所述第一操作系统中;扩容模块950用于在接收到客户端发送的请求升级或降级操作系统配置的配置指令时,动态生成与配置指令相匹配的操作系统,并导入客户端配置文件。前述迁移到第二虚拟机,也会进行数据同步及响应配置指令进行扩容,是本领域技术人员可以理解的。负载均衡模块920接收的是未曾连接过系统的客户端,系统为其首次分配资源。非首次登录的客户端不经过负载均衡模块920,可以直接连接服务器并分配服务器资源。
40.关于云操作系统的虚拟机控制装置的具体限定可以参见上文中对于云操作系统的虚拟机控制方法的限定,在此不再赘述。上述云操作系统的虚拟机控制装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
41.另外,结合上述实施例中的云操作系统的虚拟机控制方法,本技术实施例可提供一种存储介质来实现。该存储介质上存储有计算机程序;该计算机程序被处理器执行时实现上述实施例中的任意一种云操作系统的虚拟机控制方法。
42.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink) dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
43.本领域的技术人员应该明白,以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
44.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献