CN112269626A - 监控虚拟机的方法、装置及设备 - Google Patents
监控虚拟机的方法、装置及设备 Download PDFInfo
- Publication number
- CN112269626A CN112269626A CN202010997334.6A CN202010997334A CN112269626A CN 112269626 A CN112269626 A CN 112269626A CN 202010997334 A CN202010997334 A CN 202010997334A CN 112269626 A CN112269626 A CN 112269626A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- application program
- information
- state information
- client
- 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
- 238000012544 monitoring process Methods 0.000 title claims abstract description 75
- 238000000034 method Methods 0.000 title claims abstract description 64
- 230000002159 abnormal effect Effects 0.000 claims abstract description 57
- 230000005540 biological transmission Effects 0.000 claims description 22
- 238000010586 diagram Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 3
- 230000005856 abnormality Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 235000014510 cooky Nutrition 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3055—Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请提供一种监控虚拟机的方法、装置及设备,涉及云计算技术领域,能够解决虚拟机出现异常而影响用户正常使用的问题。具体技术方案为:监测虚拟机的状态信息,该虚拟机的状态信息包括运行状态信息和/或资源使用状态信息;根据虚拟机的状态信息判断虚拟机是否出现异常;当判断出虚拟机出现异常时,根据虚拟机当前的配置信息重新选定目标虚拟机;将客户端切换至目标虚拟机。本发明用于虚拟机的监控。
Description
技术领域
本申请涉及云计算技术领域,尤其涉及监控虚拟机的方法、装置及设备。
背景技术
随着科技的进步,云计算和虚拟化技术得到了迅速发展,在云物联、云身份、云存储、云安全等领域得到了广泛的应用。“云”已改变了人们对网络的认识模式。
目前,云计算在许多应用程序中得到了应用,比如云游戏。云游戏是以云计算为基础的游戏方式,服务侧将有强大计算能力、渲染能力、存储能力的服务器组成集群,为用户配置合适的虚拟机。在云游戏的运行模式下,所有游戏,不管是2D(平面)游戏、3D(三维)游戏,还是制备精良的3A游戏,都在合适配置的虚拟机上运行,并将渲染完毕后的游戏画面压缩后通过网络传送给用户。在客户端,用户的游戏设备不需要任何高端处理器和显卡,只需要基本的解码和键鼠操作能力,用户就可以在最基本的配置下,体验到原本需要高配置主机才能玩的游戏。
但是,在当前的技术下,如果云端所分配的虚拟机本身出现问题,比如宕机、资源不足等,那么就会直接影响到用户的正常使用。
发明内容
本申请实施例提供一种监控虚拟机的方法、装置及设备,能够解决因虚拟机出现异常而影响用户正常使用的问题。所述技术方案如下:
根据本申请实施例的第一方面,提供一种监控虚拟机的方法,该方法包括:
监测虚拟机的状态信息,所述虚拟机的状态信息包括运行状态信息和/或资源使用状态信息;
根据所述虚拟机的状态信息判断所述虚拟机是否出现异常;
当判断出所述虚拟机出现异常时,根据所述虚拟机当前的配置信息重新选定目标虚拟机;
将客户端切换至所述目标虚拟机。
本申请实施例提供的监控虚拟机的方法,对虚拟机的状态信息进行监测,在虚拟机出现异常时根据虚拟机当前的配置信息重新选定目标虚拟机,并将客户端切换至目标虚拟机。能够在虚拟机出现异常时将客户端切换至重新选定的目标虚拟机,保证了用户的正常使用。
在一个实施例中,当判断出所述虚拟机出现异常时,所述方法还包括:
记录所述虚拟机当前运行的第一应用程序的信息,所述第一应用程序的信息包括第一应用程序的进度信息和第一应用程序的显示信息,所述第一应用程序的显示信息包括显示窗口的大小和位置。
在一个实施例中,在所述将客户端切换至所述目标虚拟机之后,所述方法还包括:
控制所述目标虚拟机启动所述第一应用程序;
加载所述第一应用程序的进度信息;
基于所述第一应用程序的进度信息,根据所述第一应用程序的显示信息控制所述目标虚拟机向所述客户端发送所述第一应用程序的运行画面,使所述客户端根据所述第一应用程序的显示信息显示所述运行画面。
本申请实施例提供的监控虚拟机的方法,在虚拟机出现异常时可以记录虚拟机当前运行的第一应用程序的进度信息和显示信息,在将客户端切换至目标虚拟机之后,能够基于第一应用程序的进度信息在第一应用程序的显示信息所指示的位置以所指示的显示窗口的大小继续显示第一应用程序的运行画面,实现了虚拟机的无缝切换,用户可以在毫无察觉的情况下保持对第一应用程序的使用体验。
在一个实施例中,当判断出所述虚拟机出现异常时,所述方法还包括:
记录所述虚拟机当前运行的第二应用程序的信息,所述第二应用程序的信息包括第二应用程序的显示信息和第二应用程序的身份信息,所述第二应用程序的显示信息包括显示窗口的大小和位置;
基于所述第二应用程序的身份信息,在数据库中查找所述第二应用程序对应的登录信息,所述登录信息包括账号和密码。
在一个实施例中,在所述将客户端切换至所述目标虚拟机之后,所述方法还包括:
控制所述目标虚拟机启动所述第二应用程序;
向所述目标虚拟机发送所述第二应用程序的登录信息,使所述目标虚拟机登录所述第二应用程序的服务器;
基于所述第二应用程序的显示信息,控制所述目标虚拟机向所述客户端发送所述第二应用程序的运行画面,使所述客户端根据所述第二应用程序的显示信息显示所述运行画面。
本申请实施例提供的监控虚拟机的方法,在虚拟机出现异常时可以记录虚拟机当前运行的第二应用程序的身份信息和显示信息,基于第二应用程序的身份信息在数据库中查找第二应用程序对应的登录信息;在将客户端切换至目标虚拟机之后,可以使目标虚拟机根据登录信息登录第二应用程序的服务器,进而能够基于第二应用程序的显示信息在显示信息所指示的位置以所指示的显示窗口的大小继续显示第二应用程序的运行画面,实现了虚拟机的无缝切换,保证了用户对第二应用程序的使用体验。
在一个实施例中,所述虚拟机的状态信息包括资源使用状态信息,所述资源使用状态信息包括数据传输过程中的帧率和/或丢帧率;所述根据所述虚拟机的状态信息判断所述虚拟机是否出现异常包括:
判断所述资源使用状态信息是否满足第一预设条件,所述第一预设条件包括虚拟机数据传输过程中的帧率低于第一阈值或者丢帧率大于第二阈值;
当所述资源使用状态信息满足所述第一预设条件时,确定导致所述资源使用状态信息满足所述第一预设条件的影响因素;
若所述影响因素为第一影响因素,则确定出所述虚拟机出现异常,所述第一影响因素为虚拟机自身的物理资源因素。
在一个实施例中,在确定导致所述资源使用状态信息满足所述第一预设条件的影响因素之后,所述方法还包括:
当确定出所述影响因素为第二影响因素时,动态调整所述虚拟机进行数据传输时的帧率,使调整后的帧率符合数据传输要求,所述第二影响因素包括网络因素。
在一个实施例中,在将所述客户端切换至所述目标虚拟机之前,所述方法还包括:
显示虚拟机切换界面,所述虚拟机切换界面中包括用于选择是否进行虚拟机切换的选择菜单;
接收对所述选择菜单的选择操作;
根据所述选择操作执行虚拟机的切换或不切换虚拟机。
本申请实施例提供的监控虚拟机的方法,可以在确定需要切换虚拟机时询问用户是否要进行虚拟机切换,若用户同意,则将虚拟机切换至目标虚拟机,若用户不同意,则不进行虚拟机的切换。方便了用户的选择,提高了用户的使用体验。
根据本申请实施例的第二方面,提供一种监控虚拟机的装置,包括:
监测模块,用于监测虚拟机的状态信息,所述虚拟机的状态信息包括运行状态信息和/或资源使用状态信息;
判断模块,用于根据所述虚拟机的状态信息判断所述虚拟机是否出现异常;
选择模块,用于当判断出所述虚拟机出现异常时,根据所述虚拟机当前的配置信息重新选定目标虚拟机;
切换模块,用于将客户端切换至所述目标虚拟机。
本申请实施例提供的监控虚拟机的装置,通过监测模块对虚拟机的状态信息进行监控,在判断模块判断出虚拟机出现异常时,选择模块根据虚拟机当前的配置信息重新选定目标虚拟机,然后通过切换模块将客户端切换至目标虚拟机。能够在虚拟机出现异常时将客户端切换至重新选定的目标虚拟机,保证了用户的正常使用。
根据本申请实施例的第三方面,提供一种监控虚拟机的设备,所述监控虚拟机的设备包括处理器和存储器,所述存储器中存储有至少一条计算机指令,所述指令由所述处理器加载并执行以实现如上所述的监控虚拟机的方法中所执行的步骤。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是本申请实施例提供的一种监控虚拟机的方法的流程图;
图2是本申请实施例提供的一种具体的监控虚拟机的方法的流程图;
图3是本申请实施例提供的另一种具体的监控虚拟机的方法的流程图;
图4是本申请实施例提供的一种监控虚拟机的装置的结构示意图;
图5是本申请实施例提供的另一种监控虚拟机的装置的结构示意图;
图6是本申请实施例提供的又一种监控虚拟机的装置的结构示意图;
图7是本申请实施例提供的再一种监控虚拟机的装置的结构示意图;
图8是本申请实施例提供的一种监控虚拟机的设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
本申请实施例提供一种监控虚拟机的方法,如图1所示,该方法可以包括以下步骤:
步骤101:监测虚拟机的状态信息。
对虚拟机的状态信息进行监测,虚拟机的状态信息包括运行状态信息和/或资源使用状态信息。其中,运行状态信息反映虚拟机当前的运行是否出现了异常,对虚拟机的运行状态信息进行监测是指实时监测虚拟机的运行是否正常、是否出现了重启、是否出现了死机等异常现象。对资源使用状态信息的监测是指实时监测虚拟机当前运行时CPU(Central Processing Unit,中央处理器)的使用情况、内存的使用情况、虚拟GPU(Graphics Processing Unit,图形处理器)的使用情况、存储状态、IO(输入输出)的实时状态、音频的状态等物理资源的使用状态,还可包括对数据传输过程中的帧率或丢帧率等的监测。
步骤102:根据虚拟机的状态信息判断虚拟机是否出现异常。
监测到虚拟机的状态信息之后,根据虚拟机的状态信息判断虚拟机是否出现异常。若出现异常,则执行步骤103;否则继续对虚拟机的状态信息进行监测。
比如,对虚拟机的运行状态信息进行监测的过程中,发现虚拟机的内存容量不足以满足当前应用程序的内存需求,则确定虚拟机出现了异常。
再比如,虚拟机的资源使用状态信息可以包括数据传输过程中的帧率和/或丢帧率,在对虚拟机的资源使用状态信息进行监测的过程中,判断资源使用状态信息是否满足第一预设条件,该第一预设条件包括虚拟机数据传输过程中的帧率低于第一阈值或者丢帧率大于第二阈值;当资源使用状态信息满足第一预设条件时,进一步确定导致资源使用状态信息满足第一预设条件的影响因素;若该影响因素为第一影响因素,则确定出虚拟机出现异常,其中的第一影响因素为虚拟机自身的物理资源因素,该物理资源因素比如可以是CPU占用高、内存使用高、采集编码耗时高等其中的至少一个;若确定出该影响因素为第二影响因素,则动态调整虚拟机进行数据传输时的帧率,使调整后的帧率符合数据传输要求,其中的第二影响因素包括网络因素,比如,如果是由于网络问题导致的,则会在采集编码的时候动态将帧率或是画质降低,以保证基本画面的传输。
步骤103:重新选定目标虚拟机。
当判断出虚拟机出现异常时,根据该虚拟机当前的配置信息重新选定目标虚拟机。比如,监测到虚拟机出现了重启的异常现象,则可以根据该虚拟机当前的配置信息重新选定目标虚拟机,例如,监测到虚拟机的内存资源不足,则可以根据该虚拟机当前的配置信息,重新选定一台内存更高的虚拟机作为目标虚拟机,以满足应用程序运行过程中采集编码的要求。
步骤104:将客户端切换至目标虚拟机。
重新选定目标虚拟机之后,将客户端切换至该目标虚拟机。
具体的,可以将目标虚拟机的连接信息发送给客户端,以使客户端知道当前即将进行虚拟机切换,客户端接收到该连接消息后向该目标虚拟机发送连接请求,以与目标虚拟机建立连接,完成将客户端从当前的虚拟机切换至目标虚拟机。之后,目标虚拟机会持续将应用程序的图像发送给客户端。其中,目标虚拟机的连接信息比如可以是目标虚拟机的身份信息,该身份信息比如可以是账号。
在本申请实施例中,对虚拟机的运行状态信息的监测主要包括是否异常关机、是否重启或是否死机等。
对资源使用状态信息的监测主要应对的是客户端出现帧率降低、画面卡顿、画面撕裂等异常体验。具体的,可以实时监测数据传输过程中的帧率和/或丢帧率;当出现帧率低于第一阈值或者丢帧率大于第二阈值时,根据数据传输过程中实时的资源占用情况作出基本的判断,分析出帧率低或丢帧率高的最直接的影响因素,然后根据该影响因素重新配置一台满足当前应用程序画面的目标虚拟机;之后,将所确定的目标虚拟机的账号信息通知给客户端,由客户端发起新的连接请求,让用户平滑无感的过渡到新的、满足当前需求的目标虚拟机。一般情况下,对于帧率低或丢帧率高的影响因素,主要从两方面来进行:一是虚拟机本身的物理资源问题,比如CPU占用高、内存使用高、采集编码耗时高等;另一个是传输时的网络问题。比如,如果是由于网络导致的,则会在采集编码的时候动态将帧率或是画质降低,以保证基本画面的传输。如果是虚拟机本身资源不够导致的采集编码溢出,那么就需要为客户端重新配置一台满足需求的目标虚拟机,比如,在当前虚拟机配置的基础上提高虚拟机的内存或是CPU的核数,或是增加虚拟GPU的显存等等。
一个实施例中,在将客户端切换至目标虚拟机切换之前可以通过提示消息提示用户为保障用户的使用体验即将进行虚拟机切换,并请用户选择是否同意,如果同意则执行虚拟机切换流程,如果用户选择不同意,则不进行虚拟机切换。具体的,在将客户端切换至所述目标虚拟机之前,显示虚拟机切换界面,该虚拟机切换界面中包括用于选择是否进行虚拟机切换的选择菜单,接收对该选择菜单的选择操作,根据该选择操作执行虚拟机的切换或不切换虚拟机。即就是,当通过该选择菜单选择了进行虚拟机切换,则将客户端从当前的虚拟机切换至该目标虚拟机;当通过选择菜单选择了不进行虚拟机切换,则不进行虚拟机切换。
实际应用中,在将客户端切换至目标虚拟机之后,也可以询问用户是恢复到切换虚拟机之前应用程序运行的进度,还是重新开始运行应用程序,并根据用户的选择来执行相应处理。具体的,可以显示程序控制界面,该程序控制界面中包括用于选择恢复到切换虚拟机之前应用程序运行进度的第一选择菜单,以及用于选择重新开始运行应用程序的第二选择菜单;接收对第一选择菜单或第二选择菜单的选定操作,根据该选定操作执行相应的处理;即就是,当选定了第一选择菜单,则在将客户端切换至目标虚拟机之后恢复到切换虚拟机之前应用程序运行的进度,当用户选定了第二选择菜单,则在将客户端切换至目标虚拟机之后重新开始运行该应用程序。
本申请实施例提供的监控虚拟机的方法,对虚拟机的状态信息进行监测,在虚拟机出现异常时根据虚拟机当前的配置信息重新选定目标虚拟机,并将客户端切换至目标虚拟机。能够在虚拟机出现异常时将客户端切换至重新选定的目标虚拟机,保证了用户的正常使用。
基于上述图1对应的实施例提供的监控虚拟机的方法,本申请另一实施例提供一种具体的监控虚拟机的方法,该方法可以应用于作为管理平台的云服务平台,比如应用在IAAS(Infrastructure-as-a-Service,基础设施即服务)平台,客户端与虚拟机建立连接后,云服务平台便可以开始对虚拟机进行监控。本实施例以虚拟机上运行的应用程序是单机应用程序为例进行说明,但并不代表本申请局限于此。参照图2所示,本实施例提供的监控虚拟机的方法可以包括以下步骤:
步骤201:监测虚拟机的状态信息。
客户端与虚拟机建立连接之后,云服务平台便开始实时监测虚拟机的状态信息,该状态信息主要包括运行状态信息和/或资源使用状态信息。
步骤202:根据虚拟机的状态信息判断虚拟机是否出现异常。
云服务平台根据虚拟机的状态信息判断虚拟机是否出现异常,若出现异常,则执行步骤203和步骤204,否则继续监测虚拟机的状态信息。
步骤203:根据虚拟机当前的配置信息重新选定目标虚拟机。
步骤204:记录虚拟机当前运行的第一应用程序的信息。
在本实施例中,第一应用程序为单机应用程序,比如可以是单机游戏。对于单机应用程序而言,云服务平台为当前进行的单机应用程序提供一种类似“实时存档”的功能,会保存一份当前单机应用程序进度的副本,也即第一应用程序的进度信息。比如,可以每隔一预设时间段保存一次当前单机应用程序进度的副本,或者也可以实时进行保存。
当判断出虚拟机出现异常时,记录虚拟机当前运行的第一应用程序的信息,该第一应用程序的信息可以包括第一应用程序的进度信息和第一应用程序的显示信息,其中,第一应用程序的进度信息反应第一应用程序的运行进度,比如游戏运行的关卡,第一应用程序的显示信息可以包括显示窗口的大小和位置。具体的,若采用的是每隔一预设时间段保存一次当前第一应用程序进度的副本的方式,则记录的便是虚拟机出现异常之前最后一次保存的第一应用程序进度的副本。
在本步骤中,比如,以虚拟机当前正在运行单机游戏为例,当虚拟机出现了异常关机、重启或是死机等异常情况时,云服务平台会在第一时间做出响应,记录虚拟机当前所运行的所有单机游戏程序的进度信息和各单机游戏程序的显示窗口的大小与位置。
一种实施例中,当判断出虚拟机出现异常时,还可以向客户端发送虚拟机切换通知消息,使客户端根据该虚拟机切换通知消息保留当前在虚拟机上运行的第一应用程序的当前帧画面。
步骤205:将客户端切换至目标虚拟机。
步骤206:控制目标虚拟机启动第一应用程序。
将客户端切换至目标虚拟机之后,云服务平台会控制目标虚拟机启动第一应用程序。
步骤207:加载第一应用程序的进度信息。
云服务平台控制目标虚拟机启动第一应用程序后,控制目标虚拟机加载第一应用程序的进度信息,这样,目标虚拟机便可获知在将客户端切换至目标虚拟机之前第一应用程序的运行进度,以便按照该进度在客户端显示第一应用程序的运行画面。
步骤208:使客户端显示第一应用程序的运行画面。
目标虚拟机加载第一应用程序的进度信息之后,基于该第一应用程序的进度信息,云服务平台根据第一应用程序的显示信息控制目标虚拟机向客户端发送第一应用程序的运行画面,使客户端根据第一应用程序的显示信息显示该运行画面。其中,第一应用程序的显示信息包括显示窗口的大小和位置。
具体的,以第一应用程序是单机游戏为例,当云服务平台重新为用户分配或是配置了合适的目标虚拟机后,云服务平台会在该虚拟机启动后打开单机游戏,同时加载存档的游戏副本,也即单机游戏的进度信息,并按照切换前的各个单机游戏的显示位置对各单机游戏进行显示,让客户端在重新发起连接后,收到的单机游戏画面刚好就是用户当前正在进行的单机游戏画面,从而保证用户游戏体验的连续性,而不是中断游戏。
本实施例提供的监控虚拟机的方法,针对单机应用程序,在将客户端从当前的虚拟机切换至目标虚拟机之后,可以控制目标虚拟机启动单机应用程序并加载该单机应用程序的进度信息,基于该单机应用程序的进度信息和显示信息,可以使目标虚拟机按照切换虚拟机前的单机应用程序的显示位置对单机应用程序的运行画面进行显示,使客户端在重新发起连接后收到的单机应用程序的画面刚好就是用户当前正在进行的单机应用程序的画面。这样,在虚拟机出现故障之后,客户端仍然可以保持之前的操作画面,使用户可以在毫无察觉的情况下继续完成之前的单机应用程序,保证了用户的正常使用。
基于上述图1对应的实施例提供的监控虚拟机的方法,本申请又一实施例提供另一种具体的监控虚拟机的方法,该方法可以应用于用来管理虚拟机的云服务平台,比如应用在IAAS平台,客户端与虚拟机建立连接后,云服务平台便可以开始对虚拟机进行监控。本实施例以虚拟机上运行的应用程序是网络应用程序为例进行说明,但并不代表本申请局限于此。参照图3所示,本实施例提供的监控虚拟机的方法可以包括以下步骤:
步骤301:监测虚拟机的状态信息。
步骤302:根据虚拟机的状态信息判断虚拟机是否出现异常。
云服务平台根据虚拟机的状态信息判断虚拟机是否出现异常,若出现异常,则分别执行步骤303和步骤304~305,否则继续监测虚拟机的状态信息。
步骤303:根据虚拟机当前的配置信息重新选定目标虚拟机。
步骤304:记录虚拟机当前运行的第二应用程序的信息。
当判断出虚拟机出现异常时,记录虚拟机当前运行的第二应用程序的信息,该第二应用程序的信息可以包括第二应用程序的显示信息和第二应用程序的身份信息,其中,第二应用程序的显示信息包括显示窗口的大小和位置。
步骤305:查找第二应用程序对应的登录信息。
云服务平台基于第二应用程序的身份信息,在数据库中查找第二应用程序对应的登录信息,该登录信息包括账号和密码。
步骤306:将客户端切换至目标虚拟机。
在确定需要进行虚拟机切换时,云服务平台将客户端切换至目标虚拟机。
步骤307:控制目标虚拟机启动第二应用程序。
将客户端切换至目标虚拟机之后,云服务平台控制目标虚拟机启动第二应用程序。
步骤308:使目标虚拟机登录第二应用程序的服务器。
云服务平台向目标虚拟机发送第二应用程序的登录信息,使目标虚拟机登录该第二应用程序的服务器。
步骤309:使客户端显示第二应用程序的运行画面。
基于第二应用程序的显示信息,云服务平台控制目标虚拟机向客户端发送第二应用程序的运行画面,使客户端根据该第二应用程序的显示信息显示该运行画面。
在本实施例中,第二应用程序为实时的网络应用程序,即需要联网运行的应用程序,比如可以是实时的网络游戏。
具体的,以第二应用程序是实时的网络游戏为例,用户在登陆相应网络游戏时,会通过向管理虚拟机的云服务平台提交该网络游戏的登录信息(账号和密码)来进行网络游戏的登录;在网络游戏登录之后,云服务平台可以将获取到的登录信息以ini文件或者cookies文件的形式保存到数据中心,在保存到数据中心时可以进行强加密。这些登录信息是和用户强相关的,如果用户是正常的执行退出网络游戏、关机等流程,那么就会在用户退出网络游戏或关机后将保存的文件永久删除,不会保留任何备份;但如果是虚拟机出现异常而需要进行虚拟机的切换,那么云服务平台就会从数据中心中获取用户当前所登录的网络游戏的账号,以方便在切换到目标虚拟机后,自动进行网络游戏登录。
当确定需要进行虚拟机切换时,云服务平台记录当前已经登录的网络游戏的身份信息,该身份信息可以包括网络游戏的名称、版本号等,并基于这些身份信息在数据中心查找各个网络游戏所对应的登录账号和密码。当客户端从当前虚拟机切换至目标虚拟机之后,目标虚拟机首先会将网络游戏程序打开,同时,云服务平台将各个网络游戏的账号和密码发送给目标虚拟机,使目标虚拟机直接登录各个游戏的服务器,并将各网络游戏的窗口(运行画面)以虚拟机切换之前的大小显示在虚拟机切换之前的显示位置。通过上述步骤,可以在虚拟机出现异常时自动切换至目标虚拟机,并自动登录网络游戏。
本申请实施例提供的监控虚拟机的方法,针对网络应用程序,当确定需要进行虚拟机切换时,记录网络应用程序的显示信息和身份信息,并基于该身份信息在数据库中查找对应的登录信息;在完成将客户端从当前的虚拟机切换至目标虚拟机之后,可以控制目标虚拟机打开网络应用程序,并将网络应用程序的登录信息发送给目标虚拟机,使目标虚拟机登录网络应用程序的服务器,然后将网络应用程序的运行画面以虚拟机切换之前的大小显示在虚拟机切换之前的显示位置。能够在虚拟机出现异常时自动切换至目标虚拟机,并自动登录网络应用程序,方便用户快速地使用该网络应用程序。
基于上述实施例中所描述的监控虚拟机的方法,下述为本申请装置实施例,可以用于执行本申请方法实施例。
本申请实施例提供一种监控虚拟机的装置,如图4所示,该监控虚拟机的装置40包括:监测模块401、判断模块402、选择模块403和切换模块404。
其中,监测模块401用于监测虚拟机的状态信息,该虚拟机的状态信息包括运行状态信息和/或资源使用状态信息;
判断模块402用于根据虚拟机的状态信息判断虚拟机是否出现异常;
选择模块403用于当判断出虚拟机出现异常时,根据虚拟机当前的配置信息重新选定目标虚拟机;
切换模块404用于将客户端切换至目标虚拟机。
在一个实施例中,虚拟机的状态信息包括资源使用状态信息,该资源使用状态信息包括数据传输过程中的帧率和/或丢帧率;判断模块402具体用于判断资源使用状态信息是否满足第一预设条件,该第一预设条件包括虚拟机数据传输过程中的帧率低于第一阈值或者丢帧率大于第二阈值;当资源使用状态信息满足第一预设条件时,确定导致资源使用状态信息满足第一预设条件的影响因素;若该影响因素为第一影响因素,则确定出虚拟机出现异常,其中的第一影响因素为虚拟机自身的物理资源因素。
在一个实施例中,判断模块402还用于当确定出影响因素为第二影响因素时,动态调整虚拟机进行数据传输时的帧率,使调整后的帧率符合数据传输要求,该第二影响因素包括网络因素。
在一个实施例中,如图5所示,监控虚拟机的装置40还包括第一记录模块405、第一启动模块406、第一加载模块407和第一控制模块408。
第一记录模块405用于当判断出所述虚拟机出现异常时,记录虚拟机当前运行的第一应用程序的信息,该第一应用程序的信息包括第一应用程序的进度信息和第一应用程序的显示信息,其中,第一应用程序的显示信息包括显示窗口的大小和位置。
第一启动模块406用于在将客户端切换至目标虚拟机之后,控制目标虚拟机启动第一应用程序;
第一加载模块407用于加载第一应用程序的进度信息;
第一控制模块408基于第一应用程序的进度信息,根据第一应用程序的显示信息控制目标虚拟机向客户端发送第一应用程序的运行画面,使客户端根据第一应用程序的显示信息显示该运行画面。
在一个实施例中,如图6所示,监控虚拟机的装置40还包括第二记录模块409、查找模块410、第二启动模块411和第二控制模块412。
其中,第二记录模块409用于当判断出虚拟机出现异常时,记录所述虚拟机当前运行的第二应用程序的信息,第二应用程序的信息包括第二应用程序的显示信息和第二应用程序的身份信息,其中,第二应用程序的显示信息包括显示窗口的大小和位置;
查找模块410基于第二应用程序的身份信息在数据库中查找第二应用程序对应的登录信息,该登录信息包括账号和密码。
第二启动模块411用于在将客户端切换至目标虚拟机之后控制目标虚拟机启动第二应用程序;
第二控制模块412用于向目标虚拟机发送第二应用程序的登录信息,使目标虚拟机登录第二应用程序的服务器;基于第二应用程序的显示信息,控制目标虚拟机向客户端发送第二应用程序的运行画面,使客户端根据第二应用程序的显示信息显示该运行画面。
在一个实施例中,如图7所示,监控虚拟机的装置40还包括显示模块413、接收模块414和处理模块415。
其中,显示模块413用于在将客户端切换至目标虚拟机之前,显示虚拟机切换界面,该虚拟机切换界面中包括用于选择是否进行虚拟机切换的选择菜单;
接收模块414用于接收对选择菜单的选择操作;
处理模块415用于根据接收模块414接收到的选择操作执行虚拟机的切换或不切换虚拟机。
本申请实施例提供的监控虚拟机的装置,通过监测模块对虚拟机的状态信息进行监控,在判断模块判断出虚拟机出现异常时,选择模块根据虚拟机当前的配置信息重新选定目标虚拟机,然后通过切换模块将客户端切换至目标虚拟机。能够在虚拟机出现异常时将客户端切换至重新选定的目标虚拟机,保证了用户的正常使用。
参考图8所示,本申请实施例还提供了一种监控虚拟机的设备80,该监控虚拟机的设备80包括处理器801和存储器802,其中的存储器802中存储有至少一条计算机指令,该计算机指令由处理器801加载并执行以实现上述图1~图3对应的实施例中所描述的监控虚拟机的方法。
基于上述图1~图3对应的实施例中所描述的监控虚拟机的方法,本申请实施例还提供一种计算机可读存储介质,例如,非临时性计算机可读存储介质可以是只读存储器(英文:Read Only Memory,ROM)、随机存取存储器(英文:Random Access Memory,RAM)、CD-ROM、磁带、软盘和光数据存储装置等。该存储介质上存储有计算机指令,用于执行上述实施例中所描述的监控虚拟机的方法,此处不再赘述。
本领域技术人员在考虑说明书及实践这里公开的内容后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由所附的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (10)
1.一种监控虚拟机的方法,其特征在于,所述方法包括:
监测虚拟机的状态信息,所述虚拟机的状态信息包括运行状态信息和/或资源使用状态信息;
根据所述虚拟机的状态信息判断所述虚拟机是否出现异常;
当判断出所述虚拟机出现异常时,根据所述虚拟机当前的配置信息重新选定目标虚拟机;
将客户端切换至所述目标虚拟机。
2.根据权利要求1所述的方法,其特征在于,当判断出所述虚拟机出现异常时,所述方法还包括:
记录所述虚拟机当前运行的第一应用程序的信息,所述第一应用程序的信息包括第一应用程序的进度信息和第一应用程序的显示信息,所述第一应用程序的显示信息包括显示窗口的大小和位置。
3.根据权利要求2所述的方法,其特征在于,在所述将客户端切换至所述目标虚拟机之后,所述方法还包括:
控制所述目标虚拟机启动所述第一应用程序;
加载所述第一应用程序的进度信息;
基于所述第一应用程序的进度信息,根据所述第一应用程序的显示信息控制所述目标虚拟机向所述客户端发送所述第一应用程序的运行画面,使所述客户端根据所述第一应用程序的显示信息显示所述运行画面。
4.根据权利要求1所述的方法,其特征在于,当判断出所述虚拟机出现异常时,所述方法还包括:
记录所述虚拟机当前运行的第二应用程序的信息,所述第二应用程序的信息包括第二应用程序的显示信息和第二应用程序的身份信息,所述第二应用程序的显示信息包括显示窗口的大小和位置;
基于所述第二应用程序的身份信息,在数据库中查找所述第二应用程序对应的登录信息,所述登录信息包括账号和密码。
5.根据权利要求4所述的方法,其特征在于,在所述将客户端切换至所述目标虚拟机之后,所述方法还包括:
控制所述目标虚拟机启动所述第二应用程序;
向所述目标虚拟机发送所述第二应用程序的登录信息,使所述目标虚拟机登录所述第二应用程序的服务器;
基于所述第二应用程序的显示信息,控制所述目标虚拟机向所述客户端发送所述第二应用程序的运行画面,使所述客户端根据所述第二应用程序的显示信息显示所述运行画面。
6.根据权利要求1所述的方法,其特征在于,所述虚拟机的状态信息包括资源使用状态信息,所述资源使用状态信息包括数据传输过程中的帧率和/或丢帧率;所述根据所述虚拟机的状态信息判断所述虚拟机是否出现异常包括:
判断所述资源使用状态信息是否满足第一预设条件,所述第一预设条件包括虚拟机数据传输过程中的帧率低于第一阈值或者丢帧率大于第二阈值;
当所述资源使用状态信息满足所述第一预设条件时,确定导致所述资源使用状态信息满足所述第一预设条件的影响因素;
若所述影响因素为第一影响因素,则确定出所述虚拟机出现异常,所述第一影响因素为虚拟机自身的物理资源因素。
7.根据权利要求6所述的方法,其特征在于,在确定导致所述资源使用状态信息满足所述第一预设条件的影响因素之后,所述方法还包括:
当确定出所述影响因素为第二影响因素时,动态调整所述虚拟机进行数据传输时的帧率,使调整后的帧率符合数据传输要求,所述第二影响因素包括网络因素。
8.根据权利要求1所述的方法,其特征在于,在将所述客户端切换至所述目标虚拟机之前,所述方法还包括:
显示虚拟机切换界面,所述虚拟机切换界面中包括用于选择是否进行虚拟机切换的选择菜单;
接收对所述选择菜单的选择操作;
根据所述选择操作执行虚拟机的切换或不切换虚拟机。
9.一种监控虚拟机的装置,其特征在于,所述装置包括:
监测模块,用于监测虚拟机的状态信息,所述虚拟机的状态信息包括运行状态信息和/或资源使用状态信息;
判断模块,用于根据所述虚拟机的状态信息判断所述虚拟机是否出现异常;
选择模块,用于当判断出所述虚拟机出现异常时,根据所述虚拟机当前的配置信息重新选定目标虚拟机;
切换模块,用于将客户端切换至所述目标虚拟机。
10.一种监控虚拟机的设备,其特征在于,所述监控虚拟机的设备包括处理器和存储器,所述存储器中存储有至少一条计算机指令,所述指令由所述处理器加载并执行以实现权利要求1至权利要求8中任一项所述的监控虚拟机的方法中所执行的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010997334.6A CN112269626A (zh) | 2020-09-21 | 2020-09-21 | 监控虚拟机的方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010997334.6A CN112269626A (zh) | 2020-09-21 | 2020-09-21 | 监控虚拟机的方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112269626A true CN112269626A (zh) | 2021-01-26 |
Family
ID=74348538
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010997334.6A Pending CN112269626A (zh) | 2020-09-21 | 2020-09-21 | 监控虚拟机的方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112269626A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114385214A (zh) * | 2022-03-23 | 2022-04-22 | 深圳市牛商网络股份有限公司 | 网站更新方法、装置、设备及存储介质 |
CN115858222A (zh) * | 2022-12-19 | 2023-03-28 | 安超云软件有限公司 | 一种虚拟机故障处理方法、系统及电子设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104572241A (zh) * | 2013-10-18 | 2015-04-29 | 南京中兴新软件有限责任公司 | 应用程序的切换方法及装置、系统 |
-
2020
- 2020-09-21 CN CN202010997334.6A patent/CN112269626A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104572241A (zh) * | 2013-10-18 | 2015-04-29 | 南京中兴新软件有限责任公司 | 应用程序的切换方法及装置、系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114385214A (zh) * | 2022-03-23 | 2022-04-22 | 深圳市牛商网络股份有限公司 | 网站更新方法、装置、设备及存储介质 |
CN114385214B (zh) * | 2022-03-23 | 2022-06-21 | 深圳市牛商网络股份有限公司 | 网站更新方法、装置、设备及存储介质 |
CN115858222A (zh) * | 2022-12-19 | 2023-03-28 | 安超云软件有限公司 | 一种虚拟机故障处理方法、系统及电子设备 |
CN115858222B (zh) * | 2022-12-19 | 2024-01-02 | 安超云软件有限公司 | 一种虚拟机故障处理方法、系统及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7066784B2 (ja) | クラウドゲーミングに関するゲームステートセーブ、転送および再開 | |
US10871985B2 (en) | Displaying media files between changes in states of an application client | |
TWI543803B (zh) | 網頁遊戲運行的方法及裝置 | |
EP2712119B1 (en) | Abnormality handling method, device and client | |
CN112269626A (zh) | 监控虚拟机的方法、装置及设备 | |
US9553826B2 (en) | Real-time sharing method, apparatus and system | |
CN108712422A (zh) | 一种创建转码任务的方法和装置 | |
CN111459749A (zh) | 基于Prometheus的私有云监控方法、装置、计算机设备及存储介质 | |
CN113181646A (zh) | 游戏数据方法及装置、电子设备、存储介质 | |
WO2022022174A1 (zh) | 虚拟场景的数据处理方法、装置、电子设备及存储介质 | |
CN109257229A (zh) | 一种主备切换方法及装置 | |
CN114327318A (zh) | 云桌面的显示方法和系统 | |
CN112044078A (zh) | 虚拟场景应用的接入方法、装置、设备及存储介质 | |
CN108733808B (zh) | 大数据软件系统切换方法、系统、终端设备及存储介质 | |
US20200329096A1 (en) | Interactive system, terminal apparatus, server apparatus, control method, program, and recording medium | |
CN111753309A (zh) | 一种显卡切换方法及服务器、存储介质 | |
CN108366271B (zh) | 一种多媒体文件的播放方法、装置及存储介质 | |
CN112494931B (zh) | 云游戏控制方法、系统、服务器和计算机可读存储介质 | |
CN113709406B (zh) | 鸿蒙会议一体机的软件协同方法、系统和存储介质 | |
RU2662648C1 (ru) | Способ и устройство для обработки данных | |
CN112090066A (zh) | 基于虚拟交互应用的场景展示方法和装置 | |
CN116932138A (zh) | 虚拟机资源的配置方法、装置、设备及存储介质 | |
WO2024007710A1 (zh) | 动画播放方法、装置、电子设备和计算机可读存储介质 | |
CN117412305A (zh) | 网络通话调控方法、装置、存储介质及电子设备 | |
CN116319744A (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 |